fedimint_core::core

Trait IOutput

source
pub trait IOutput:
    Debug
    + Display
    + DynEncodable {
    // Required methods
    fn as_any(&self) -> &(dyn Any + Send + Sync);
    fn module_kind(&self) -> Option<ModuleKind>;
    fn clone(&self, instance_id: ModuleInstanceId) -> DynOutput;
    fn dyn_hash(&self) -> u64;
    fn erased_eq_no_instance_id(&self, other: &DynOutput) -> bool;
}
Expand description

Something that can be an DynOutput in a Transaction

General purpose code should use DynOutput instead

Required Methods§

source

fn as_any(&self) -> &(dyn Any + Send + Sync)

source

fn module_kind(&self) -> Option<ModuleKind>

source

fn clone(&self, instance_id: ModuleInstanceId) -> DynOutput

source

fn dyn_hash(&self) -> u64

source

fn erased_eq_no_instance_id(&self, other: &DynOutput) -> bool

Implementors§

source§

impl IOutput for DynUnknown

source§

impl<T> IOutput for T
where T: Output + DynEncodable + 'static + Send + Sync,