IncrementalGeneratorInitializationContext Estrutura
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Contexto passado para um gerador incremental quando Initialize(IncrementalGeneratorInitializationContext) é chamado
public readonly struct IncrementalGeneratorInitializationContext
type IncrementalGeneratorInitializationContext = struct
Public Structure IncrementalGeneratorInitializationContext
- Herança
-
IncrementalGeneratorInitializationContext
Propriedades
| Nome | Description |
|---|---|
| AdditionalTextsProvider |
Obtém um IncrementalValuesProvider<TValues> que fornece acesso a todos os AdditionalText arquivos incluídos na compilação. Textos adicionais normalmente não são arquivos de código (como .txt, .json, .xml) que podem ser usados como entrada para geração de origem. Cada texto adicional adicionado, removido ou modificado disparará um novo valor no provedor. |
| AnalyzerConfigOptionsProvider |
Obtém um IncrementalValueProvider<TValue> que fornece acesso à AnalyzerConfigOptionsProvider compilação. Isso pode ser usado para ler as configurações do .editorconfig e outras opções de configuração do analisador. |
| CompilationProvider |
Obtém um IncrementalValueProvider<TValue> que fornece acesso ao Compilation processamento. O valor desse provedor é alterado sempre que a compilação é alterada (por exemplo, arquivos de origem, referências ou opções são modificados). |
| MetadataReferencesProvider |
Obtém um IncrementalValuesProvider<TValues> que fornece acesso a todos os MetadataReferences na compilação. Cada referência de metadados (por exemplo, assemblies referenciados) adicionada, removida ou modificada disparará um novo valor no provedor. |
| ParseOptionsProvider |
Obtém um IncrementalValueProvider<TValue> que fornece acesso à ParseOptions compilação. O valor desse provedor é alterado sempre que as opções de análise são alteradas (por exemplo, símbolos de versão do idioma ou pré-processador). |
| SyntaxProvider |
Obtém um SyntaxValueProvider que pode ser usado para criar nós de entrada baseados em sintaxe para o pipeline de gerador incremental. Use isso para registrar retornos de chamada que filtram e transformam nós de sintaxe na compilação. |
Métodos
| Nome | Description |
|---|---|
| RegisterHostOutput<TSource>(IncrementalValueProvider<TSource>, Action<HostOutputProductionContext,TSource>) |
Registra um nó de saída que produzirá saídas específicas do host que não são adicionadas à compilação. As saídas do host não têm uso definido e não contribuem para a compilação final. Eles são disponibilizados para o host (ou seja, o ambiente de desenvolvimento ou o sistema de build que executa o gerador, como o Visual Studio, o build do dotnet etc.) e HostOutputs cabe ao host decidir como usá-los. A ação fornecida será invocada com o valor do provedor sempre que for alterada. |
| RegisterHostOutput<TSource>(IncrementalValuesProvider<TSource>, Action<HostOutputProductionContext,TSource>) |
Registra um nó de saída que produzirá saídas específicas do host que não são adicionadas à compilação. As saídas do host não têm uso definido e não contribuem para a compilação final. Eles são disponibilizados para o host (ou seja, o ambiente de desenvolvimento ou o sistema de build que executa o gerador, como o Visual Studio, o build do dotnet etc.) e HostOutputs cabe ao host decidir como usá-los. A ação fornecida será invocada uma vez para cada valor do provedor sempre que eles forem alterados. |
| RegisterImplementationSourceOutput<TSource>(IncrementalValueProvider<TSource>, Action<SourceProductionContext,TSource>) |
Registra um nó de saída que produzirá o código-fonte de implementação a ser adicionado à compilação. As fontes de implementação são tratadas de forma diferente das fontes regulares em alguns cenários e podem ser excluídas de determinadas saídas de compilação. A ação fornecida será invocada com o valor do provedor sempre que for alterada. |
| RegisterImplementationSourceOutput<TSource>(IncrementalValuesProvider<TSource>, Action<SourceProductionContext,TSource>) |
Registra um nó de saída que produzirá o código-fonte de implementação a ser adicionado à compilação. As fontes de implementação são tratadas de forma diferente das fontes regulares em alguns cenários e podem ser excluídas de determinadas saídas de compilação. A ação fornecida será invocada uma vez para cada valor do provedor sempre que eles forem alterados. |
| RegisterPostInitializationOutput(Action<IncrementalGeneratorPostInitializationContext>) |
Registra um retorno de chamada que será invocado uma vez, antes que qualquer outra geração de origem ocorra. Normalmente, isso é usado para adicionar código-fonte que deve estar disponível para as etapas de geração subsequentes, como definições de atributo. Use AddEmbeddedAttributeDefinition() para adicionar o EmbeddedAttribute que marca os tipos gerados como internos ao assembly atual. |
| RegisterSourceOutput<TSource>(IncrementalValueProvider<TSource>, Action<SourceProductionContext,TSource>) |
Registra um nó de saída que produzirá o código-fonte a ser adicionado à compilação. A ação fornecida será invocada com o valor do provedor sempre que for alterada. |
| RegisterSourceOutput<TSource>(IncrementalValuesProvider<TSource>, Action<SourceProductionContext,TSource>) |
Registra um nó de saída que produzirá o código-fonte a ser adicionado à compilação. A ação fornecida será invocada uma vez para cada valor do provedor sempre que eles forem alterados. |