pub trait Metadata {
// Required methods
fn find_input(&self, name: &str) -> Option<usize>;
fn input_names(&self) -> Vec<String>;
fn output_names(&self) -> Vec<String>;
fn coord_count(&self) -> usize;
fn input_port_type(&self, name: &str) -> Option<PortType>;
fn input_port_type_by_idx(&self, idx: usize) -> Option<PortType>;
fn output_port_type(&self, name: &str) -> Option<PortType>;
}Expand description
Read-only metadata about the interpreter’s kernel: structural
shape, types, names, scope layering. Everything that’s a property
of the compiled program (or fiber-state instance) but isn’t itself
a runtime value. Interpreter-only: Kernel carries the names and
types every engine reports.
Required Methods§
Sourcefn find_input(&self, name: &str) -> Option<usize>
fn find_input(&self, name: &str) -> Option<usize>
Resolve an input name to its wire index, if present.
Sourcefn input_names(&self) -> Vec<String>
fn input_names(&self) -> Vec<String>
All declared input wire names, in declaration order.
Sourcefn output_names(&self) -> Vec<String>
fn output_names(&self) -> Vec<String>
All declared output wire names, in declaration order.
Sourcefn coord_count(&self) -> usize
fn coord_count(&self) -> usize
Number of coordinate inputs (the leading prefix of the input slot vector — written via the cycle dispatcher).
Sourcefn input_port_type(&self, name: &str) -> Option<PortType>
fn input_port_type(&self, name: &str) -> Option<PortType>
Declared port type of an input wire, if known.
Sourcefn input_port_type_by_idx(&self, idx: usize) -> Option<PortType>
fn input_port_type_by_idx(&self, idx: usize) -> Option<PortType>
Declared port type of an input wire by index. The
indexed counterpart of input_port_type — used by
the typed-write fast path so Dataflow::set_wire_idx
can look up the slot’s expected type without first
reverse-resolving an index to a name.
Sourcefn output_port_type(&self, name: &str) -> Option<PortType>
fn output_port_type(&self, name: &str) -> Option<PortType>
Declared port type of an output wire, if present.
Symmetric counterpart to input_port_type. Used by
the binder verification path
(crate::binder::verify_against_kernel) to look up wire
types for type-checking adapter binding shapes.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".