pub struct Hash(/* private fields */);Expand description
A wrapper type for using a hash an internal key
Methods from Deref<Target = InternalKey<32>>§
pub fn as_slice(&self) -> &[u8] ⓘ
pub fn get_bit(&self, i: usize) -> bool
Sourcepub fn fork_height(&self, key: &InternalKey<N>) -> usize
pub fn fork_height(&self, key: &InternalKey<N>) -> usize
Treat InternalKey as a path in a tree fork height is the number of common bits(from higher to lower) of two InternalKeys
Sourcepub fn parent_path(&self, height: usize) -> Self
pub fn parent_path(&self, height: usize) -> Self
Treat InternalKey as a path in a tree return parent_path of self
Sourcepub fn copy_bits(&self, range: impl RangeBounds<usize>) -> Self
pub fn copy_bits(&self, range: impl RangeBounds<usize>) -> Self
Copy bits and return a new InternalKey
Trait Implementations§
Source§impl BorshDeserialize for Hash
impl BorshDeserialize for Hash
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 Hash
impl BorshSerialize for Hash
Source§impl Key<32> for Hash
impl Key<32> for Hash
Source§impl Ord for Hash
impl Ord for Hash
Source§impl PartialOrd for Hash
impl PartialOrd for Hash
impl Copy for Hash
impl Eq for Hash
impl StructuralPartialEq for Hash
Auto Trait Implementations§
impl Freeze for Hash
impl RefUnwindSafe for Hash
impl Send for Hash
impl Sync for Hash
impl Unpin for Hash
impl UnwindSafe for Hash
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> 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