pub struct LevelWiseResponse {
pub level: usize,
pub nodes: Vec<LevelNode>,
pub has_more_levels: bool,
}Expand description
Response containing nodes at a specific level.
Fields§
§level: usizeLevel these nodes are at.
nodes: Vec<LevelNode>Nodes at this level.
Limited to MAX_NODES_PER_LEVEL entries. Use is_valid() to check
bounds after deserialization from untrusted sources.
has_more_levels: boolWhether there are more levels below this one.
Implementations§
Source§impl LevelWiseResponse
impl LevelWiseResponse
Sourcepub fn new(level: usize, nodes: Vec<LevelNode>, has_more_levels: bool) -> Self
pub fn new(level: usize, nodes: Vec<LevelNode>, has_more_levels: bool) -> Self
Create a response with nodes.
Sourcepub fn node_count(&self) -> usize
pub fn node_count(&self) -> usize
Number of nodes at this level.
Sourcepub fn leaves(&self) -> impl Iterator<Item = &LevelNode>
pub fn leaves(&self) -> impl Iterator<Item = &LevelNode>
Get an iterator over leaf nodes at this level.
Sourcepub fn internal_nodes(&self) -> impl Iterator<Item = &LevelNode>
pub fn internal_nodes(&self) -> impl Iterator<Item = &LevelNode>
Get an iterator over internal nodes at this level.
Sourcepub fn internal_node_ids(&self) -> Vec<[u8; 32]>
pub fn internal_node_ids(&self) -> Vec<[u8; 32]>
Get IDs of all internal nodes (for next level request).
Trait Implementations§
Source§impl BorshDeserialize for LevelWiseResponse
impl BorshDeserialize for LevelWiseResponse
fn deserialize_reader<__R: Read>(reader: &mut __R) -> Result<Self, Error>
Source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes.
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl BorshSerialize for LevelWiseResponse
impl BorshSerialize for LevelWiseResponse
Source§impl Clone for LevelWiseResponse
impl Clone for LevelWiseResponse
Source§fn clone(&self) -> LevelWiseResponse
fn clone(&self) -> LevelWiseResponse
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for LevelWiseResponse
impl Debug for LevelWiseResponse
Source§impl PartialEq for LevelWiseResponse
impl PartialEq for LevelWiseResponse
impl StructuralPartialEq for LevelWiseResponse
Auto Trait Implementations§
impl Freeze for LevelWiseResponse
impl RefUnwindSafe for LevelWiseResponse
impl Send for LevelWiseResponse
impl Sync for LevelWiseResponse
impl Unpin for LevelWiseResponse
impl UnsafeUnpin for LevelWiseResponse
impl UnwindSafe for LevelWiseResponse
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§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more