Remoting

Trait Remoting 

Source
pub trait Remoting {
    type Args: Default;

    // Required methods
    async fn activate(
        self,
        code_id: CodeId,
        salt: impl AsRef<[u8]>,
        payload: impl AsRef<[u8]>,
        gas_limit: Option<GasUnit>,
        value: ValueUnit,
        args: Self::Args,
    ) -> Result<impl Future<Output = Result<(ActorId, Vec<u8>)>>>;
    async fn message(
        self,
        target: ActorId,
        payload: impl AsRef<[u8]>,
        gas_limit: Option<GasUnit>,
        value: ValueUnit,
        args: Self::Args,
    ) -> Result<impl Future<Output = Result<Vec<u8>>>>;
    async fn query(
        self,
        target: ActorId,
        payload: impl AsRef<[u8]>,
        gas_limit: Option<GasUnit>,
        value: ValueUnit,
        args: Self::Args,
    ) -> Result<Vec<u8>>;
}

Required Associated Types§

Required Methods§

Source

async fn activate( self, code_id: CodeId, salt: impl AsRef<[u8]>, payload: impl AsRef<[u8]>, gas_limit: Option<GasUnit>, value: ValueUnit, args: Self::Args, ) -> Result<impl Future<Output = Result<(ActorId, Vec<u8>)>>>

Source

async fn message( self, target: ActorId, payload: impl AsRef<[u8]>, gas_limit: Option<GasUnit>, value: ValueUnit, args: Self::Args, ) -> Result<impl Future<Output = Result<Vec<u8>>>>

Source

async fn query( self, target: ActorId, payload: impl AsRef<[u8]>, gas_limit: Option<GasUnit>, value: ValueUnit, args: Self::Args, ) -> Result<Vec<u8>>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§