SyntaxValueProvider.ForAttributeWithMetadataName<T> Метод

Определение

Создает объект IncrementalValuesProvider<TValues> , который может обеспечить преобразование для всех SyntaxNodeобъектов , если на этом узле есть атрибут, который привязывается к INamedTypeSymbol с теми же полными метаданными, что и предоставленный fullyQualifiedMetadataName. fullyQualifiedMetadataName должно быть полным именем метаданных атрибута, включая суффикс Attribute . Например, "System.CLSCompliantAttribute" для CLSCompliantAttribute.

public Microsoft.CodeAnalysis.IncrementalValuesProvider<T> ForAttributeWithMetadataName<T> (string fullyQualifiedMetadataName, Func<Microsoft.CodeAnalysis.SyntaxNode,System.Threading.CancellationToken,bool> predicate, Func<Microsoft.CodeAnalysis.GeneratorAttributeSyntaxContext,System.Threading.CancellationToken,T> transform);
member this.ForAttributeWithMetadataName : string * Func<Microsoft.CodeAnalysis.SyntaxNode, System.Threading.CancellationToken, bool> * Func<Microsoft.CodeAnalysis.GeneratorAttributeSyntaxContext, System.Threading.CancellationToken, 'T> -> Microsoft.CodeAnalysis.IncrementalValuesProvider<'T>
Public Function ForAttributeWithMetadataName(Of T) (fullyQualifiedMetadataName As String, predicate As Func(Of SyntaxNode, CancellationToken, Boolean), transform As Func(Of GeneratorAttributeSyntaxContext, CancellationToken, T)) As IncrementalValuesProvider(Of T)

Параметры типа

T

Параметры

fullyQualifiedMetadataName
String
predicate
Func<SyntaxNode,CancellationToken,Boolean>

Функция, которая определяет, следует ли преобразовать заданный SyntaxNode целевой объект атрибута (TargetNode). Узлы, которые не передают этот предикат, не будут рассматривать свои атрибуты вообще.

transform
Func<GeneratorAttributeSyntaxContext,CancellationToken,T>

Функция, выполняющая преобразование. Передаются только узлы, возвращающие true для predicate и имеющие соответствующее AttributeDataAttributeClass имя метаданных с тем же полным именем fullyQualifiedMetadataNameметаданных, что и .

Возвращаемое значение

Применяется к