use crate::traits::{Branch, Data, Leaf};
use crate::Array;
#[non_exhaustive]
pub struct TreeCell<'keys, NodeType, const N: usize> {
pub location: Array<N>,
pub keys: &'keys [Array<N>],
pub node: NodeType,
pub depth: usize,
}
impl<'keys, NodeType, const N: usize> TreeCell<'keys, NodeType, N> {
#[inline]
pub const fn new<BranchType: Branch<N>, LeafType: Leaf<N>, DataType: Data>(
location: Array<N>,
keys: &'keys [Array<N>],
node: NodeType,
depth: usize,
) -> Self {
Self {
location,
keys,
node,
depth,
}
}
}