[][src]Module safer_ffi::closure

Closures with a #[repr(C)] layout (inlined vtable), up to 9 function arguments.

Simplified for lighter documentation, but the actual struct definitions and impls range up to ...DynFn...9.

Re-exports

pub use self::arc::ArcDynFn0;
pub use self::arc::ArcDynFn1;
pub use self::boxed::BoxDynFnMut0;
pub use self::boxed::BoxDynFnMut1;
pub use self::arc::ArcDynFn2;
pub use self::arc::ArcDynFn3;
pub use self::arc::ArcDynFn4;
pub use self::arc::ArcDynFn5;
pub use self::arc::ArcDynFn6;
pub use self::arc::ArcDynFn7;
pub use self::arc::ArcDynFn8;
pub use self::arc::ArcDynFn9;
pub use self::boxed::BoxDynFnMut2;
pub use self::boxed::BoxDynFnMut3;
pub use self::boxed::BoxDynFnMut4;
pub use self::boxed::BoxDynFnMut5;
pub use self::boxed::BoxDynFnMut6;
pub use self::boxed::BoxDynFnMut7;
pub use self::boxed::BoxDynFnMut8;
pub use self::boxed::BoxDynFnMut9;
pub use borrowed::RefDynFnMut0;
pub use borrowed::RefDynFnMut1;
pub use borrowed::RefDynFnMut2;
pub use borrowed::RefDynFnMut3;
pub use borrowed::RefDynFnMut4;
pub use borrowed::RefDynFnMut5;
pub use borrowed::RefDynFnMut6;
pub use borrowed::RefDynFnMut7;
pub use borrowed::RefDynFnMut8;
pub use borrowed::RefDynFnMut9;

Modules

arc

Arc<dyn 'static + Send + Sync + Fn(...) -> _> but with a #[repr(C)] layout (inlined virtual method table).

borrowed

&'lt mut (dyn 'lt + Send + FnMut(...) -> _> but with a #[repr(C)] layout (env ptr + function ptr).

boxed

Box<dyn 'static + Send + FnMut(...) -> _> but with a #[repr(C)] layout (inlined virtual method table).