pub enum BindError {
SymbolKindMismatch {
name: String,
expected: SymbolKind,
existing: SymbolKind,
},
SymbolRenameConflict {
name: String,
},
AliasChainLengthExceeded {
name: String,
limit: usize,
},
UnknownSymbol {
name: String,
},
BadKind {
found: String,
},
UnregisteredInferenceMethod {
found: String,
},
InvalidKeywordValue {
keyword: String,
reason: &'static str,
},
ConfidenceOutOfRange(ConfidenceError),
UnexpectedList {
slot: &'static str,
},
InvalidTimestampKeyword {
keyword: String,
},
ForeignSymbolForbidden {
scoped: ScopedSymbolId,
},
LabelTooLong {
len: usize,
cap: usize,
},
}Expand description
Errors produced by the binder.
Typed per PRINCIPLES.md § 2. Agents route recovery on the error
variant, never by matching message text.
Variants§
SymbolKindMismatch
A symbol was used in a slot expecting a different kind than the one locked at first allocation.
Fields
expected: SymbolKindThe slot’s expected kind.
existing: SymbolKindThe kind this symbol was allocated with.
SymbolRenameConflict
Two distinct symbols cannot share a canonical name.
AliasChainLengthExceeded
Alias chain length exceeded per ALIAS_CHAIN_LIMIT.
UnknownSymbol
A rename or retire referenced an unknown symbol.
BadKind
A @name:Kind annotation used a Kind that isn’t in the
SymbolKind taxonomy.
UnregisteredInferenceMethod
An Inferential memory used a method symbol whose name is not
in the registered inference-method set
(crate::inference_methods::InferenceMethod).
InvalidKeywordValue
A keyword argument’s value did not have the expected shape.
ConfidenceOutOfRange(ConfidenceError)
A confidence value violated its range at bind time.
UnexpectedList
A value position received a RawValue::List where a scalar
was required.
InvalidTimestampKeyword
A timestamp keyword value was missing or not a timestamp.
ForeignSymbolForbidden
A cross-workspace symbol was referenced but this binder is scoped to a single workspace and cannot locally allocate.
Fields
scoped: ScopedSymbolIdThe offending scoped reference.
LabelTooLong
A (episode :start :label …) label exceeds the
episode-semantics.md § 4.3 256-byte cap.
Trait Implementations§
Source§impl Error for BindError
impl Error for BindError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()