Trait puffin::put_registry::Factory

source ·
pub trait Factory<PB: ProtocolBehavior> {
    // Required methods
    fn create(
        &self,
        agent_descriptor: &AgentDescriptor<<<PB as ProtocolBehavior>::ProtocolTypes as ProtocolTypes>::PUTConfig>,
        claims: &GlobalClaimList<PB::Claim>,
        options: &PutOptions,
    ) -> Result<Box<dyn Put<PB>>, Error>;
    fn name(&self) -> String;
    fn versions(&self) -> Vec<(String, String)>;
    fn supports(&self, capability: &str) -> bool;
    fn clone_factory(&self) -> Box<dyn Factory<PB>>;

    // Provided method
    fn rng_reseed(&self) { ... }
}
Expand description

Factory for instantiating programs-under-test.

Required Methods§

source

fn create( &self, agent_descriptor: &AgentDescriptor<<<PB as ProtocolBehavior>::ProtocolTypes as ProtocolTypes>::PUTConfig>, claims: &GlobalClaimList<PB::Claim>, options: &PutOptions, ) -> Result<Box<dyn Put<PB>>, Error>

source

fn name(&self) -> String

source

fn versions(&self) -> Vec<(String, String)>

source

fn supports(&self, capability: &str) -> bool

source

fn clone_factory(&self) -> Box<dyn Factory<PB>>

Provided Methods§

Implementors§