Module canrun::core

source ·
Expand description

Low level implementation with basic unification, forking and constraint tracking.

Modules

Structs

  • A logical variable that represents a potential value of type T.
  • An opaque list of untyped LVars.
  • Derives from a State that has been confirmed to have no open forks or constraints. A ReadyState can have Values reified.
  • The core struct used to contain and manage Value bindings.

Enums

  • Contain individual resolved values or variables that can be bound through unification.

Traits

  • Fork a State into zero or more alternate states.
  • Derive reified values potential resolved states.
  • Extract a fully resolved T from a Value<T> associated with a State.
  • This trait is implemented on the typical values that contain or represent an open state, such as Goal and of course State itself.
  • How compatible values are matched with each other.

Type Definitions