Table of Contents

Interface IReadOnlyCollectionVariable<TKey, TElement, TValidationResult>

Namespace
LfrlAnvil.Reactive.State
Assembly
LfrlAnvil.Reactive.State.dll

Represents a generic read-only collection variable.

public interface IReadOnlyCollectionVariable<TKey, TElement, TValidationResult> : IReadOnlyCollectionVariable<TKey, TElement>, IReadOnlyCollectionVariable, IVariableNode where TKey : notnull where TElement : notnull

Type Parameters

TKey

Key type.

TElement

Element type.

TValidationResult

Validation result type.

Inherited Members
Extension Methods

Properties

Elements

Current collection of elements.

ICollectionVariableElements<TKey, TElement, TValidationResult> Elements { get; }

Property Value

ICollectionVariableElements<TKey, TElement, TValidationResult>

Errors

Collection of current validation errors.

Chain<TValidationResult> Errors { get; }

Property Value

Chain<TValidationResult>

ErrorsValidator

Collection of elements validator that marks result as errors.

IValidator<ICollectionVariableElements<TKey, TElement, TValidationResult>, TValidationResult> ErrorsValidator { get; }

Property Value

IValidator<ICollectionVariableElements<TKey, TElement, TValidationResult>, TValidationResult>

OnChange

Event stream that emits events when variable's elements change.

IEventStream<CollectionVariableChangeEvent<TKey, TElement, TValidationResult>> OnChange { get; }

Property Value

IEventStream<CollectionVariableChangeEvent<TKey, TElement, TValidationResult>>

OnValidate

Event stream that emits events when variable's validation state changes.

IEventStream<CollectionVariableValidationEvent<TKey, TElement, TValidationResult>> OnValidate { get; }

Property Value

IEventStream<CollectionVariableValidationEvent<TKey, TElement, TValidationResult>>

Warnings

Collection of current validation warnings.

Chain<TValidationResult> Warnings { get; }

Property Value

Chain<TValidationResult>

WarningsValidator

Collection of elements validator that marks result as warnings.

IValidator<ICollectionVariableElements<TKey, TElement, TValidationResult>, TValidationResult> WarningsValidator { get; }

Property Value

IValidator<ICollectionVariableElements<TKey, TElement, TValidationResult>, TValidationResult>