Gjallarhorn
Gjallarhorn Namespace
Type | Description |
AsyncMutable<'a> | Type which manages state internally using a mailbox |
AtomicMutable<'a> | A thread-safe wrapper using interlock for a mutable value with change notification |
IAsyncMutatable<'a> | Interface for mutable types that have asynchronous support atomic update functionality |
IAtomicMutatable<'a> | Interface for mutable types that have atomic update functionality |
IMutatable<'a> | Core interface for all mutatable types |
ISignal<'a> | Core interface for signals
|
IValidatedSignal<'a, 'b> | The output of validating an input signal |
ObservableSource<'a> | |
ValidationResult | Defines a validation result |
Module | Description |
Mutable | Manages creation of mutable variables |
Observable | Additional functions related to Observable for use with Gjallarhorn |
Signal | Provides mechanisms for working with signals |
Validation | Basic validation support |
Gjallarhorn.Helpers Namespace
Type | Description |
CompositeDisposable | Type which allows tracking of multiple disposables at once |
ICompositeDisposable | A disposable type that manages multiple other disposables, and disposes all of them when disposed |
IdleTracker | Type which tracks execution, used for tracked async operations Acts as a ISignal<bool> with value of true when idle, false when executing |
Gjallarhorn.Interaction Namespace
Type | Description |
Direct<'a> | Used to directly map a signal to a user. No notification exists in this case. |
InOut<'a, 'b> | Used as an input and output mapping to report and fetch data from a user |
MutatableInOut<'a, 'b> | Used as an input and output mapping which mutates an input IMutatable, with validation to report and fetch data from a user |
Out<'a> | Used as an output mapping to fetch data from a user |
Report<'a, 'b> | Used to report data to a user |
ValidatedInOut<'a, 'b, 'c> | Used as an input and output mapping with validation to report and fetch data from a user |
ValidatedOut<'a, 'b> | Used as an output mapping with validation to fetch data from a user |
ValidatedReport<'a, 'b> | Used to report data to a user with validation |
Validation<'a, 'b> | A single step in a validation chain |
Module | Description |
IO | Creates IO handles for use with Gjallarhorn adapters, like Gjallarhorn.Bindable |
Gjallarhorn.Internal Namespace
Type | Description |
IDependencyManager<'a> | Type used to track dependencies |
IDependent | A type which depends on a signal |
ITracksDependents | Interface that allows a type to remotely add itself as a dependent |
Mutable<'a> | A lightweight wrapper for a mutable value which provides a mechanism for change notification as needed |
SignalBase<'a> | Base class which simplifies implementation of standard signals |
Module | Description |
Dependencies | Module used to create and manage dependencies |
WeakRef | Helper module for dealing with weak references |
Gjallarhorn.Linq Namespace
Type | Description |
Mutable | Functions for working with Mutables from C# |
ObservableExtensions | Extension methods for working with Observables from C# using a LINQ inspired API |
Signal | Functions for working with Signals from C# |
SignalExtensions | Extension methods for working with Signals from C# using a LINQ inspired API |