2 types derived from GeneratorDriver
Microsoft.CodeAnalysis.CSharp (1)
SourceGeneration\CSharpGeneratorDriver.cs (1)
18public sealed class CSharpGeneratorDriver : GeneratorDriver
Microsoft.CodeAnalysis.VisualBasic (1)
SourceGeneration\VisualBasicGeneratorDriver.vb (1)
16Inherits GeneratorDriver
105 references to GeneratorDriver
Microsoft.Analyzers.Extra.Tests (2)
Resources\RoslynTestUtils.cs (2)
194var gd = cgd.RunGenerators(comp!, cancellationToken); 225var gd = cgd.RunGenerators(comp!, cancellationToken);
Microsoft.Analyzers.Local.Tests (2)
Resources\RoslynTestUtils.cs (2)
194var gd = cgd.RunGenerators(comp!, cancellationToken); 225var gd = cgd.RunGenerators(comp!, cancellationToken);
Microsoft.CodeAnalysis (27)
CommandLine\CommonCompiler.cs (2)
813GeneratorDriver? driver = null; 866private protected abstract GeneratorDriver CreateGeneratorDriver(string baseDirectory, ParseOptions parseOptions, ImmutableArray<ISourceGenerator> generators, AnalyzerConfigOptionsProvider analyzerConfigOptionsProvider, ImmutableArray<AdditionalText> additionalTexts, SourceHashAlgorithm checksumAlgorithm);
SourceGeneration\GeneratorDriver.cs (16)
44/// Run generators and produce an updated <see cref="GeneratorDriver"/> containing the results. 48public GeneratorDriver RunGenerators(Compilation compilation) => RunGenerators(compilation, generatorFilter: null, cancellationToken: default); 51public GeneratorDriver RunGenerators(Compilation compilation, CancellationToken cancellationToken) => RunGenerators(compilation, generatorFilter: null, cancellationToken); 54/// Run generators and produce an updated <see cref="GeneratorDriver"/> containing the results. 60public GeneratorDriver RunGenerators(Compilation compilation, Func<GeneratorFilterContext, bool>? generatorFilter, CancellationToken cancellationToken = default) 66public GeneratorDriver RunGeneratorsAndUpdateCompilation(Compilation compilation, out Compilation outputCompilation, out ImmutableArray<Diagnostic> diagnostics, CancellationToken cancellationToken = default) 96public GeneratorDriver AddGenerators(ImmutableArray<ISourceGenerator> generators) 105public GeneratorDriver ReplaceGenerators(ImmutableArray<ISourceGenerator> generators) 127public GeneratorDriver RemoveGenerators(ImmutableArray<ISourceGenerator> generators) 146public GeneratorDriver AddAdditionalTexts(ImmutableArray<AdditionalText> additionalTexts) 152public GeneratorDriver RemoveAdditionalTexts(ImmutableArray<AdditionalText> additionalTexts) 158public GeneratorDriver ReplaceAdditionalText(AdditionalText oldText, AdditionalText newText) 173public GeneratorDriver ReplaceAdditionalTexts(ImmutableArray<AdditionalText> newTexts) => FromState(_state.With(additionalTexts: newTexts)); 175public GeneratorDriver WithUpdatedParseOptions(ParseOptions newOptions) => newOptions is object 179public GeneratorDriver WithUpdatedAnalyzerConfigOptions(AnalyzerConfigOptionsProvider newOptions) => newOptions is object 681internal abstract GeneratorDriver FromState(GeneratorDriverState state);
SourceGeneration\GeneratorDriverCache.cs (6)
17private readonly (string cacheKey, GeneratorDriver driver)[] _cachedDrivers = new (string, GeneratorDriver)[maxCacheSize]; 23public GeneratorDriver? TryGetDriver(string cacheKey) => AddOrUpdateMostRecentlyUsed(cacheKey, driver: null); 25public void CacheGenerator(string cacheKey, GeneratorDriver driver) => AddOrUpdateMostRecentlyUsed(cacheKey, driver); 37private GeneratorDriver? AddOrUpdateMostRecentlyUsed(string cacheKey, GeneratorDriver? driver)
SourceGeneration\GeneratorDriverOptions.cs (1)
12/// Options passed to a <see cref="GeneratorDriver"/> during creation.
SourceGeneration\GeneratorExtensions.cs (1)
47/// Converts an <see cref="IIncrementalGenerator"/> into an <see cref="ISourceGenerator"/> object that can be used when constructing a <see cref="GeneratorDriver"/>
SourceGeneration\Nodes\IIncrementalGeneratorOutputNode.cs (1)
26/// Can be passed as a bit field when creating a <see cref="GeneratorDriver"/> to selectively disable outputs.
Microsoft.CodeAnalysis.CSharp (3)
CommandLine\CSharpCompiler.cs (1)
376private protected override GeneratorDriver CreateGeneratorDriver(string baseDirectory, ParseOptions parseOptions, ImmutableArray<ISourceGenerator> generators, AnalyzerConfigOptionsProvider analyzerConfigOptionsProvider, ImmutableArray<AdditionalText> additionalTexts, SourceHashAlgorithm checksumAlgorithm)
SourceGeneration\CSharpGeneratorDriver.cs (2)
16/// A <see cref="GeneratorDriver"/> implementation for the CSharp language. 73internal override GeneratorDriver FromState(GeneratorDriverState state) => new CSharpGeneratorDriver(state);
Microsoft.CodeAnalysis.CSharp.Workspaces (1)
Workspace\LanguageServices\CSharpCompilationFactoryService.cs (1)
56GeneratorDriver ICompilationFactoryService.CreateGeneratorDriver(ParseOptions parseOptions, ImmutableArray<ISourceGenerator> generators, AnalyzerConfigOptionsProvider optionsProvider, ImmutableArray<AdditionalText> additionalTexts, string? generatedFilesBaseDirectory)
Microsoft.CodeAnalysis.VisualBasic (2)
CommandLine\VisualBasicCompiler.vb (1)
301Private Protected Overrides Function CreateGeneratorDriver(baseDirectory As String, parseOptions As ParseOptions, generators As ImmutableArray(Of ISourceGenerator), analyzerConfigOptionsProvider As AnalyzerConfigOptionsProvider, additionalTexts As ImmutableArray(Of AdditionalText), checksumAlgorithm As SourceHashAlgorithm) As GeneratorDriver
SourceGeneration\VisualBasicGeneratorDriver.vb (1)
32Friend Overrides Function FromState(state As GeneratorDriverState) As GeneratorDriver
Microsoft.CodeAnalysis.VisualBasic.Workspaces (1)
Workspace\LanguageServices\VisualBasicCompilationFactoryService.vb (1)
68generatedFilesBaseDirectory As String) As GeneratorDriver Implements ICompilationFactoryService.CreateGeneratorDriver
Microsoft.CodeAnalysis.Workspaces (45)
SourceGeneration\IRemoteSourceGenerationService.cs (2)
34/// cref="GeneratorDriver"/> should be included.</param> 45/// cref="GeneratorDriver"/> should be included.</param>
Workspace\Host\CompilationFactory\ICompilationFactoryService.cs (1)
18GeneratorDriver CreateGeneratorDriver(ParseOptions parseOptions, ImmutableArray<ISourceGenerator> generators, AnalyzerConfigOptionsProvider optionsProvider, ImmutableArray<AdditionalText> additionalTexts, string? generatedFilesBaseDirectory);
Workspace\Solution\SolutionCompilationState.CompilationTrackerGeneratorInfo.cs (1)
21GeneratorDriver? Driver)
Workspace\Solution\SolutionCompilationState.cs (1)
1910public GeneratorDriver? GetGeneratorDriver(Project project)
Workspace\Solution\SolutionCompilationState.GeneratorDriverInitializationCache.cs (7)
31private AsyncLazy<GeneratorDriver>? _driverCache; 33public async Task<GeneratorDriver> CreateAndRunGeneratorDriverAsync( 67GeneratorDriver CreateGeneratorDriverAndRunGenerators(CancellationToken cancellationToken) 73var generatorDriver = compilationFactory.CreateGeneratorDriver( 83GeneratorDriver UpdateDriverAndRunGenerators(GeneratorDriver driver) 91public void UpdateCacheWithGeneratorDriver(GeneratorDriver driver)
Workspace\Solution\SolutionCompilationState.ICompilationTracker.cs (1)
17GeneratorDriver? GeneratorDriver { get; }
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker.cs (1)
94public GeneratorDriver? GeneratorDriver
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker_Generators.cs (3)
271private async Task<(Compilation compilationWithGeneratedFiles, TextDocumentStates<SourceGeneratedDocumentState> generatedDocuments, GeneratorDriver? generatorDriver)> ComputeNewGeneratorInfoInCurrentProcessAsync( 275GeneratorDriver? generatorDriver, 449static void CheckGeneratorDriver(GeneratorDriver generatorDriver, ProjectState projectState)
Workspace\Solution\SolutionCompilationState.TranslationAction.cs (3)
13/// Represents a change that needs to be made to a <see cref="Compilation"/>, <see cref="GeneratorDriver"/>, or both 48public abstract GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver);
Workspace\Solution\SolutionCompilationState.TranslationAction_Actions.cs (22)
53public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver) 101public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver) 130public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver) 155public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver) 197public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver) 222public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver) 252public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver) 272public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver) 291public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver) 322public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver) 342public override GeneratorDriver TransformGeneratorDriver(GeneratorDriver generatorDriver)
Workspace\Solution\SolutionCompilationState.WithFrozenSourceGeneratedDocumentsCompilationTracker.cs (1)
42public GeneratorDriver? GeneratorDriver => UnderlyingTracker.GeneratorDriver;
Workspace\Solution\SolutionCompilationState_SourceGenerators.cs (2)
63private static GeneratorDriver UpdateGeneratorDriverToMatchState(GeneratorDriver driver, ProjectState projectState)
Microsoft.Gen.BuildMetadata.Unit.Tests (4)
GeneratorTests.cs (1)
96var result = driver.RunGeneratorsAndUpdateCompilation(comp!, out var outputCompilation, out var diagnostics);
test\Generators\Shared\RoslynTestUtils.cs (3)
235GeneratorDriver gd = cgd.RunGenerators(compilation, cancellationToken); 279var gd = cgd.RunGenerators(comp!, cancellationToken); 324GeneratorDriver gd = cgd.RunGenerators(comp!, cancellationToken);
Microsoft.Gen.ComplianceReports.Unit.Tests (3)
test\Generators\Shared\RoslynTestUtils.cs (3)
235GeneratorDriver gd = cgd.RunGenerators(compilation, cancellationToken); 279var gd = cgd.RunGenerators(comp!, cancellationToken); 324GeneratorDriver gd = cgd.RunGenerators(comp!, cancellationToken);
Microsoft.Gen.ContextualOptions.Unit.Tests (3)
test\Generators\Shared\RoslynTestUtils.cs (3)
235GeneratorDriver gd = cgd.RunGenerators(compilation, cancellationToken); 279var gd = cgd.RunGenerators(comp!, cancellationToken); 324GeneratorDriver gd = cgd.RunGenerators(comp!, cancellationToken);
Microsoft.Gen.Logging.Unit.Tests (3)
test\Generators\Shared\RoslynTestUtils.cs (3)
235GeneratorDriver gd = cgd.RunGenerators(compilation, cancellationToken); 279var gd = cgd.RunGenerators(comp!, cancellationToken); 324GeneratorDriver gd = cgd.RunGenerators(comp!, cancellationToken);
Microsoft.Gen.MetadataExtractor.Unit.Tests (3)
test\Generators\Shared\RoslynTestUtils.cs (3)
235GeneratorDriver gd = cgd.RunGenerators(compilation, cancellationToken); 279var gd = cgd.RunGenerators(comp!, cancellationToken); 324GeneratorDriver gd = cgd.RunGenerators(comp!, cancellationToken);
Microsoft.Gen.Metrics.Unit.Tests (3)
test\Generators\Shared\RoslynTestUtils.cs (3)
235GeneratorDriver gd = cgd.RunGenerators(compilation, cancellationToken); 279var gd = cgd.RunGenerators(comp!, cancellationToken); 324GeneratorDriver gd = cgd.RunGenerators(comp!, cancellationToken);
Microsoft.Gen.MetricsReports.Unit.Tests (3)
test\Generators\Shared\RoslynTestUtils.cs (3)
235GeneratorDriver gd = cgd.RunGenerators(compilation, cancellationToken); 279var gd = cgd.RunGenerators(comp!, cancellationToken); 324GeneratorDriver gd = cgd.RunGenerators(comp!, cancellationToken);