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