コード例 #1
0
        public override void WriteDefinition(ISymbol symbol, ImmutableArray <SymbolDisplayPart> parts)
        {
            if (_definitionWriter == null)
            {
                _attributeStringBuilder = new StringBuilder();
                var stringWriter = new StringWriter(_attributeStringBuilder);
                _definitionWriter = new SymbolDefinitionTextWriter(stringWriter, Filter, Format, DocumentationProvider);
            }

            _definitionWriter.WriteDefinition(symbol, parts);

            WriteValue(_attributeStringBuilder.ToString());

            _attributeStringBuilder.Clear();
        }
コード例 #2
0
        public override void WriteAttribute(AttributeData attribute)
        {
            if (_definitionWriter == null)
            {
                _attributeStringBuilder = new StringBuilder();
                var stringWriter = new StringWriter(_attributeStringBuilder);
                _definitionWriter = new SymbolDefinitionTextWriter(stringWriter, Filter, Format, DocumentationProvider);
            }

            _definitionWriter.WriteAttribute(attribute);

            WriteValue(_attributeStringBuilder.ToString());

            _attributeStringBuilder.Clear();
        }
コード例 #3
0
 public override void Close()
 {
     if (_writer != null)
     {
         try
         {
             _writer.Flush();
         }
         finally
         {
             try
             {
                 ((IDisposable)_writer).Dispose();
                 _definitionWriter.Dispose();
             }
             finally
             {
                 _writer           = null;
                 _definitionWriter = null;
             }
         }
     }
 }