#![warn(missing_docs)]
mod assembly_info;
mod dispatch_table;
mod function_info;
mod module_info;
mod static_type_map;
mod struct_info;
mod type_info;
#[cfg(test)]
mod test_utils;
pub use assembly_info::AssemblyInfo;
pub use dispatch_table::DispatchTable;
pub use function_info::{
FunctionDefinition, FunctionDefinitionStorage, FunctionPrototype, FunctionSignature,
IntoFunctionDefinition,
};
pub use module_info::ModuleInfo;
pub use struct_info::{StructInfo, StructMemoryKind};
pub use type_info::{HasStaticTypeInfo, TypeInfo, TypeInfoData};
pub mod prelude {
pub use crate::{HasStaticTypeInfo, IntoFunctionDefinition, StructMemoryKind};
}
#[allow(clippy::zero_prefixed_literal)]
pub const ABI_VERSION: u32 = 00_03_00;
pub const GET_INFO_FN_NAME: &str = "get_info";
pub const GET_VERSION_FN_NAME: &str = "get_version";
pub const SET_ALLOCATOR_HANDLE_FN_NAME: &str = "set_allocator_handle";
#[repr(C)]
#[derive(Clone, Copy, Debug, Eq, PartialEq, Hash, Ord, PartialOrd)]
pub struct Guid(pub [u8; 16]);
#[repr(u8)]
#[derive(Clone, Copy, Debug, Eq, PartialEq)]
pub enum Privacy {
Public = 0,
Private = 1,
}