3 instantiations of NodeStateTable
Microsoft.CodeAnalysis (3)
SourceGeneration\Nodes\NodeStateTable.cs (3)
63
internal static NodeStateTable<T> Empty { get; } = new
NodeStateTable
<T>(ImmutableArray<TableEntry>.Empty, ImmutableArray<IncrementalGeneratorRunStep>.Empty, hasTrackedSteps: true);
125
return new
NodeStateTable
<T>(compacted.ToImmutableAndFree(), ImmutableArray<IncrementalGeneratorRunStep>.Empty, hasTrackedSteps: false);
446
return new
NodeStateTable
<T>(
125 references to NodeStateTable
Microsoft.CodeAnalysis (54)
SourceGeneration\Nodes\BatchNode.cs (6)
32
NodeStateTable
<TInput> sourceTable,
33
NodeStateTable
<ImmutableArray<TInput>>? previousTable,
34
NodeStateTable
<ImmutableArray<TInput>>.Builder newTable)
109
public
NodeStateTable
<ImmutableArray<TInput>> UpdateStateTable(DriverStateTable.Builder builder,
NodeStateTable
<ImmutableArray<TInput>>? previousTable, CancellationToken cancellationToken)
112
var
sourceTable = builder.GetLatestStateTableForNode(_sourceNode);
SourceGeneration\Nodes\CombineNode.cs (8)
29
public
NodeStateTable
<(TInput1, TInput2)> UpdateStateTable(DriverStateTable.Builder graphState,
NodeStateTable
<(TInput1, TInput2)>? previousTable, CancellationToken cancellationToken)
32
var
input1Table = graphState.GetLatestStateTableForNode(_input1);
33
var
input2Table = graphState.GetLatestStateTableForNode(_input2);
83
private
NodeStateTable
<(TInput1, TInput2)> RecordStepsForCachedTable(DriverStateTable.Builder graphState,
NodeStateTable
<(TInput1, TInput2)> previousTable,
NodeStateTable
<TInput1> input1Table,
NodeStateTable
<TInput2> input2Table)
SourceGeneration\Nodes\DriverStateTable.cs (7)
48
public
NodeStateTable
<T> GetLatestStateTableForNode<T>(IIncrementalGeneratorNode<T> source)
53
return (
NodeStateTable
<T>)table;
57
NodeStateTable
<T>? previousTable = _previousTable._tables.GetStateTable<T>(source);
60
var
newTable = source.UpdateStateTable(this, previousTable, _cancellationToken);
65
public
NodeStateTable
<T>.Builder CreateTableBuilder<T>(
66
NodeStateTable
<T>? previousTable, string? stepName, IEqualityComparer<T>? equalityComparer, int? tableCapacity = null)
68
previousTable ??=
NodeStateTable
<T>.Empty;
SourceGeneration\Nodes\IIncrementalGeneratorNode.cs (2)
16
NodeStateTable
<T> UpdateStateTable(DriverStateTable.Builder graphState,
NodeStateTable
<T>? previousTable, CancellationToken cancellationToken);
SourceGeneration\Nodes\InputNode.cs (2)
41
public
NodeStateTable
<T> UpdateStateTable(DriverStateTable.Builder graphState,
NodeStateTable
<T>? previousTable, CancellationToken cancellationToken)
SourceGeneration\Nodes\NodeStateTable.cs (9)
63
internal static
NodeStateTable
<T> Empty { get; } = new NodeStateTable<T>(ImmutableArray<TableEntry>.Empty, ImmutableArray<IncrementalGeneratorRunStep>.Empty, hasTrackedSteps: true);
106
public
NodeStateTable
<T> AsCached()
139
public
NodeStateTable
<T> CreateCachedTableWithUpdatedSteps<TInput>(
NodeStateTable
<TInput> inputTable, string? stepName, IEqualityComparer<T> equalityComparer)
142
NodeStateTable
<T>.Builder builder = ToBuilder(stepName, stepTrackingEnabled: true, equalityComparer);
156
private readonly
NodeStateTable
<T> _previous;
170
NodeStateTable
<T> previous,
414
public
NodeStateTable
<T> ToImmutableAndFree()
421
return
NodeStateTable
<T>.Empty;
SourceGeneration\Nodes\PredicateSyntaxStrategy.cs (3)
41
private readonly
NodeStateTable
<SyntaxNode>.Builder _filterTable;
43
private readonly
NodeStateTable
<T>.Builder _transformTable;
83
if (state != EntryState.Cached || !_filterTable.TryUseCachedEntries(TimeSpan.Zero, noInputStepsStepInfo, out
NodeStateTable
<SyntaxNode>.TableEntry entry))
SourceGeneration\Nodes\SourceOutputNode.cs (4)
38
public
NodeStateTable
<TOutput> UpdateStateTable(DriverStateTable.Builder graphState,
NodeStateTable
<TOutput>? previousTable, CancellationToken cancellationToken)
41
var
sourceTable = graphState.GetLatestStateTableForNode(_source);
98
var
table = context.TableBuilder.GetLatestStateTableForNode(this);
SourceGeneration\Nodes\StateTableStore.cs (4)
27
public
NodeStateTable
<T> GetStateTableOrEmpty<T>(object input)
29
return GetStateTable<T>(input) ??
NodeStateTable
<T>.Empty;
32
public
NodeStateTable
<T>? GetStateTable<T>(object input)
36
return (
NodeStateTable
<T>)output;
SourceGeneration\Nodes\SyntaxInputNode.cs (3)
31
public
NodeStateTable
<T> UpdateStateTable(DriverStateTable.Builder graphState,
NodeStateTable
<T>? previousTable, CancellationToken cancellationToken)
33
return (
NodeStateTable
<T>)graphState.SyntaxStore.GetSyntaxInputTable(this, graphState.GetLatestStateTableForNode(SharedInputNodes.SyntaxTrees));
SourceGeneration\Nodes\SyntaxReceiverStrategy.cs (1)
35
private readonly
NodeStateTable
<ISyntaxContextReceiver?>.Builder _nodeStateTable;
SourceGeneration\Nodes\TransformNode.cs (3)
42
public
NodeStateTable
<TOutput> UpdateStateTable(DriverStateTable.Builder builder,
NodeStateTable
<TOutput>? previousTable, CancellationToken cancellationToken)
45
var
sourceTable = builder.GetLatestStateTableForNode(_sourceNode);
SourceGeneration\SyntaxStore.cs (2)
49
public IStateTable GetSyntaxInputTable(SyntaxInputNode syntaxInputNode,
NodeStateTable
<SyntaxTree> syntaxTreeTable)
84
NodeStateTable
<SyntaxTree> syntaxTreeState = syntaxTreeTable;
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (67)
SourceGeneration\StateTableTests.cs (67)
23
var builder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
27
var
table = builder.ToImmutableAndFree();
36
var builder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
40
var
table = builder.ToImmutableAndFree();
51
var builder =
NodeStateTable
<object>.Empty.ToBuilder(stepName: null, false);
53
var
table = builder.ToImmutableAndFree();
64
var builder =
NodeStateTable
<object?>.Empty.ToBuilder(stepName: null, false);
68
var
table = builder.ToImmutableAndFree();
77
var builder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
82
var
previousTable = builder.ToImmutableAndFree();
89
var
newTable = builder.ToImmutableAndFree();
108
var builder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
112
var
table = builder.ToImmutableAndFree();
117
var
compactedTable = table.AsCached();
125
var builder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
129
var
table = builder.ToImmutableAndFree();
134
var
compactedTable = table.AsCached();
139
var
compactedTable2 = compactedTable.AsCached();
146
var builder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
148
var
table = builder.ToImmutableAndFree();
156
var builder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
158
var
table = builder.ToImmutableAndFree();
178
var builder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
182
var
previousTable = builder.ToImmutableAndFree();
192
var
newTable = builder.ToImmutableAndFree();
201
var builder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
206
var
previousTable = builder.ToImmutableAndFree();
217
var
newTable = builder.ToImmutableAndFree();
226
var builder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
230
var
previousTable = builder.ToImmutableAndFree();
239
var
newTable = builder.ToImmutableAndFree();
264
NodeStateTable
<int>? passedIn = null;
274
Assert.Same(
NodeStateTable
<int>.Empty, passedIn);
280
var nodeBuilder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, false);
282
var
newTable = nodeBuilder.ToImmutableAndFree();
284
NodeStateTable
<int>? passedIn = null;
295
Assert.Same(
NodeStateTable
<int>.Empty, passedIn);
308
var nodeBuilder =
NodeStateTable
<int>.Empty.ToBuilder(stepName: null, true);
314
var
newTable = nodeBuilder.ToImmutableAndFree();
319
NodeStateTable
<int>? passedIn = null;
329
Assert.Same(
NodeStateTable
<int>.Empty, passedIn);
377
var
table = dstBuilder.GetLatestStateTableForNode(batchNode);
423
var
table = dstBuilder.GetLatestStateTableForNode(batchNode);
441
var
table = dstBuilder.GetLatestStateTableForNode(batchNode);
488
var
table = dstBuilder.GetLatestStateTableForNode(batchNode);
534
var
table = dstBuilder.GetLatestStateTableForNode(batchNode);
554
var
table = dstBuilder.GetLatestStateTableForNode(batchNode);
597
var
table = dstBuilder.GetLatestStateTableForNode(transformNode);
632
var
table = dstBuilder.GetLatestStateTableForNode(transformNode);
670
var
table = dstBuilder.GetLatestStateTableForNode(transformNode);
709
var
table = dstBuilder.GetLatestStateTableForNode(transformNode);
747
var
table = dstBuilder.GetLatestStateTableForNode(inputNode);
801
var
table = dstBuilder.GetLatestStateTableForNode(transformNode);
836
var
table = dstBuilder.GetLatestStateTableForNode(combineNode);
889
var
table = dstBuilder.GetLatestStateTableForNode(inputNode);
915
var
table = dstBuilder.GetLatestStateTableForNode(addOneNode);
943
var
table = dstBuilder.GetLatestStateTableForNode(transformNode);
972
var
table = dstBuilder.GetLatestStateTableForNode(transformNode);
986
private void AssertTableEntries<T>(
NodeStateTable
<T> table, IList<(T Item, EntryState State, int OutputIndex)> expected)
998
private void AssertTableEntries<T>(
NodeStateTable
<ImmutableArray<T>> table, IList<(ImmutableArray<T> Item, EntryState State, int OutputIndex)> expected)
1032
private readonly Func<DriverStateTable.Builder,
NodeStateTable
<T>,
NodeStateTable
<T>> _callback;
1034
public CallbackNode(Func<DriverStateTable.Builder,
NodeStateTable
<T>,
NodeStateTable
<T>> callback)
1039
public
NodeStateTable
<T> UpdateStateTable(DriverStateTable.Builder graphState,
NodeStateTable
<T>? previousTable, CancellationToken cancellationToken)
1041
previousTable ??=
NodeStateTable
<T>.Empty;
Microsoft.CodeAnalysis.ExternalAccess.RazorCompiler (4)
HostOutputNode.cs (4)
31
public
NodeStateTable
<TOutput> UpdateStateTable(DriverStateTable.Builder graphState,
NodeStateTable
<TOutput>? previousTable, CancellationToken cancellationToken)
34
var
sourceTable = graphState.GetLatestStateTableForNode(_source);
69
var
table = context.TableBuilder!.GetLatestStateTableForNode(this);