Trait gluon_vm::api::AsyncPushable[][src]

pub trait AsyncPushable<'vm> {
    fn async_push(
        self,
        context: &mut ActiveThread<'vm>,
        lock: Lock,
        frame_index: VmIndex
    ) -> Poll<Result<()>>; fn async_status_push(
        self,
        context: &mut ActiveThread<'vm>,
        lock: Lock,
        frame_index: VmIndex
    ) -> Status
    where
        Self: Sized
, { ... } }
Expand description

Trait which allows a possibly asynchronous rust value to be pushed to the virtual machine

Required methods

Pushes self to stack. If the call is successful a single element should have been added to the stack and Ok(()) should be returned. If the call is unsuccessful Status:Error should be returned and the stack should be left intact.

If the value must be computed asynchronously Poll::Pending must be returned so that the virtual machine knows it must do more work before the value is available.

Provided methods

Implementors