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
- EncryptedHeaderXml.cs
- TdsParserSafeHandles.cs
- PersonalizationProviderHelper.cs
- Decorator.cs
- FixedSOMTable.cs
- UrlMappingsModule.cs
- ReachFixedPageSerializer.cs
- Avt.cs
- ipaddressinformationcollection.cs
- BitStack.cs
- ExecutionEngineException.cs
- DataRelationCollection.cs
- InstanceDataCollection.cs
- StrongTypingException.cs
- ObjectDataSourceMethodEventArgs.cs
- Inflater.cs
- Base64Stream.cs
- QilUnary.cs
- OLEDB_Util.cs
- SettingsProviderCollection.cs
- FontConverter.cs
- SoapServerMessage.cs
- _RequestCacheProtocol.cs
- DiscardableAttribute.cs
- VoiceObjectToken.cs
- MatrixAnimationUsingKeyFrames.cs
- AutoResetEvent.cs
- SocketInformation.cs
- keycontainerpermission.cs
- filewebresponse.cs
- SerializationAttributes.cs
- ProxyElement.cs
- BufferBuilder.cs
- UnsafeCollabNativeMethods.cs
- SafePointer.cs
- SymbolType.cs
- JoinTreeSlot.cs
- PromptBuilder.cs
- EntityViewGenerationAttribute.cs
- SQLBoolean.cs
- Lease.cs
- ResXDataNode.cs
- MulticastOption.cs
- TextCollapsingProperties.cs
- TranslateTransform3D.cs
- AssociationTypeEmitter.cs
- XmlConvert.cs
- RecordsAffectedEventArgs.cs
- XPathNodePointer.cs
- XmlHierarchicalDataSourceView.cs
- ProcessManager.cs
- WebPartConnectionsConfigureVerb.cs
- EntityCommandDefinition.cs
- HMACRIPEMD160.cs
- XsdBuildProvider.cs
- TableLayoutStyleCollection.cs
- DataSourceControl.cs
- SystemMulticastIPAddressInformation.cs
- MenuItemStyleCollection.cs
- CatalogPart.cs
- GroupPartitionExpr.cs
- Drawing.cs
- DataObjectEventArgs.cs
- RegularExpressionValidator.cs
- SqlDependencyUtils.cs
- OSFeature.cs
- HtmlInputControl.cs
- HtmlTextArea.cs
- PageBuildProvider.cs
- PreservationFileWriter.cs
- SettingsSection.cs
- TemplatePropertyEntry.cs
- DateTimeOffsetAdapter.cs
- RepeaterItem.cs
- DescendantBaseQuery.cs
- ContractMapping.cs
- FormViewInsertedEventArgs.cs
- BamlTreeMap.cs
- ConfigXmlWhitespace.cs
- AppDomainProtocolHandler.cs
- XamlLoadErrorInfo.cs
- XsdBuildProvider.cs
- TemplateKeyConverter.cs
- Matrix.cs
- LocalizeDesigner.cs
- OdbcDataReader.cs
- XPathNodeIterator.cs
- RegexWorker.cs
- Crc32Helper.cs
- OletxTransactionManager.cs
- PasswordBox.cs
- APCustomTypeDescriptor.cs
- DataServiceQuery.cs
- ToolStripSplitButton.cs
- DataSourceControlBuilder.cs
- AspNetHostingPermission.cs
- EventLogSession.cs
- LeafCellTreeNode.cs
- GraphicsPathIterator.cs
- BookmarkList.cs