#![no_std]
#[cfg(any(audit, test))]
extern crate alloc;
mod allocator;
mod page_size;
mod util {
pub(crate) mod cache;
pub(crate) mod lifo;
pub(crate) mod lock;
}
mod strategies {
pub(crate) mod cpu_id;
pub(crate) mod interrupt;
pub(crate) mod provenance;
}
mod implementations {
pub(crate) mod summary_buddy;
pub(crate) mod wrappers {
pub(crate) mod depot;
pub(crate) mod regioned;
}
}
pub use allocator::AllocError;
#[cfg(any(feature = "stats", test))]
pub use allocator::AllocatorStats;
pub use allocator::InitError;
pub use allocator::PhysRange;
pub use allocator::PhysicalAllocator;
pub use allocator::RegionInit;
pub use implementations::summary_buddy::{DefaultGates, GateConfig, SummaryBuddyAllocator};
pub use implementations::wrappers::depot::DepotAllocator;
pub use implementations::wrappers::regioned::RegionedAllocator;
pub use page_size::PageSize;
pub use strategies::cpu_id::{CpuId, NoCpuId};
pub use strategies::interrupt::{InterruptControl, NoInterruptControl};
pub use strategies::provenance::Provenance;
#[cfg(test)]
mod tests {
mod common;
mod composition;
mod depot;
mod lifo;
mod lock;
mod page_size;
mod regioned;
mod summary_buddy;
}