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
- RuntimeEnvironment.cs
- AssociationEndMember.cs
- ConfigurationManagerHelper.cs
- HtmlInputFile.cs
- DPTypeDescriptorContext.cs
- DeviceContext2.cs
- MD5CryptoServiceProvider.cs
- PageSettings.cs
- UndoEngine.cs
- OleServicesContext.cs
- GetResponse.cs
- HwndSourceParameters.cs
- CachedCompositeFamily.cs
- ThreadAttributes.cs
- PrintingPermission.cs
- InstancePersistenceCommand.cs
- DynamicValueConverter.cs
- PolyLineSegmentFigureLogic.cs
- FileSystemEventArgs.cs
- InteropBitmapSource.cs
- AssertUtility.cs
- AddInSegmentDirectoryNotFoundException.cs
- TextServicesManager.cs
- OperationFormatUse.cs
- HtmlTableCellCollection.cs
- RoleManagerEventArgs.cs
- _DisconnectOverlappedAsyncResult.cs
- PlatformCulture.cs
- SspiSafeHandles.cs
- MonthCalendar.cs
- SqlBulkCopyColumnMapping.cs
- ValidationEventArgs.cs
- ISAPIRuntime.cs
- DataGridLengthConverter.cs
- DataGridViewCheckBoxColumn.cs
- XmlSchemaProviderAttribute.cs
- ScriptControlManager.cs
- UiaCoreApi.cs
- ModuleConfigurationInfo.cs
- StickyNoteHelper.cs
- fixedPageContentExtractor.cs
- PostBackTrigger.cs
- ParseChildrenAsPropertiesAttribute.cs
- CannotUnloadAppDomainException.cs
- Storyboard.cs
- Peer.cs
- GuidTagList.cs
- assemblycache.cs
- FilterableAttribute.cs
- Internal.cs
- XComponentModel.cs
- PcmConverter.cs
- DataSetViewSchema.cs
- Attribute.cs
- BuiltInPermissionSets.cs
- ILGenerator.cs
- EntityDataSourceDesignerHelper.cs
- SHA256Managed.cs
- SymmetricSecurityBindingElement.cs
- SystemInfo.cs
- TreeNodeBinding.cs
- RealProxy.cs
- BitmapEffectInput.cs
- SchemaMapping.cs
- MouseEventArgs.cs
- DBConnectionString.cs
- SimpleHandlerBuildProvider.cs
- GridViewUpdatedEventArgs.cs
- HttpCachePolicy.cs
- UdpTransportBindingElement.cs
- LinkedResource.cs
- PropertiesTab.cs
- MimeMapping.cs
- ExpandSegment.cs
- AccessDataSourceView.cs
- ChangePassword.cs
- EntitySqlQueryCacheEntry.cs
- DataGridViewComboBoxCell.cs
- SiteOfOriginPart.cs
- TransformGroup.cs
- CommandHelper.cs
- OneOfTypeConst.cs
- DataGridRow.cs
- ReaderOutput.cs
- DetailsViewPageEventArgs.cs
- LoadRetryStrategyFactory.cs
- DataObjectCopyingEventArgs.cs
- FilteredReadOnlyMetadataCollection.cs
- DocComment.cs
- PropertyGridView.cs
- EngineSite.cs
- CaseInsensitiveComparer.cs
- XmlBindingWorker.cs
- AuthenticateEventArgs.cs
- TextProperties.cs
- ValueTypeFixupInfo.cs
- ConnectionStringsExpressionBuilder.cs
- NavigateEvent.cs
- EntitySqlQueryCacheKey.cs
- ListViewItemSelectionChangedEvent.cs