Struct ethereum_types::H160
source · [−]Expand description
Fixed-size uninterpreted hash type with 20 bytes (160 bits) size.
Tuple Fields
0: [u8; 20]
Implementations
sourceimpl H160
impl H160
sourcepub const fn repeat_byte(byte: u8) -> H160
pub const fn repeat_byte(byte: u8) -> H160
Returns a new fixed hash where all bits are set to the given byte.
sourcepub fn as_bytes(&self) -> &[u8]ⓘNotable traits for &'_ [u8]impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
pub fn as_bytes(&self) -> &[u8]ⓘNotable traits for &'_ [u8]impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
Extracts a byte slice containing the entire fixed hash.
sourcepub fn as_bytes_mut(&mut self) -> &mut [u8]ⓘNotable traits for &'_ [u8]impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
pub fn as_bytes_mut(&mut self) -> &mut [u8]ⓘNotable traits for &'_ [u8]impl<'_> Read for &'_ [u8]impl<'_> Write for &'_ mut [u8]
Extracts a mutable byte slice containing the entire fixed hash.
sourcepub const fn as_fixed_bytes(&self) -> &[u8; 20]
pub const fn as_fixed_bytes(&self) -> &[u8; 20]
Extracts a reference to the byte array containing the entire fixed hash.
sourcepub fn as_fixed_bytes_mut(&mut self) -> &mut [u8; 20]
pub fn as_fixed_bytes_mut(&mut self) -> &mut [u8; 20]
Extracts a reference to the byte array containing the entire fixed hash.
sourcepub const fn to_fixed_bytes(self) -> [u8; 20]
pub const fn to_fixed_bytes(self) -> [u8; 20]
Returns the inner bytes array.
sourcepub fn as_mut_ptr(&mut self) -> *mut u8
pub fn as_mut_ptr(&mut self) -> *mut u8
Returns a mutable raw pointer to the value.
sourcepub fn assign_from_slice(&mut self, src: &[u8])
pub fn assign_from_slice(&mut self, src: &[u8])
sourceimpl H160
impl H160
Utilities using the byteorder
crate.
sourcepub fn to_low_u64_be(&self) -> u64
pub fn to_low_u64_be(&self) -> u64
Returns the lowest 8 bytes interpreted as big-endian.
Note
For hash type with less than 8 bytes the missing bytes are interpreted as being zero.
sourcepub fn to_low_u64_le(&self) -> u64
pub fn to_low_u64_le(&self) -> u64
Returns the lowest 8 bytes interpreted as little-endian.
Note
For hash type with less than 8 bytes the missing bytes are interpreted as being zero.
sourcepub fn to_low_u64_ne(&self) -> u64
pub fn to_low_u64_ne(&self) -> u64
Returns the lowest 8 bytes interpreted as native-endian.
Note
For hash type with less than 8 bytes the missing bytes are interpreted as being zero.
sourcepub fn from_low_u64_be(val: u64) -> H160
pub fn from_low_u64_be(val: u64) -> H160
Creates a new hash type from the given u64
value.
Note
- The given
u64
value is interpreted as big endian. - Ignores the most significant bits of the given value if the hash type has less than 8 bytes.
sourcepub fn from_low_u64_le(val: u64) -> H160
pub fn from_low_u64_le(val: u64) -> H160
Creates a new hash type from the given u64
value.
Note
- The given
u64
value is interpreted as little endian. - Ignores the most significant bits of the given value if the hash type has less than 8 bytes.
sourcepub fn from_low_u64_ne(val: u64) -> H160
pub fn from_low_u64_ne(val: u64) -> H160
Creates a new hash type from the given u64
value.
Note
- The given
u64
value is interpreted as native endian. - Ignores the most significant bits of the given value if the hash type has less than 8 bytes.
sourceimpl H160
impl H160
Utilities using the rand
crate.
sourcepub fn randomize_using<R>(&mut self, rng: &mut R) where
R: Rng + ?Sized,
pub fn randomize_using<R>(&mut self, rng: &mut R) where
R: Rng + ?Sized,
Assign self
to a cryptographically random value using the
given random number generator.
Trait Implementations
sourceimpl<'r> BitAndAssign<&'r H160> for H160
impl<'r> BitAndAssign<&'r H160> for H160
sourcepub fn bitand_assign(&mut self, rhs: &'r H160)
pub fn bitand_assign(&mut self, rhs: &'r H160)
Performs the &=
operation. Read more
sourceimpl BitAndAssign<H160> for H160
impl BitAndAssign<H160> for H160
sourcepub fn bitand_assign(&mut self, rhs: H160)
pub fn bitand_assign(&mut self, rhs: H160)
Performs the &=
operation. Read more
sourceimpl<'r> BitOrAssign<&'r H160> for H160
impl<'r> BitOrAssign<&'r H160> for H160
sourcepub fn bitor_assign(&mut self, rhs: &'r H160)
pub fn bitor_assign(&mut self, rhs: &'r H160)
Performs the |=
operation. Read more
sourceimpl BitOrAssign<H160> for H160
impl BitOrAssign<H160> for H160
sourcepub fn bitor_assign(&mut self, rhs: H160)
pub fn bitor_assign(&mut self, rhs: H160)
Performs the |=
operation. Read more
sourceimpl<'r> BitXorAssign<&'r H160> for H160
impl<'r> BitXorAssign<&'r H160> for H160
sourcepub fn bitxor_assign(&mut self, rhs: &'r H160)
pub fn bitxor_assign(&mut self, rhs: &'r H160)
Performs the ^=
operation. Read more
sourceimpl BitXorAssign<H160> for H160
impl BitXorAssign<H160> for H160
sourcepub fn bitxor_assign(&mut self, rhs: H160)
pub fn bitxor_assign(&mut self, rhs: H160)
Performs the ^=
operation. Read more
sourceimpl Decode for H160
impl Decode for H160
sourcepub fn decode<I>(input: &mut I) -> Result<H160, Error> where
I: Input,
pub fn decode<I>(input: &mut I) -> Result<H160, Error> where
I: Input,
Attempt to deserialise the value from input.
fn skip<I>(input: &mut I) -> Result<(), Error> where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error> where
I: Input,
Attempt to skip the encoded value from input. Read more
fn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
Returns the fixed encoded size of the type. Read more
sourceimpl<'de> Deserialize<'de> for H160
impl<'de> Deserialize<'de> for H160
sourcepub fn deserialize<D>(
deserializer: D
) -> Result<H160, <D as Deserializer<'de>>::Error> where
D: Deserializer<'de>,
pub fn deserialize<D>(
deserializer: D
) -> Result<H160, <D as Deserializer<'de>>::Error> where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl Encodable for H160
impl Encodable for H160
sourcepub fn rlp_append(&self, s: &mut RlpStream)
pub fn rlp_append(&self, s: &mut RlpStream)
Append a value to the stream
fn rlp_bytes(&self) -> BytesMut
fn rlp_bytes(&self) -> BytesMut
Get rlp-encoded bytes for this instance
sourceimpl Encode for H160
impl Encode for H160
sourcepub fn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R,
pub fn using_encoded<R, F>(&self, f: F) -> R where
F: FnOnce(&[u8]) -> R,
Convert self to a slice and then invoke the given closure with it.
fn encode_to<T>(&self, dest: &mut T) where
T: Output + ?Sized,
fn encode_to<T>(&self, dest: &mut T) where
T: Output + ?Sized,
Convert self to a slice and append it to the destination.
fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Calculates the encoded size. Read more
sourceimpl FromStr for H160
impl FromStr for H160
sourceimpl MaxEncodedLen for H160
impl MaxEncodedLen for H160
sourcepub fn max_encoded_len() -> usize
pub fn max_encoded_len() -> usize
Upper bound, in bytes, of the maximum encoded size of this item.
sourceimpl Ord for H160
impl Ord for H160
sourceimpl PartialOrd<H160> for H160
impl PartialOrd<H160> for H160
sourcepub fn partial_cmp(&self, other: &H160) -> Option<Ordering>
pub fn partial_cmp(&self, other: &H160) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
sourceimpl Serialize for H160
impl Serialize for H160
sourcepub fn serialize<S>(
&self,
serializer: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error> where
S: Serializer,
pub 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 H160
impl EncodeLike<H160> for H160
impl Eq for H160
Auto Trait Implementations
impl RefUnwindSafe for H160
impl Send for H160
impl Sync for H160
impl Unpin for H160
impl UnwindSafe for H160
Blanket Implementations
impl<U> AsMutSliceOf for U where
U: AsMut<[u8]> + ?Sized,
impl<U> AsMutSliceOf for U where
U: AsMut<[u8]> + ?Sized,
pub fn as_mut_slice_of<T>(&mut self) -> Result<&mut [T], Error> where
T: FromByteSlice,
impl<U> AsSliceOf for U where
U: AsRef<[u8]> + ?Sized,
impl<U> AsSliceOf for U where
U: AsRef<[u8]> + ?Sized,
pub fn as_slice_of<T>(&self) -> Result<&[T], Error> where
T: FromByteSlice,
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> DecodeLimit for T where
T: Decode,
impl<T> DecodeLimit for T where
T: Decode,
pub fn decode_all_with_depth_limit(
limit: u32,
input: &mut &[u8]
) -> Result<T, Error>
pub fn decode_all_with_depth_limit(
limit: u32,
input: &mut &[u8]
) -> Result<T, Error>
Decode Self
and consume all of the given input data. Read more
pub fn decode_with_depth_limit<I>(limit: u32, input: &mut I) -> Result<T, Error> where
I: Input,
pub fn decode_with_depth_limit<I>(limit: u32, input: &mut I) -> Result<T, Error> where
I: Input,
Decode Self
with the given maximum recursion depth and advance input
by the number of
bytes consumed. Read more
sourceimpl<T> ToHex for T where
T: AsRef<[u8]>,
impl<T> ToHex for T where
T: AsRef<[u8]>,
sourcepub fn encode_hex<U>(&self) -> U where
U: FromIterator<char>,
pub fn encode_hex<U>(&self) -> U where
U: FromIterator<char>,
Encode the hex strict representing self
into the result. Lower case
letters are used (e.g. f9b4ca
) Read more
sourcepub fn encode_hex_upper<U>(&self) -> U where
U: FromIterator<char>,
pub fn encode_hex_upper<U>(&self) -> U where
U: FromIterator<char>,
Encode the hex strict representing self
into the result. Upper case
letters are used (e.g. F9B4CA
) Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more