Struct KeyHash
pub struct KeyHash(pub [u8; 32]);Expand description
A hashed key used to index a JellyfishMerkleTree.
§🚨 Danger 🚨
ics23 non-existence proofs require that all key preimages are non-empty. If you
plan to use ics23 non-existence proofs, you must ensure that keys are non-empty
before creating KeyHashes.
The JellyfishMerkleTree only stores key hashes, not full keys.
Tuple Fields§
§0: [u8; 32]Implementations§
Trait Implementations§
§impl BorshDeserialize for KeyHash
impl BorshDeserialize for KeyHash
fn deserialize_reader<__R>(reader: &mut __R) -> Result<KeyHash, Error>where
__R: Read,
§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.
§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,
§impl<'de> Deserialize<'de> for KeyHash
impl<'de> Deserialize<'de> for KeyHash
§fn deserialize<__D>(
__deserializer: __D,
) -> Result<KeyHash, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<KeyHash, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
§impl Ord for KeyHash
impl Ord for KeyHash
§impl PartialOrd for KeyHash
impl PartialOrd for KeyHash
§impl Serialize for KeyHash
impl Serialize for KeyHash
§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl Copy for KeyHash
impl Eq for KeyHash
impl StructuralPartialEq for KeyHash
Auto Trait Implementations§
impl Freeze for KeyHash
impl RefUnwindSafe for KeyHash
impl Send for KeyHash
impl Sync for KeyHash
impl Unpin for KeyHash
impl UnsafeUnpin for KeyHash
impl UnwindSafe for KeyHash
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,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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