#![warn(missing_docs)]
#![warn(rust_2018_idioms)]
#![warn(missing_debug_implementations)]
pub mod error;
pub mod host_fns;
pub mod ipc {
pub use uni_plugin_wasm_rt::ipc::{decode_batch, decode_batches, encode_batch, encode_batches};
}
#[cfg(feature = "extism-runtime")]
pub mod adapter;
#[cfg(feature = "extism-runtime")]
pub mod adapter_aggregate;
#[cfg(feature = "extism-runtime")]
pub mod adapter_common;
#[cfg(feature = "extism-runtime")]
pub mod adapter_procedure;
#[cfg(feature = "extism-runtime")]
pub mod pool {
pub use uni_plugin_wasm_rt::pool::{PoolConfig, PoolMetrics};
pub type ExtismInstancePool<T> = uni_plugin_wasm_rt::pool::InstancePool<T, crate::ExtismError>;
pub type PooledInstance<T> = uni_plugin_wasm_rt::pool::PooledInstance<T, crate::ExtismError>;
}
#[cfg(feature = "extism-runtime")]
pub mod exports;
#[cfg(feature = "extism-runtime")]
pub mod host_svc;
#[cfg(feature = "extism-runtime")]
pub mod loader;
#[cfg(feature = "extism-runtime")]
pub mod wire_translate;
#[doc(inline)]
pub use error::ExtismError;
#[doc(inline)]
pub use host_fns::HostFnRegistry;
#[cfg(feature = "extism-runtime")]
#[doc(inline)]
pub use adapter::ExtismScalarFn;
#[cfg(feature = "extism-runtime")]
#[doc(inline)]
pub use adapter_aggregate::ExtismAggregateFn;
#[cfg(feature = "extism-runtime")]
#[doc(inline)]
pub use adapter_procedure::ExtismProcedure;
#[cfg(feature = "extism-runtime")]
#[doc(inline)]
pub use exports::{
RegistrationEntry, RegistrationManifest, WireArgType, WireFnSignature, parse_manifest_json,
parse_registration_json, read_manifest_export, read_register_export,
};
#[cfg(feature = "extism-runtime")]
#[doc(inline)]
pub use host_svc::register_default_host_svc;
#[cfg(feature = "extism-runtime")]
#[doc(inline)]
pub use loader::ExtismLoader;
#[cfg(feature = "extism-runtime")]
#[doc(inline)]
pub use wire_translate::{
arrow_name_to_datatype, wire_arg_to_internal, wire_fn_sig_to_internal,
wire_null_handling_to_internal, wire_volatility_to_internal,
};