8 implementations of IIncrementalGeneratorNode
Microsoft.CodeAnalysis (6)
SourceGeneration\Nodes\BatchNode.cs (1)
14internal sealed class BatchNode<TInput> : IIncrementalGeneratorNode<ImmutableArray<TInput>>
SourceGeneration\Nodes\CombineNode.cs (1)
14internal sealed class CombineNode<TInput1, TInput2> : IIncrementalGeneratorNode<(TInput1, TInput2)>
SourceGeneration\Nodes\InputNode.cs (1)
19internal sealed class InputNode<T> : IIncrementalGeneratorNode<T>
SourceGeneration\Nodes\SourceOutputNode.cs (1)
16internal sealed class SourceOutputNode<TInput> : IIncrementalGeneratorOutputNode, IIncrementalGeneratorNode<TOutput>
SourceGeneration\Nodes\SyntaxInputNode.cs (1)
16internal sealed class SyntaxInputNode<T> : SyntaxInputNode, IIncrementalGeneratorNode<T>
SourceGeneration\Nodes\TransformNode.cs (1)
16internal sealed class TransformNode<TInput, TOutput> : IIncrementalGeneratorNode<TOutput>
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (1)
SourceGeneration\StateTableTests.cs (1)
1030private class CallbackNode<T> : IIncrementalGeneratorNode<T>
Microsoft.CodeAnalysis.ExternalAccess.RazorCompiler (1)
HostOutputNode.cs (1)
17internal sealed class HostOutputNode<TInput> : IIncrementalGeneratorOutputNode, IIncrementalGeneratorNode<TOutput>
49 references to IIncrementalGeneratorNode
Microsoft.CodeAnalysis (33)
SourceGeneration\IncrementalContexts.cs (1)
80private static void RegisterSourceOutput<TSource>(IIncrementalGeneratorNode<TSource> node, Action<SourceProductionContext, TSource> action, IncrementalGeneratorOutputKind kind, string sourceExt)
SourceGeneration\IncrementalValueProvider.cs (4)
22internal readonly IIncrementalGeneratorNode<TValue> Node; 24internal IncrementalValueProvider(IIncrementalGeneratorNode<TValue> node) 41internal readonly IIncrementalGeneratorNode<TValues> Node; 43internal IncrementalValuesProvider(IIncrementalGeneratorNode<TValues> node)
SourceGeneration\Nodes\BatchNode.cs (4)
16private readonly IIncrementalGeneratorNode<TInput> _sourceNode; 20public BatchNode(IIncrementalGeneratorNode<TInput> sourceNode, IEqualityComparer<ImmutableArray<TInput>>? comparer = null, string? name = null) 27public IIncrementalGeneratorNode<ImmutableArray<TInput>> WithComparer(IEqualityComparer<ImmutableArray<TInput>> comparer) => new BatchNode<TInput>(_sourceNode, comparer, _name); 29public IIncrementalGeneratorNode<ImmutableArray<TInput>> WithTrackingName(string name) => new BatchNode<TInput>(_sourceNode, _comparer, name);
SourceGeneration\Nodes\CombineNode.cs (6)
16private readonly IIncrementalGeneratorNode<TInput1> _input1; 17private readonly IIncrementalGeneratorNode<TInput2> _input2; 21public CombineNode(IIncrementalGeneratorNode<TInput1> input1, IIncrementalGeneratorNode<TInput2> input2, IEqualityComparer<(TInput1, TInput2)>? comparer = null, string? name = null) 98public IIncrementalGeneratorNode<(TInput1, TInput2)> WithComparer(IEqualityComparer<(TInput1, TInput2)> comparer) => new CombineNode<TInput1, TInput2>(_input1, _input2, comparer, _name); 100public IIncrementalGeneratorNode<(TInput1, TInput2)> WithTrackingName(string name) => new CombineNode<TInput1, TInput2>(_input1, _input2, _comparer, name);
SourceGeneration\Nodes\DriverStateTable.cs (1)
48public NodeStateTable<T> GetLatestStateTableForNode<T>(IIncrementalGeneratorNode<T> source)
SourceGeneration\Nodes\IIncrementalGeneratorNode.cs (2)
18IIncrementalGeneratorNode<T> WithComparer(IEqualityComparer<T> comparer); 20IIncrementalGeneratorNode<T> WithTrackingName(string name);
SourceGeneration\Nodes\InputNode.cs (2)
100public IIncrementalGeneratorNode<T> WithComparer(IEqualityComparer<T> comparer) => new InputNode<T>(_getInput, _registerOutput, _inputComparer, comparer, _name); 102public IIncrementalGeneratorNode<T> WithTrackingName(string name) => new InputNode<T>(_getInput, _registerOutput, _inputComparer, _comparer, name);
SourceGeneration\Nodes\SourceOutputNode.cs (6)
18private readonly IIncrementalGeneratorNode<TInput> _source; 26public SourceOutputNode(IIncrementalGeneratorNode<TInput> source, Action<SourceProductionContext, TInput, CancellationToken> action, IncrementalGeneratorOutputKind outputKind, string sourceExtension) 88IIncrementalGeneratorNode<TOutput> IIncrementalGeneratorNode<TOutput>.WithComparer(IEqualityComparer<TOutput> comparer) => throw ExceptionUtilities.Unreachable(); 90public IIncrementalGeneratorNode<(IEnumerable<GeneratedSourceText>, IEnumerable<Diagnostic>)> WithTrackingName(string name) => throw ExceptionUtilities.Unreachable(); 92void IIncrementalGeneratorNode<TOutput>.RegisterOutput(IIncrementalGeneratorOutputNode output) => throw ExceptionUtilities.Unreachable();
SourceGeneration\Nodes\SyntaxInputNode.cs (2)
36public IIncrementalGeneratorNode<T> WithComparer(IEqualityComparer<T> comparer) => new SyntaxInputNode<T>(_inputNode, _registerOutput, comparer, _name); 38public IIncrementalGeneratorNode<T> WithTrackingName(string name) => new SyntaxInputNode<T>(_inputNode, _registerOutput, _comparer, name);
SourceGeneration\Nodes\TransformNode.cs (5)
20private readonly IIncrementalGeneratorNode<TInput> _sourceNode; 23public TransformNode(IIncrementalGeneratorNode<TInput> sourceNode, Func<TInput, CancellationToken, TOutput> userFunc, IEqualityComparer<TOutput>? comparer = null, string? name = null) 28public TransformNode(IIncrementalGeneratorNode<TInput> sourceNode, Func<TInput, CancellationToken, ImmutableArray<TOutput>> userFunc, IEqualityComparer<TOutput>? comparer = null, string? name = null) 36public IIncrementalGeneratorNode<TOutput> WithComparer(IEqualityComparer<TOutput> comparer) 39public IIncrementalGeneratorNode<TOutput> WithTrackingName(string name)
Microsoft.CodeAnalysis.CSharp.Semantic.UnitTests (10)
SourceGeneration\StateTableTests.cs (10)
478var inputNode = new InputNode<int>((_) => inputValue).WithTrackingName("Input"); 736var inputNode = new InputNode<int>((_) => inputNodeValue).WithTrackingName("TestStep"); 790var transformNode = new TransformNode<int, int>(inputNode, (i, ct) => ImmutableArray.Create(i)).WithTrackingName("TestStep"); 825var combineNode = new CombineNode<int, int>(inputNode, input2Node).WithTrackingName("TestStep"); 880var inputNode = new InputNode<int>((_) => ImmutableArray.Create(1, 2, 3)) 898var inputNode = new InputNode<int>((_) => ImmutableArray.Create(1, 2, thirdValue)).WithTrackingName("Input"); 932var inputNode = new InputNode<ImmutableArray<int>>(_ => ImmutableArray.Create(values)).WithTrackingName("Input"); 961var inputNode = new InputNode<ImmutableArray<int>>(_ => ImmutableArray.Create(values)).WithTrackingName("Input"); 1045public IIncrementalGeneratorNode<T> WithComparer(IEqualityComparer<T> comparer) => this; 1047public IIncrementalGeneratorNode<T> WithTrackingName(string name) => this;
Microsoft.CodeAnalysis.ExternalAccess.RazorCompiler (6)
HostOutputNode.cs (6)
19private readonly IIncrementalGeneratorNode<TInput> _source; 23public HostOutputNode(IIncrementalGeneratorNode<TInput> source, Action<HostProductionContext, TInput, CancellationToken> action) 86IIncrementalGeneratorNode<TOutput> IIncrementalGeneratorNode<TOutput>.WithComparer(IEqualityComparer<TOutput> comparer) => throw ExceptionUtilities.Unreachable(); 88public IIncrementalGeneratorNode<TOutput> WithTrackingName(string name) => throw ExceptionUtilities.Unreachable(); 90void IIncrementalGeneratorNode<TOutput>.RegisterOutput(IIncrementalGeneratorOutputNode output) => throw ExceptionUtilities.Unreachable();