#[non_exhaustive]pub struct Metadata {
pub max_length: usize,
pub max_depth: usize,
pub count: NonZero<usize>,
pub max_bits: u32,
}
Expand description
Metadata about a TreeKey
namespace.
Metadata includes paths that may be crate::Traversal::Absent
at runtime.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.max_length: usize
The maximum length of a path in bytes.
This is the exact maximum of the length of the concatenation of the node names
in a crate::Path
excluding the separators. See Self::max_length()
for
the maximum length including separators.
max_depth: usize
The maximum key depth.
This is equal to the exact maximum number of path hierarchy separators. It’s the exact maximum number of key indices.
count: NonZero<usize>
The exact total number of keys.
max_bits: u32
The maximum number of bits (see crate::Packed
)
Implementations§
Trait Implementations§
source§impl<'de> Deserialize<'de> for Metadata
impl<'de> Deserialize<'de> for Metadata
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Copy for Metadata
impl Eq for Metadata
impl StructuralPartialEq for Metadata
Auto Trait Implementations§
impl Freeze for Metadata
impl RefUnwindSafe for Metadata
impl Send for Metadata
impl Sync for Metadata
impl Unpin for Metadata
impl UnwindSafe for Metadata
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit
)