pub struct AgentHarness<'a, A: Agent> { /* private fields */ }Expand description
An internal adapter turning an Agent into a Harness<World = (), Setup = ()> so the easy
run_suite path reuses the exact same panic-isolated runner as the full Harness path.
A deliberate explicit struct rather than a blanket impl<T: Agent> Harness for T: a blanket impl
would conflict (coherence) with a host’s own Harness impl (e.g. AetherCore’s AetherHarness), so
the adapter keeps the two trait families independent. The world is () (built once per case, inert)
and the agent’s run failure is mapped onto Harness::run’s anyhow::Result.
Implementations§
Trait Implementations§
Source§impl<A: Agent> Harness for AgentHarness<'_, A>
impl<A: Agent> Harness for AgentHarness<'_, A>
Source§type Setup = ()
type Setup = ()
The host’s per-case setup description (the input that builds a
World).
Matches EvalCase::setup.Auto Trait Implementations§
impl<'a, A> Freeze for AgentHarness<'a, A>
impl<'a, A> RefUnwindSafe for AgentHarness<'a, A>where
A: RefUnwindSafe,
impl<'a, A> Send for AgentHarness<'a, A>where
A: Sync,
impl<'a, A> Sync for AgentHarness<'a, A>where
A: Sync,
impl<'a, A> Unpin for AgentHarness<'a, A>
impl<'a, A> UnsafeUnpin for AgentHarness<'a, A>
impl<'a, A> UnwindSafe for AgentHarness<'a, A>where
A: RefUnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more