Compartir a través de


IncrementalValuesProvider<TValues> Estructura

Definición

Representa un proveedor de varios valores que se pueden transformar para construir una canalización de ejecución.

public readonly struct IncrementalValuesProvider<TValues>
type IncrementalValuesProvider<'Values> = struct
Public Structure IncrementalValuesProvider(Of TValues)

Parámetros de tipo

TValues

Tipo de valor al que proporciona este origen acceso

Herencia
IncrementalValuesProvider<TValues>

Comentarios

Se trata de un tipo opaco que no se puede usar directamente. En su lugar, IIncrementalGenerator recibirá un conjunto de proveedores de valores al construir su canalización de ejecución. A continuación, se usa un conjunto de métodos de extensión para crear transformaciones a través de los datos que crean la canalización real.

Métodos de extensión

Nombre Description
Collect<TSource>(IncrementalValuesProvider<TSource>)

Recopila todos los valores de un IncrementalValuesProvider<TValues> objeto en un único IncrementalValueProvider<TValue> que contiene .ImmutableArray<T> Esto resulta útil cuando necesita agregar varios valores en una sola colección para procesarlos juntos.

Combine<TLeft,TRight>(IncrementalValuesProvider<TLeft>, IncrementalValueProvider<TRight>)

IncrementalValuesProvider<TValues> Combina con IncrementalValueProvider<TValue> para crear una nueva IncrementalValuesProvider<TValues> tupla. Cada valor del proveedor izquierdo se empareja con el valor único del proveedor derecho.

Select<TSource,TResult>(IncrementalValuesProvider<TSource>, Func<TSource,CancellationToken,TResult>)

Transforma un IncrementalValuesProvider<TValues> objeto en un nuevo IncrementalValuesProvider<TValues> aplicando una función de transformación a cada valor. Se trata de una transformación de 1 a 1 donde cada valor de entrada genera exactamente un valor de salida.

SelectMany<TSource,TResult>(IncrementalValuesProvider<TSource>, Func<TSource,CancellationToken,IEnumerable<TResult>>)

Transforma en IncrementalValuesProvider<TValues> un nuevo IncrementalValuesProvider<TValues> mediante la aplicación de una función de transformación que devuelve cero o más resultados para cada valor de entrada. Se trata de una transformación de varios a varios donde cada valor de entrada puede generar cero, uno o varios valores de salida.

SelectMany<TSource,TResult>(IncrementalValuesProvider<TSource>, Func<TSource,CancellationToken,ImmutableArray<TResult>>)

Transforma en IncrementalValuesProvider<TValues> un nuevo IncrementalValuesProvider<TValues> mediante la aplicación de una función de transformación que devuelve cero o más resultados para cada valor de entrada. Se trata de una transformación de varios a varios donde cada valor de entrada puede generar cero, uno o varios valores de salida.

Where<TSource>(IncrementalValuesProvider<TSource>, Func<TSource,Boolean>)

Filtra los valores de un IncrementalValuesProvider<TValues> elemento basado en un predicado, lo que genera un nuevo IncrementalValuesProvider<TValues> que contiene solo valores que satisfacen el predicado.

WithComparer<TSource>(IncrementalValuesProvider<TSource>, IEqualityComparer<TSource>)

Especifica un personalizado IEqualityComparer<T> que se usará al comparar valores de este proveedor con fines de almacenamiento en caché. De forma predeterminada, la infraestructura del generador usa Default para determinar si los valores han cambiado. Use este método cuando necesite lógica de igualdad personalizada, como para objetos complejos o cuando quiera controlar cuándo se vuelven a ejecutar las transformaciones.

WithTrackingName<TSource>(IncrementalValuesProvider<TSource>, String)

Asigna un nombre a este paso de proveedor con fines de seguimiento y depuración. Este nombre se puede usar en escenarios de prueba y diagnóstico para comprender la canalización de ejecución.

Se aplica a