Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- RawMouseInputReport.cs
- LayoutEvent.cs
- QuaternionAnimation.cs
- Misc.cs
- StructuredTypeEmitter.cs
- XsltInput.cs
- NotifyCollectionChangedEventArgs.cs
- FormsAuthenticationTicket.cs
- _TLSstream.cs
- MemberCollection.cs
- LinkArea.cs
- MessageAction.cs
- EmptyWithCancelationCheckWorkItem.cs
- UIElement.cs
- DBDataPermissionAttribute.cs
- RenamedEventArgs.cs
- RouteParameter.cs
- ByeOperationAsyncResult.cs
- DesignerVerbCollection.cs
- SystemIPGlobalProperties.cs
- CompressStream.cs
- PropertyMap.cs
- RegexRunnerFactory.cs
- DataGridViewRowPostPaintEventArgs.cs
- DesignerMetadata.cs
- Int32CollectionConverter.cs
- OperatingSystem.cs
- AuditLogLocation.cs
- ConnectionStringSettings.cs
- XmlSchemaChoice.cs
- Visual.cs
- CaseCqlBlock.cs
- IIS7WorkerRequest.cs
- ParserExtension.cs
- CheckBoxPopupAdapter.cs
- Int32CollectionConverter.cs
- LineSegment.cs
- DbConnectionHelper.cs
- AvTrace.cs
- XmlNamespaceMappingCollection.cs
- TabItemAutomationPeer.cs
- DataGridViewTopLeftHeaderCell.cs
- TypeLibConverter.cs
- WhitespaceRuleReader.cs
- Random.cs
- XmlDataSourceNodeDescriptor.cs
- BoundColumn.cs
- _WinHttpWebProxyDataBuilder.cs
- SchemaTypeEmitter.cs
- AsyncResult.cs
- MetadataArtifactLoaderCompositeResource.cs
- SaveFileDialog.cs
- BrowserCapabilitiesCompiler.cs
- TextRunCache.cs
- DiscreteKeyFrames.cs
- TableLayoutPanelResizeGlyph.cs
- Int64KeyFrameCollection.cs
- log.cs
- VersionPair.cs
- TableCell.cs
- Timer.cs
- Dump.cs
- StorageMappingItemCollection.cs
- XmlIlTypeHelper.cs
- DataGridViewTextBoxColumn.cs
- ListBindingConverter.cs
- UrlAuthFailureHandler.cs
- MSAANativeProvider.cs
- InstalledFontCollection.cs
- XmlSchemaGroup.cs
- StyleCollectionEditor.cs
- AlignmentYValidation.cs
- AssociationProvider.cs
- AttachedAnnotationChangedEventArgs.cs
- TextOptionsInternal.cs
- OrthographicCamera.cs
- DataIdProcessor.cs
- LifetimeServices.cs
- FileDialog.cs
- TreeBuilder.cs
- Cell.cs
- EntitySetBase.cs
- ScrollEvent.cs
- Array.cs
- CurrentChangingEventArgs.cs
- Expressions.cs
- ListView.cs
- ExpressionCopier.cs
- EdmScalarPropertyAttribute.cs
- FixedHyperLink.cs
- TextDecorations.cs
- SimpleApplicationHost.cs
- LicenseException.cs
- SQLDateTime.cs
- TaskFileService.cs
- precedingquery.cs
- FrameworkElement.cs
- TraceSection.cs
- NTAccount.cs
- XmlUTF8TextReader.cs