コード例 #1
0
ファイル: ParserExtension.cs プロジェクト: dox0/DotNet471RS3
/*
 *      // NOTE: Enable when Parser is ready to handle multiple errors w/o bailing out.
 *      internal override SerializationErrorAction ParseError(XamlParseException e)
 *      {
 *          _compiler.OnError(e);
 *          return SerializationErrorAction.Ignore;
 *      }
 */
        /// <summary>
        /// override of Write End Document
        /// </summary>
        public override void WriteDocumentEnd(XamlDocumentEndNode xamlEndDocumentNode)
        {
            if (BamlRecordWriter != null)
            {
                MemoryStream bamlMemStream = BamlRecordWriter.BamlStream as MemoryStream;
                Debug.Assert(bamlMemStream != null);
                base.WriteDocumentEnd(xamlEndDocumentNode);
                _compiler.GenerateBamlFile(bamlMemStream);
            }
        }
コード例 #2
0
ファイル: XamlParser.cs プロジェクト: JianwenSun/cc
 /// <summary>
 /// Called when parsing ends
 /// </summary>
 public virtual void WriteDocumentEnd(XamlDocumentEndNode xamlEndDocumentNode)
 {
     if (BamlRecordWriter != null)
     {
         BamlRecordWriter.WriteDocumentEnd(xamlEndDocumentNode);
     }
 }
コード例 #3
0
/*
        // NOTE: Enable when Parser is ready to handle multiple errors w/o bailing out.
        internal override SerializationErrorAction ParseError(XamlParseException e)
        {
            _compiler.OnError(e);
            return SerializationErrorAction.Ignore;
        }
*/
        /// <summary>
        /// override of Write End Document
        /// </summary>
        public override void WriteDocumentEnd(XamlDocumentEndNode xamlEndDocumentNode)
        {
            if (BamlRecordWriter != null)
            {
                MemoryStream bamlMemStream = BamlRecordWriter.BamlStream as MemoryStream;
                Debug.Assert(bamlMemStream != null);
                base.WriteDocumentEnd(xamlEndDocumentNode);
                _compiler.GenerateBamlFile(bamlMemStream);
            }
        }
コード例 #4
0
        // called when BAML is completely written
        internal void WriteDocumentEnd(XamlDocumentEndNode xamlDocumentEndNode)
        {
            // write end of document record
            BamlDocumentEndRecord endDocument =
                (BamlDocumentEndRecord) BamlRecordManager.GetWriteRecord(BamlRecordType.DocumentEnd);

            WriteBamlRecord(endDocument, xamlDocumentEndNode.LineNumber,
                            xamlDocumentEndNode.LinePosition);

            BamlRecordManager.ReleaseWriteRecord(endDocument);

            // should be done now and evertying fully initialized.
        }