public XmlAttributePreservationDict GetDictAtPosition(int lineNumber, int linePosition) { if (reader.ReadToPosition(lineNumber, linePosition)) { Debug.Assert((char)reader.Peek() == '<'); StringBuilder sb = new StringBuilder(); int character; bool inAttribute = false; do { character = reader.Read(); if (character == '\"') { inAttribute = !inAttribute; } sb.Append((char)character); }while (character > 0 && ((char)character != '>' || inAttribute)); if (character > 0) { XmlAttributePreservationDict dict = new XmlAttributePreservationDict(); dict.ReadPreservationInfo(sb.ToString()); return(dict); } } Debug.Fail("Failed to get preservation info"); return(null); }
public XmlAttributePreservationDict GetDictAtPosition(int lineNumber, int linePosition) { if (reader.ReadToPosition(lineNumber, linePosition)) { Debug.Assert((char)reader.Peek() == '<'); StringBuilder sb = new StringBuilder(); int character; bool inAttribute = false; do { character = reader.Read(); if (character == '\"'){ inAttribute = !inAttribute; } sb.Append((char)character); } while (character > 0 && ((char)character != '>' || inAttribute)); if (character > 0) { XmlAttributePreservationDict dict = new XmlAttributePreservationDict(); dict.ReadPreservationInfo(sb.ToString()); return dict; } } Debug.Fail("Failed to get preservation info"); return null; }
public XmlAttributePreservationDict GetDictAtPosition(int lineNumber, int linePosition) { if (this.reader.ReadToPosition(lineNumber, linePosition)) { StringBuilder builder = new StringBuilder(); bool flag = false; while (true) { int num = this.reader.Read(); if (num == 0x22) { flag = !flag; } builder.Append((char)num); if ((num <= 0) || ((((ushort)num) == 0x3e) && !flag)) { if (num <= 0) { break; } XmlAttributePreservationDict dict = new XmlAttributePreservationDict(); dict.ReadPreservationInfo(builder.ToString()); return(dict); } } } return(null); }
internal XmlFileInfoElement(string prefix, string localName, string namespaceUri, XmlFileInfoDocument document) : base(prefix, localName, namespaceUri, document) { this.lineNumber = document.CurrentLineNumber; this.linePosition = document.CurrentLinePosition; this.isOriginal = document.FirstLoad; if (document.PreservationProvider != null) { this.preservationDict = document.PreservationProvider.GetDictAtPosition(this.lineNumber, this.linePosition - 1); } if (this.preservationDict == null) { this.preservationDict = new XmlAttributePreservationDict(); } }
internal XmlFileInfoElement(string prefix, string localName, string namespaceUri, XmlFileInfoDocument document) : base(prefix, localName, namespaceUri, document) { lineNumber = document.CurrentLineNumber; linePosition = document.CurrentLinePosition; isOriginal = document.FirstLoad; if (document.PreservationProvider != null) { preservationDict = document.PreservationProvider.GetDictAtPosition(lineNumber, linePosition - 1); } if (preservationDict == null) { preservationDict = new XmlAttributePreservationDict(); } }