Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / XmlUtils / System / Xml / Xsl / SourceLineInfo.cs / 1 / SourceLineInfo.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System.Diagnostics; namespace System.Xml.Xsl { [DebuggerDisplay("{uriString} [{startLine},{startPos} -- {endLine},{endPos}]")] internal class SourceLineInfo : ISourceLineInfo { private string uriString; private int startLine; private int startPos; private int endLine; private int endPos; public SourceLineInfo(string uriString, int startLine, int startPos, int endLine, int endPos) { this.uriString = uriString; this.startLine = startLine; this.startPos = startPos; this.endLine = endLine; this.endPos = endPos; } public string Uri { get { return this.uriString; } } public int StartLine { get { return this.startLine; } } public int StartPos { get { return this.startPos ; } } public int EndLine { get { return this.endLine ; } } public int EndPos { get { return this.endPos ; } } internal void SetEndLinePos(int endLine, int endPos) { this.endLine = endLine; this.endPos = endPos; } ////// Magic number 0xfeefee is used in PDB to denote a section of IL that does not map to any user code. /// When VS debugger steps into IL marked with 0xfeefee, it will continue the step until it reaches /// some user code. /// private const int NoSourceMagicNumber = 0xfeefee; public static SourceLineInfo NoSource = new SourceLineInfo(string.Empty, NoSourceMagicNumber, 0, NoSourceMagicNumber, 0); public bool IsNoSource { get { return this.startLine == NoSourceMagicNumber; } } [Conditional("DEBUG")] public static void Validate(ISourceLineInfo lineInfo) { if (lineInfo.StartLine == 0 || lineInfo.StartLine == NoSourceMagicNumber) { Debug.Assert(lineInfo.StartLine == lineInfo.EndLine); Debug.Assert(lineInfo.StartPos == 0 && lineInfo.EndPos == 0); } else { Debug.Assert(0 < lineInfo.StartLine && lineInfo.StartLine <= lineInfo.EndLine); if (lineInfo.StartLine == lineInfo.EndLine) { Debug.Assert(0 < lineInfo.StartPos && lineInfo.StartPos < lineInfo.EndPos); } else { Debug.Assert(0 < lineInfo.StartPos && 0 < lineInfo.EndPos); } } } // Returns file path for local and network URIs. Used for PDB generating and error reporting. public static string GetFileName(string uriString) { Uri uri; if (uriString.Length != 0 && System.Uri.TryCreate(uriString, UriKind.Absolute, out uri) && uri.IsFile ) { return uri.LocalPath; } return uriString; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- using System.Diagnostics; namespace System.Xml.Xsl { [DebuggerDisplay("{uriString} [{startLine},{startPos} -- {endLine},{endPos}]")] internal class SourceLineInfo : ISourceLineInfo { private string uriString; private int startLine; private int startPos; private int endLine; private int endPos; public SourceLineInfo(string uriString, int startLine, int startPos, int endLine, int endPos) { this.uriString = uriString; this.startLine = startLine; this.startPos = startPos; this.endLine = endLine; this.endPos = endPos; } public string Uri { get { return this.uriString; } } public int StartLine { get { return this.startLine; } } public int StartPos { get { return this.startPos ; } } public int EndLine { get { return this.endLine ; } } public int EndPos { get { return this.endPos ; } } internal void SetEndLinePos(int endLine, int endPos) { this.endLine = endLine; this.endPos = endPos; } ////// Magic number 0xfeefee is used in PDB to denote a section of IL that does not map to any user code. /// When VS debugger steps into IL marked with 0xfeefee, it will continue the step until it reaches /// some user code. /// private const int NoSourceMagicNumber = 0xfeefee; public static SourceLineInfo NoSource = new SourceLineInfo(string.Empty, NoSourceMagicNumber, 0, NoSourceMagicNumber, 0); public bool IsNoSource { get { return this.startLine == NoSourceMagicNumber; } } [Conditional("DEBUG")] public static void Validate(ISourceLineInfo lineInfo) { if (lineInfo.StartLine == 0 || lineInfo.StartLine == NoSourceMagicNumber) { Debug.Assert(lineInfo.StartLine == lineInfo.EndLine); Debug.Assert(lineInfo.StartPos == 0 && lineInfo.EndPos == 0); } else { Debug.Assert(0 < lineInfo.StartLine && lineInfo.StartLine <= lineInfo.EndLine); if (lineInfo.StartLine == lineInfo.EndLine) { Debug.Assert(0 < lineInfo.StartPos && lineInfo.StartPos < lineInfo.EndPos); } else { Debug.Assert(0 < lineInfo.StartPos && 0 < lineInfo.EndPos); } } } // Returns file path for local and network URIs. Used for PDB generating and error reporting. public static string GetFileName(string uriString) { Uri uri; if (uriString.Length != 0 && System.Uri.TryCreate(uriString, UriKind.Absolute, out uri) && uri.IsFile ) { return uri.LocalPath; } return uriString; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StylusButton.cs
- QueryOptionExpression.cs
- OleDbError.cs
- MediaPlayer.cs
- ProcessStartInfo.cs
- ControlPropertyNameConverter.cs
- SimpleModelProvider.cs
- MemberDescriptor.cs
- VariableQuery.cs
- GridLengthConverter.cs
- ResourceManager.cs
- StandardToolWindows.cs
- MemberAccessException.cs
- WeakReference.cs
- TemplateControl.cs
- StateManagedCollection.cs
- SmtpFailedRecipientsException.cs
- AttributeProviderAttribute.cs
- util.cs
- ShaderEffect.cs
- OpenTypeMethods.cs
- InfoCardBinaryReader.cs
- X509Utils.cs
- DataColumnMappingCollection.cs
- GlyphTypeface.cs
- SerializationSectionGroup.cs
- WindowsListViewGroupHelper.cs
- FlowDocumentReaderAutomationPeer.cs
- DefaultAsyncDataDispatcher.cs
- HttpModuleAction.cs
- ErrorRuntimeConfig.cs
- NotImplementedException.cs
- LabelTarget.cs
- Grid.cs
- CheckBoxFlatAdapter.cs
- Privilege.cs
- NativeMethods.cs
- ScrollBar.cs
- EventRouteFactory.cs
- XmlEncoding.cs
- ViewGenerator.cs
- BoolLiteral.cs
- CredentialCache.cs
- LinearGradientBrush.cs
- PageStatePersister.cs
- TextEditorThreadLocalStore.cs
- TextDecorations.cs
- PropertyBuilder.cs
- LocalValueEnumerator.cs
- returneventsaver.cs
- HandlerMappingMemo.cs
- WebPartExportVerb.cs
- TextBox.cs
- WindowsFont.cs
- LoginDesignerUtil.cs
- Matrix.cs
- XmlSchemaImporter.cs
- CopyAttributesAction.cs
- ExtensibleSyndicationObject.cs
- Interlocked.cs
- SafeUserTokenHandle.cs
- AccessKeyManager.cs
- SolidBrush.cs
- GestureRecognitionResult.cs
- ButtonField.cs
- ReferencedCategoriesDocument.cs
- CompilationRelaxations.cs
- ConfigurationElementProperty.cs
- RowBinding.cs
- HttpPostedFileBase.cs
- ScriptResourceAttribute.cs
- ConsumerConnectionPointCollection.cs
- FixedSOMImage.cs
- RouteItem.cs
- InternalMappingException.cs
- DictionaryGlobals.cs
- OdbcCommand.cs
- IERequestCache.cs
- NetworkInterface.cs
- CommandConverter.cs
- PropertyRecord.cs
- RequestCachePolicyConverter.cs
- TCPClient.cs
- SqlTypeSystemProvider.cs
- WinEventQueueItem.cs
- SuppressedPackageProperties.cs
- FormatterConverter.cs
- Panel.cs
- ExtendedPropertyDescriptor.cs
- DynamicEntity.cs
- FontFamilyValueSerializer.cs
- ResourceAssociationSet.cs
- Canvas.cs
- oledbmetadatacolumnnames.cs
- ProfileParameter.cs
- listitem.cs
- Cell.cs
- ToolboxItemAttribute.cs
- Menu.cs
- CssStyleCollection.cs