closure-ffi 5.1.2

FFI utility for creating bare function pointers that invoke a closure
Documentation
#![no_std]
#![cfg_attr(docsrs, feature(doc_cfg))]
#![cfg_attr(feature = "unstable", feature(unsize))]
#![cfg_attr(feature = "unstable", feature(ptr_metadata))]
#![cfg_attr(feature = "tuple_trait", feature(tuple_trait))]
#![cfg_attr(feature = "c_variadic", feature(c_variadic))]
#![cfg_attr(feature = "coverage", feature(coverage_attribute))]
#![doc = include_str!("../README.md")]
#![cfg_attr(doc, doc = include_str!("../CHANGELOG.md"))]

extern crate alloc;

#[cfg(feature = "std")]
extern crate std;

#[cfg(feature = "safe_jit")]
mod safe_jit;

#[doc(hidden)]
pub mod arch;

pub mod bare_closure;
pub mod cc;
pub mod jit_alloc;
pub mod thunk_factory;
pub mod traits;

/// Common imports required to use `closure-ffi`.
pub mod prelude {
    #[doc(inline)]
    pub use super::bare_closure::{
        BareFn, BareFnAny, BareFnMut, BareFnMutAny, BareFnMutSync, BareFnOnce, BareFnOnceAny,
        BareFnOnceSync, BareFnSync, UntypedBareFn, UntypedBareFnMut, UntypedBareFnOnce,
    };
    #[doc(inline)]
    pub use super::cc;
    #[doc(inline)]
    pub use super::jit_alloc::{JitAlloc, JitAllocError};
}

#[doc(inline)]
pub use prelude::*;