Skip to main content

NodeSerializer

Trait NodeSerializer 

Source
pub trait NodeSerializer<N, T> {
    // Required methods
    fn nodes(&mut self, nodes: Vec<Link<N>>) -> Result<N, NodeBuilderError>;
    fn leaf(&mut self, entries: Vec<T>) -> Result<N, NodeBuilderError>;
    fn serialize(
        &mut self,
        max_block_size: usize,
        node: N,
    ) -> Result<Block, NodeBuilderError>;

    // Provided method
    fn item_size_hint(&self, item: &T) -> Option<usize> { ... }
}

Required Methods§

Source

fn nodes(&mut self, nodes: Vec<Link<N>>) -> Result<N, NodeBuilderError>

Source

fn leaf(&mut self, entries: Vec<T>) -> Result<N, NodeBuilderError>

Source

fn serialize( &mut self, max_block_size: usize, node: N, ) -> Result<Block, NodeBuilderError>

Provided Methods§

Source

fn item_size_hint(&self, item: &T) -> Option<usize>

Implementors§