ax-allocator 0.5.4

Various allocator algorithms in a unified interface
Documentation
[package]
name = "ax-allocator"
version = "0.5.4"
repository = "https://github.com/rcore-os/tgoskits"
edition.workspace = true
authors = [
    "Yuekai Jia <equation618@gmail.com>",
    "Yu Chen <yuchen@tsinghua.edu.cn>",
]
description = "Various allocator algorithms in a unified interface"
readme = "README.md"
license = "Apache-2.0"

[features]
default = ["page-alloc-4g"]
full = ["bitmap", "tlsf", "slab", "buddy", "allocator_api", "page-alloc-4g"]

bitmap = ["dep:bitmap-allocator"]

tlsf = ["dep:rlsf"]
slab = ["dep:ax_slab_allocator"]
buddy = ["dep:buddy_system_allocator"]

allocator_api = []

page-alloc-1t = []
page-alloc-64g = []
page-alloc-4g = []
page-alloc-256m = []

ax-errno = ["dep:ax-errno"]

[dependencies]
ax-errno = { workspace = true, optional = true }
cfg-if = "1.0"
rlsf = { version = "0.2", optional = true }
buddy_system_allocator = { version = "0.12", default-features = false, optional = true }
ax_slab_allocator = { version = "0.4", optional = true }
bitmap-allocator = { workspace = true, optional = true }
[target.'cfg(not(target_os = "none"))'.dev-dependencies]
rand = { version = "0.8", features = ["small_rng"] }
criterion = { version = "0.5", features = ["html_reports"] }

[[test]]
name = "allocator"
required-features = ["full"]

[[bench]]
name = "collections"
harness = false
required-features = ["full"]