AgentBlueprintProtocol. BoundsAlgebra. BoundSet
(Agent Blueprint Protocol v0.1.0)
Copy Markdown
View Source
A (possibly partial) set of the closed 13. Construction validates every
PRESENT name and value (:bound_unknown / :bound_value_invalid);
totality — all thirteen present — is demanded of all three sources at
intersect/1 time, never defaulted, because an implicit default is the
silent-widening hole.
A bound set is data about limits and carries no authority.
Summary
Functions
Fetch one bound. :error when absent.
The closed 13-name vocabulary, name-sorted (the clamps order, pinned for the second-language verifier).
Validate and construct from a plain map. Unknown names deny
:bound_unknown; off-lattice or non-positive values deny
:bound_value_invalid. Absent names are simply absent.
The plain name-to-value map (rebuild a set via new/1).
Types
@type t() :: %AgentBlueprintProtocol.BoundsAlgebra.BoundSet{ bounds: %{optional(atom()) => AgentBlueprintProtocol.BoundsAlgebra.Bound.t()} }
Functions
@spec fetch(t(), atom()) :: {:ok, AgentBlueprintProtocol.BoundsAlgebra.Bound.t()} | :error
Fetch one bound. :error when absent.
@spec names() :: [atom()]
The closed 13-name vocabulary, name-sorted (the clamps order, pinned for the second-language verifier).
@spec new(%{optional(atom()) => term()}) :: {:ok, t()} | {:error, AgentBlueprintProtocol.Error.t()}
Validate and construct from a plain map. Unknown names deny
:bound_unknown; off-lattice or non-positive values deny
:bound_value_invalid. Absent names are simply absent.
@spec to_map(t()) :: {:ok, %{optional(atom()) => term()}} | {:error, AgentBlueprintProtocol.Error.t()}
The plain name-to-value map (rebuild a set via new/1).