public InternalDocument CreateDocument(List<InternalObject> tagSoup, CancellationToken cancellationToken)
		{
			var stack = InsertPlaceholderTags(tagSoup, cancellationToken);
			InternalDocument doc = new InternalDocument();
			var docElements = CreateElements(ref stack);
			docElements.Reverse(); // reverse due to stack
			doc.NestedObjects = new InternalObject[docElements.Count];
			int pos = 0;
			for (int i = 0; i < docElements.Count; i++) {
				doc.NestedObjects[i] = docElements[i].SetStartRelativeToParent(pos);
				pos += doc.NestedObjects[i].Length;
			}
			doc.Length = pos;
			return doc;
		}
Example #2
0
        public InternalDocument CreateDocument(List <InternalObject> tagSoup, CancellationToken cancellationToken)
        {
            var stack            = InsertPlaceholderTags(tagSoup, cancellationToken);
            InternalDocument doc = new InternalDocument();
            var docElements      = CreateElements(ref stack);

            docElements.Reverse(); // reverse due to stack
            doc.NestedObjects = new InternalObject[docElements.Count];
            int pos = 0;

            for (int i = 0; i < docElements.Count; i++)
            {
                doc.NestedObjects[i] = docElements[i].SetStartRelativeToParent(pos);
                pos += doc.NestedObjects[i].Length;
            }
            doc.Length = pos;
            return(doc);
        }
Example #3
0
 internal AXmlDocument(AXmlObject parent, int startOffset, InternalDocument internalObject)
     : base(parent, startOffset, internalObject)
 {
 }
Example #4
0
 internal AXmlDocument(AXmlObject parent, int startOffset, InternalDocument internalObject)
     : base(parent, startOffset, internalObject)
 {
 }