System.Xml.Xsl.Xslt.XsltInput.BuildLineInfo C# (CSharp) Method

BuildLineInfo() public method

public BuildLineInfo ( ) : ISourceLineInfo
return ISourceLineInfo
        public ISourceLineInfo BuildLineInfo() {
            bool onAttribute = (nodeType == XPathNodeType.Attribute);
            if (lastLineInfo != null && !onAttribute) {
                Debug.Assert(
                    Uri       == lastLineInfo.Uri       &&
                    StartLine == lastLineInfo.StartLine &&
                    StartPos  == lastLineInfo.StartPos  &&
                    EndLine   == lastLineInfo.EndLine   &&
                    EndPos    == lastLineInfo.EndPos
                );
                return lastLineInfo;
            }
            SourceLineInfo lineInfo = new SourceLineInfo(Uri, StartLine, StartPos, EndLine, EndPos);
            if (!OnTextNode && !onAttribute) {
                lastLineInfo = lineInfo;
            }
            return lineInfo;
        }

Usage Example

            public void SaveExtendedLineInfo(XsltInput input)
            {
                elemNameLi = new SourceLineInfo(
                    lineInfo.Uri,
                    lineInfo.StartLine, lineInfo.StartPos + 1,  // "<"
                    lineInfo.StartLine, lineInfo.StartPos + 1 + elemNameLength
                    );

                if (!input.IsEmptyElement)
                {
                    Debug.Assert(input.reader.NodeType == XmlNodeType.EndElement);
                    endTagLi = input.BuildLineInfo();
                }
                else
                {
                    Debug.Assert(input.reader.NodeType == XmlNodeType.Element);
                    endTagLi = new EmptyElementEndTag(lineInfo);
                }
            }
All Usage Examples Of System.Xml.Xsl.Xslt.XsltInput::BuildLineInfo