Theoria.Equation.Recursor.Descriptor (theoria v0.6.0)

Copy Markdown View Source

Experimental/internal API for 0.2; subject to change before 0.3. Internal recursor-derived shape metadata for matcher descriptors.

Summary

Functions

Builds recursor-derived matcher shape metadata for a schema.

Returns the recursor name used by the current equation fragment for a family.

Types

t()

@type t() :: %Theoria.Equation.Recursor.Descriptor{
  family: atom(),
  indexed?: boolean(),
  indices: [{atom(), Theoria.Term.t()}],
  parameters: [{atom(), Theoria.Term.t()}],
  recursor: Theoria.Env.Recursor.t(),
  rules: [Theoria.Equation.Recursor.Descriptor.Rule.t()]
}

Functions

from_schema(env, schema)

@spec from_schema(Theoria.Env.t(), Theoria.Equation.Schema.t()) ::
  {:ok, t()} | {:error, term()}

Builds recursor-derived matcher shape metadata for a schema.

recursor_name(family)

@spec recursor_name(atom()) :: atom()

Returns the recursor name used by the current equation fragment for a family.