pub trait Component: EvalSite {
// Required methods
fn kind(&self) -> ComponentKind;
fn name(&self) -> &Symbol;
fn capabilities(&self) -> &[CapabilityName];
fn reflect(&self, cx: &mut Cx) -> Result<Expr>;
}Expand description
A pluggable agent building block (runner, tool, memory, planner, and so on)
that participates in evaluation as an EvalSite.
Required Methods§
Sourcefn kind(&self) -> ComponentKind
fn kind(&self) -> ComponentKind
Returns the kind of component this is.
Sourcefn capabilities(&self) -> &[CapabilityName]
fn capabilities(&self) -> &[CapabilityName]
Returns the capabilities this component requires or grants.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".