[][src]Struct inkwell::execution_engine::JitFunction

pub struct JitFunction<F> { /* fields omitted */ }

A wrapper around a function pointer which ensures the function being pointed to doesn't accidentally outlive its execution engine.

Methods

impl<Output, A, B, C, D, E, F, G, H, I, J, K, L, M> JitFunction<unsafe extern "C" fn(_: A, _: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(
    &self,
    A: A,
    B: B,
    C: C,
    D: D,
    E: E,
    F: F,
    G: G,
    H: H,
    I: I,
    J: J,
    K: K,
    L: L,
    M: M
) -> Output
[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, B, C, D, E, F, G, H, I, J, K, L, M> JitFunction<unsafe extern "C" fn(_: B, _: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(
    &self,
    B: B,
    C: C,
    D: D,
    E: E,
    F: F,
    G: G,
    H: H,
    I: I,
    J: J,
    K: K,
    L: L,
    M: M
) -> Output
[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, C, D, E, F, G, H, I, J, K, L, M> JitFunction<unsafe extern "C" fn(_: C, _: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(
    &self,
    C: C,
    D: D,
    E: E,
    F: F,
    G: G,
    H: H,
    I: I,
    J: J,
    K: K,
    L: L,
    M: M
) -> Output
[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, D, E, F, G, H, I, J, K, L, M> JitFunction<unsafe extern "C" fn(_: D, _: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(
    &self,
    D: D,
    E: E,
    F: F,
    G: G,
    H: H,
    I: I,
    J: J,
    K: K,
    L: L,
    M: M
) -> Output
[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, E, F, G, H, I, J, K, L, M> JitFunction<unsafe extern "C" fn(_: E, _: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(
    &self,
    E: E,
    F: F,
    G: G,
    H: H,
    I: I,
    J: J,
    K: K,
    L: L,
    M: M
) -> Output
[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, F, G, H, I, J, K, L, M> JitFunction<unsafe extern "C" fn(_: F, _: G, _: H, _: I, _: J, _: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(
    &self,
    F: F,
    G: G,
    H: H,
    I: I,
    J: J,
    K: K,
    L: L,
    M: M
) -> Output
[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, G, H, I, J, K, L, M> JitFunction<unsafe extern "C" fn(_: G, _: H, _: I, _: J, _: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(&self, G: G, H: H, I: I, J: J, K: K, L: L, M: M) -> Output[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, H, I, J, K, L, M> JitFunction<unsafe extern "C" fn(_: H, _: I, _: J, _: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(&self, H: H, I: I, J: J, K: K, L: L, M: M) -> Output[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, I, J, K, L, M> JitFunction<unsafe extern "C" fn(_: I, _: J, _: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(&self, I: I, J: J, K: K, L: L, M: M) -> Output[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, J, K, L, M> JitFunction<unsafe extern "C" fn(_: J, _: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(&self, J: J, K: K, L: L, M: M) -> Output[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, K, L, M> JitFunction<unsafe extern "C" fn(_: K, _: L, _: M) -> Output>[src]

pub unsafe fn call(&self, K: K, L: L, M: M) -> Output[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, L, M> JitFunction<unsafe extern "C" fn(_: L, _: M) -> Output>[src]

pub unsafe fn call(&self, L: L, M: M) -> Output[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output, M> JitFunction<unsafe extern "C" fn(_: M) -> Output>[src]

pub unsafe fn call(&self, M: M) -> Output[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

impl<Output> JitFunction<unsafe extern "C" fn() -> Output>[src]

pub unsafe fn call(&self) -> Output[src]

This method allows you to call the underlying function while making sure that the backing storage is not dropped too early and preserves the unsafe marker for any calls.

Trait Implementations

impl<F: Clone> Clone for JitFunction<F>[src]

impl<F> Debug for JitFunction<F>[src]

Auto Trait Implementations

impl<F> !Sync for JitFunction<F>

impl<F> !Send for JitFunction<F>

impl<F> Unpin for JitFunction<F> where
    F: Unpin

impl<F> UnwindSafe for JitFunction<F> where
    F: UnwindSafe

impl<F> !RefUnwindSafe for JitFunction<F>

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]