[package]
name = "bytesbuf"
description = "Types for creating and manipulating byte sequences."
version = "0.5.6"
readme = "README.md"
keywords = ["oxidizer", "buffers", "io", "zero-copy"]
categories = ["data-structures", "network-programming"]
edition = { workspace = true }
rust-version = { workspace = true }
authors = { workspace = true }
license = { workspace = true }
homepage = { workspace = true }
include = { workspace = true }
repository = "https://github.com/microsoft/oxidizer/tree/main/crates/bytesbuf"
[package.metadata.cargo_check_external_types]
allowed_external_types = [
"bytes::bytes::Bytes",
"bytes::buf::buf_impl::Buf",
"bytes::buf::uninit_slice::UninitSlice",
"bytes::buf::buf_mut::BufMut",
"num_traits::ops::bytes::FromBytes",
"num_traits::ops::bytes::ToBytes",
"thread_aware::affinity::MemoryAffinity",
"thread_aware::affinity::PinnedAffinity",
"thread_aware::core::ThreadAware",
]
[package.metadata.docs.rs]
all-features = true
[features]
default = []
bytes-compat = ["dep:bytes"]
test-util = []
[dependencies]
bytes = { workspace = true, features = ["std"], optional = true }
infinity_pool = { workspace = true }
new_zealand = { workspace = true }
nm = { workspace = true }
num-traits = { workspace = true }
smallvec = { workspace = true, features = ["const_new", "union"] }
thread_aware = { workspace = true }
[dev-dependencies]
alloc_tracker = { workspace = true }
bytes = { workspace = true, features = ["std"] }
criterion = { workspace = true }
mutants = { workspace = true }
static_assertions = { workspace = true }
testing_aids = { path = "../testing_aids" }
[target.'cfg(target_os = "linux")'.dev-dependencies]
gungraun = { workspace = true, features = ["default"] }
libc = { workspace = true }
[target.'cfg(target_os = "windows")'.dev-dependencies]
windows-sys = { workspace = true }
[lints]
workspace = true
[[bench]]
name = "buf"
harness = false
required-features = ["test-util"]
[[bench]]
name = "bytesbuf_vs_bytes"
harness = false
required-features = ["test-util"]
[[bench]]
name = "global_pool"
harness = false
[[bench]]
name = "view"
harness = false
required-features = ["test-util"]
[[bench]]
name = "view_cg"
harness = false
required-features = ["test-util"]
[[bench]]
name = "buf_cg"
harness = false
required-features = ["test-util"]
[[bench]]
name = "global_pool_cg"
harness = false
[[example]]
name = "bb_has_memory_forwarding"
required-features = ["test-util"]
[[example]]
name = "bb_has_memory_optimizing"
required-features = ["test-util"]
[[example]]
name = "bb_static_data"
required-features = ["test-util"]