Struct gprimitives::H160
source · #[repr(C)]pub struct H160(pub [u8; 20]);Expand description
Fixed-size uninterpreted hash type with 20 bytes (160 bits) size.
Tuple Fields§
§0: [u8; 20]Implementations§
source§impl 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_mut(&mut self) -> &mut [u8]
pub fn as_bytes_mut(&mut self) -> &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])
sourcepub fn from_slice(src: &[u8]) -> H160
pub fn from_slice(src: &[u8]) -> H160
Trait Implementations§
source§impl<'r> BitAndAssign<&'r H160> for H160
impl<'r> BitAndAssign<&'r H160> for H160
source§fn bitand_assign(&mut self, rhs: &'r H160)
fn bitand_assign(&mut self, rhs: &'r H160)
Performs the
&= operation. Read moresource§impl BitAndAssign for H160
impl BitAndAssign for H160
source§fn bitand_assign(&mut self, rhs: H160)
fn bitand_assign(&mut self, rhs: H160)
Performs the
&= operation. Read moresource§impl<'r> BitOrAssign<&'r H160> for H160
impl<'r> BitOrAssign<&'r H160> for H160
source§fn bitor_assign(&mut self, rhs: &'r H160)
fn bitor_assign(&mut self, rhs: &'r H160)
Performs the
|= operation. Read moresource§impl BitOrAssign for H160
impl BitOrAssign for H160
source§fn bitor_assign(&mut self, rhs: H160)
fn bitor_assign(&mut self, rhs: H160)
Performs the
|= operation. Read moresource§impl<'r> BitXorAssign<&'r H160> for H160
impl<'r> BitXorAssign<&'r H160> for H160
source§fn bitxor_assign(&mut self, rhs: &'r H160)
fn bitxor_assign(&mut self, rhs: &'r H160)
Performs the
^= operation. Read moresource§impl BitXorAssign for H160
impl BitXorAssign for H160
source§fn bitxor_assign(&mut self, rhs: H160)
fn bitxor_assign(&mut self, rhs: H160)
Performs the
^= operation. Read moresource§impl Decode for H160
impl Decode for H160
source§fn decode<I>(input: &mut I) -> Result<H160, Error>where
I: Input,
fn decode<I>(input: &mut I) -> Result<H160, Error>where
I: Input,
Attempt to deserialise the value from input.
source§fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>,
) -> Result<DecodeFinished, Error>where
I: Input,
fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>,
) -> Result<DecodeFinished, Error>where
I: Input,
Attempt to deserialize the value from input into a pre-allocated piece of memory. Read more
source§impl Encode for H160
impl Encode for H160
source§fn using_encoded<R, F>(&self, f: F) -> R
fn using_encoded<R, F>(&self, f: F) -> R
Convert self to a slice and then invoke the given closure with it.
source§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
If possible give a hint of expected size of the encoding. Read more
source§fn encode_to<T>(&self, dest: &mut T)
fn encode_to<T>(&self, dest: &mut T)
Convert self to a slice and append it to the destination.
source§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
Calculates the encoded size. Read more
source§impl FromStr for H160
impl FromStr for H160
§type Err = FromHexError
type Err = FromHexError
The associated error which can be returned from parsing.
source§impl MaxEncodedLen for H160
impl MaxEncodedLen for H160
source§fn max_encoded_len() -> usize
fn max_encoded_len() -> usize
Upper bound, in bytes, of the maximum encoded size of this item.
source§impl Ord for H160
impl Ord for H160
source§impl PartialOrd for H160
impl PartialOrd for H160
impl Copy for H160
impl EncodeLike for H160
impl Eq for H160
Auto Trait Implementations§
impl Freeze for H160
impl RefUnwindSafe for H160
impl Send for H160
impl Sync for H160
impl Unpin for H160
impl UnwindSafe for H160
Blanket Implementations§
source§impl<T, U> AsByteSlice<T> for U
impl<T, U> AsByteSlice<T> for U
fn as_byte_slice(&self) -> &[u8]
source§impl<T, U> AsMutByteSlice<T> for U
impl<T, U> AsMutByteSlice<T> for U
fn as_mut_byte_slice(&mut self) -> &mut [u8]
source§impl<U> AsMutSliceOf for U
impl<U> AsMutSliceOf for U
fn as_mut_slice_of<T>(&mut self) -> Result<&mut [T], Error>where
T: FromByteSlice,
source§impl<U> AsSliceOf for U
impl<U> AsSliceOf for U
fn as_slice_of<T>(&self) -> Result<&[T], Error>where
T: FromByteSlice,
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§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)source§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)source§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere
T: Decode,
source§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>,
Encode the hex strict representing
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>,
Encode the hex strict representing
self into the result. Upper case
letters are used (e.g. F9B4CA)