public sealed override void CollectBlockSpans( SyntaxTrivia trivia, ref TemporaryArray <BlockSpan> spans, BlockStructureOptions options, CancellationToken cancellationToken) { throw new NotSupportedException(); }
public override async Task <BlockStructure> GetBlockStructureAsync( Document document, BlockStructureOptions options, CancellationToken cancellationToken) { var syntaxTree = await document.GetSyntaxTreeAsync(cancellationToken).ConfigureAwait(false); var context = CreateContext(syntaxTree, options, cancellationToken); return(GetBlockStructure(context, _providers)); }
private BlockSpanCollector( BlockStructureOptions options, ImmutableDictionary <Type, ImmutableArray <AbstractSyntaxStructureProvider> > nodeOutlinerMap, ImmutableDictionary <int, ImmutableArray <AbstractSyntaxStructureProvider> > triviaOutlinerMap, CancellationToken cancellationToken) { _options = options; _nodeProviderMap = nodeOutlinerMap; _triviaProviderMap = triviaOutlinerMap; _cancellationToken = cancellationToken; }
public static void CollectBlockSpans( SyntaxNode syntaxRoot, BlockStructureOptions options, ImmutableDictionary <Type, ImmutableArray <AbstractSyntaxStructureProvider> > nodeOutlinerMap, ImmutableDictionary <int, ImmutableArray <AbstractSyntaxStructureProvider> > triviaOutlinerMap, ref TemporaryArray <BlockSpan> spans, CancellationToken cancellationToken) { var collector = new BlockSpanCollector(options, nodeOutlinerMap, triviaOutlinerMap, cancellationToken); collector.Collect(syntaxRoot, ref spans); }
public sealed override void CollectBlockSpans( SyntaxToken previousToken, SyntaxNode node, ref TemporaryArray <BlockSpan> spans, BlockStructureOptions options, CancellationToken cancellationToken) { if (node is TSyntaxNode tSyntax) { CollectBlockSpans(previousToken, tSyntax, ref spans, options, cancellationToken); } }
public BlockStructureContext(SyntaxTree syntaxTree, BlockStructureOptions options, CancellationToken cancellationToken) { SyntaxTree = syntaxTree; Options = options; CancellationToken = cancellationToken; }
public abstract Task <BlockStructure> GetBlockStructureAsync(Document document, BlockStructureOptions options, CancellationToken cancellationToken);
public abstract void CollectBlockSpans( SyntaxTrivia trivia, ref TemporaryArray <BlockSpan> spans, BlockStructureOptions options, CancellationToken cancellationToken);
public abstract void CollectBlockSpans( SyntaxToken previousToken, SyntaxNode node, ref TemporaryArray <BlockSpan> spans, BlockStructureOptions options, CancellationToken cancellationToken);