UniformContext

Type Alias UniformContext 

Source
pub type UniformContext = Context<Data<NumberType>, SpaceKind, TimeKind, SpaceTimeKind, SymbolKind, FloatType, FloatType>;
Expand description

A type alias for a default, general-purpose Context configuration that uses abstract “kind” enums for its spatial, temporal, and symbolic contexts.

This UniformContext alias represents a Context instance configured with a standard set of generic parameters, making it suitable for common causal modeling scenarios where the specific underlying concrete types for space, time, and symbols can vary but are represented by their respective “kind” enums.

It provides a convenient and readable shorthand for defining a Context that encapsulates:

  • Data<NumberType>: Used for its data component. NumberType is a generic numeric type, typically an alias for a floating-point or integer, allowing for flexible data representation within the context.
  • SpaceKind: Defines the spatial context using an abstract SpaceKind enum. This allows the context to operate with various spatial representations (e.g., EuclideanSpace, EcefSpace, NedSpace, GeoSpace) without changing the Context’s type signature, providing uniformity across different spatial contexts.
  • TimeKind: Specifies the temporal context using an abstract TimeKind enum. This enables the context to handle different temporal representations (e.g., EuclideanTime, DiscreteTime, EntropicTime, LorentzianTime) flexibly, offering a uniform temporal interface.
  • SpaceTimeKind: Combines the spatial and temporal contexts into a unified spacetime representation using an abstract SpaceTimeKind enum, allowing for various spacetime geometries (e.g., EuclideanSpacetime, LorentzianSpacetime, MinkowskiSpacetime) in a uniform manner.
  • SymbolKind: Provides a basic symbolic representation for elements within the context using an abstract SymbolKind enum, useful for labeling, identification, or abstract reasoning across different symbolic types.
  • FloatType (x2): Two FloatType parameters, typically used for internal calculations, scalar values, metrics, or other generic numerical requirements within the Context structure, such as probabilities, weights, or magnitudes. FloatType is generally an alias for a standard floating-point type.

This UniformContext is designed to be a sensible default for many applications requiring a flexible yet consistent context structure that can adapt to different underlying spatial, temporal, and symbolic representations through their respective Kind enums. It promotes code reusability and simplifies type declarations when the exact concrete type of a context component is not fixed but rather belongs to a set of predefined “kinds”.

Aliased Type§

pub struct UniformContext { /* private fields */ }