pub struct MerkleHashOrchard(/* private fields */);
Expand description
A node in the Orchard note commitment tree.
Implementations§
Source§impl MerkleHashOrchard
impl MerkleHashOrchard
Sourcepub fn new(data: [u8; 32]) -> Self
pub fn new(data: [u8; 32]) -> Self
Creates a new instance from a fixed-size byte array.
This is the primary constructor when you have an exact-sized array available.
Sourcepub fn len(&self) -> usize
pub fn len(&self) -> usize
Returns the length of this blob in bytes.
This will always return $size
for this type.
Sourcepub fn is_empty(&self) -> bool
pub fn is_empty(&self) -> bool
Returns true
if this blob contains no bytes.
This will always return false
for this type (unless $size
is 0).
Sourcepub fn to_vec(&self) -> Vec<u8> ⓘ
pub fn to_vec(&self) -> Vec<u8> ⓘ
Converts this blob to a Vec<u8>
, creating a copy of the data.
Sourcepub fn from_slice(data: &[u8]) -> Result<Self, TryFromSliceError>
pub fn from_slice(data: &[u8]) -> Result<Self, TryFromSliceError>
Creates an instance from a slice of bytes.
§Errors
Returns an error if the slice’s length doesn’t match the expected size ($size).
Sourcepub fn from_vec(data: Vec<u8>) -> Result<Self, TryFromSliceError>
pub fn from_vec(data: Vec<u8>) -> Result<Self, TryFromSliceError>
Creates an instance from a Vec<u8>
.
§Errors
Returns an error if the vector’s length doesn’t match the expected size ($size).
Sourcepub fn from_hex(hex: &str) -> Result<Self, HexParseError>
pub fn from_hex(hex: &str) -> Result<Self, HexParseError>
Parses an instance from a hex string.
Sourcepub fn from_reversed_hex(hex: &str) -> Result<Self, HexParseError>
pub fn from_reversed_hex(hex: &str) -> Result<Self, HexParseError>
Parses an instance from a hex string in reversed byte order, such as is used for transaction identifiers and block hashes.
Trait Implementations§
Source§impl AsRef<[u8]> for MerkleHashOrchard
impl AsRef<[u8]> for MerkleHashOrchard
Source§impl Clone for MerkleHashOrchard
impl Clone for MerkleHashOrchard
Source§impl Debug for MerkleHashOrchard
impl Debug for MerkleHashOrchard
Source§impl From<&[u8]> for MerkleHashOrchard
impl From<&[u8]> for MerkleHashOrchard
Source§impl From<&MerkleHashOrchard> for CBOR
impl From<&MerkleHashOrchard> for CBOR
Source§fn from(data: &MerkleHashOrchard) -> Self
fn from(data: &MerkleHashOrchard) -> Self
Source§impl From<MerkleHashOrchard> for CBOR
impl From<MerkleHashOrchard> for CBOR
Source§fn from(data: MerkleHashOrchard) -> Self
fn from(data: MerkleHashOrchard) -> Self
Source§impl From<MerkleHashOrchard> for Envelope
impl From<MerkleHashOrchard> for Envelope
Source§fn from(value: MerkleHashOrchard) -> Self
fn from(value: MerkleHashOrchard) -> Self
Source§impl Hash for MerkleHashOrchard
impl Hash for MerkleHashOrchard
Source§impl PartialEq for MerkleHashOrchard
impl PartialEq for MerkleHashOrchard
Source§impl TryFrom<CBOR> for MerkleHashOrchard
impl TryFrom<CBOR> for MerkleHashOrchard
Source§impl TryFrom<Envelope> for MerkleHashOrchard
impl TryFrom<Envelope> for MerkleHashOrchard
impl Copy for MerkleHashOrchard
impl Eq for MerkleHashOrchard
Auto Trait Implementations§
impl Freeze for MerkleHashOrchard
impl RefUnwindSafe for MerkleHashOrchard
impl Send for MerkleHashOrchard
impl Sync for MerkleHashOrchard
impl Unpin for MerkleHashOrchard
impl UnwindSafe for MerkleHashOrchard
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
Source§impl<T> CBORDecodable for T
impl<T> CBORDecodable for T
Source§impl<T> CBOREncodable for T
impl<T> CBOREncodable for T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> EnvelopeEncodable for T
impl<T> EnvelopeEncodable for T
Source§fn into_envelope(self) -> Envelope
fn into_envelope(self) -> Envelope
Converts the value into an envelope by using its Into<Envelope>
implementation.
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>
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>
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 moreSource§impl<T> ToHex for T
impl<T> ToHex for T
Source§fn encode_hex<U>(&self) -> Uwhere
U: FromIterator<char>,
fn encode_hex<U>(&self) -> Uwhere
U: FromIterator<char>,
self
into the result. Lower case
letters are used (e.g. f9b4ca
)Source§fn encode_hex_upper<U>(&self) -> Uwhere
U: FromIterator<char>,
fn encode_hex_upper<U>(&self) -> Uwhere
U: FromIterator<char>,
self
into the result. Upper case
letters are used (e.g. F9B4CA
)