Skip to main content

CallRuntime

Trait CallRuntime 

Source
pub trait CallRuntime: Sealed {
    // Required methods
    unsafe fn perform_cally(
        &self,
        function: TValueCursor,
        n_results: i32,
    ) -> VmResult;
    unsafe fn call_int(
        &self,
        function: TValueCursor,
        n_results: i32,
        prepare_reentry: bool,
    ) -> VmResult;
    unsafe fn call_internal(
        &self,
        function: TValueCursor,
        n_results: i32,
    ) -> VmResult;
    unsafe fn call_no_yield(
        &self,
        function: TValueCursor,
        n_results: i32,
    ) -> VmResult;
}
Expand description

Unstable callable-invocation capability.

§Safety

Function cursors must be live positions in this thread’s current stack, the argument/result stack shape must match the requested call, and callers must account for execution, yielding, stack relocation, and collection.

Required Methods§

Source

unsafe fn perform_cally( &self, function: TValueCursor, n_results: i32, ) -> VmResult

Source

unsafe fn call_int( &self, function: TValueCursor, n_results: i32, prepare_reentry: bool, ) -> VmResult

Source

unsafe fn call_internal( &self, function: TValueCursor, n_results: i32, ) -> VmResult

Source

unsafe fn call_no_yield( &self, function: TValueCursor, n_results: i32, ) -> VmResult

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§