#[repr(C)]pub struct H256(pub [u8; 32]);
Expand description
Fixed-size uninterpreted hash type with 32 bytes (256 bits) size.
Tuple Fields§
§0: [u8; 32]
Implementations§
source§impl H256
impl H256
sourcepub const fn repeat_byte(byte: u8) -> H256
pub const fn repeat_byte(byte: u8) -> H256
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; 32]
pub const fn as_fixed_bytes(&self) -> &[u8; 32]
Extracts a reference to the byte array containing the entire fixed hash.
sourcepub fn as_fixed_bytes_mut(&mut self) -> &mut [u8; 32]
pub fn as_fixed_bytes_mut(&mut self) -> &mut [u8; 32]
Extracts a reference to the byte array containing the entire fixed hash.
sourcepub const fn to_fixed_bytes(self) -> [u8; 32]
pub const fn to_fixed_bytes(self) -> [u8; 32]
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]) -> H256
pub fn from_slice(src: &[u8]) -> H256
source§impl H256
impl H256
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) -> H256
pub fn from_low_u64_be(val: u64) -> H256
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) -> H256
pub fn from_low_u64_le(val: u64) -> H256
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) -> H256
pub fn from_low_u64_ne(val: u64) -> H256
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.
source§impl H256
impl H256
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§
source§impl<'r> BitAndAssign<&'r H256> for H256
impl<'r> BitAndAssign<&'r H256> for H256
source§fn bitand_assign(&mut self, rhs: &'r H256)
fn bitand_assign(&mut self, rhs: &'r H256)
&=
operation. Read moresource§impl BitAndAssign for H256
impl BitAndAssign for H256
source§fn bitand_assign(&mut self, rhs: H256)
fn bitand_assign(&mut self, rhs: H256)
&=
operation. Read moresource§impl<'r> BitOrAssign<&'r H256> for H256
impl<'r> BitOrAssign<&'r H256> for H256
source§fn bitor_assign(&mut self, rhs: &'r H256)
fn bitor_assign(&mut self, rhs: &'r H256)
|=
operation. Read moresource§impl BitOrAssign for H256
impl BitOrAssign for H256
source§fn bitor_assign(&mut self, rhs: H256)
fn bitor_assign(&mut self, rhs: H256)
|=
operation. Read moresource§impl<'r> BitXorAssign<&'r H256> for H256
impl<'r> BitXorAssign<&'r H256> for H256
source§fn bitxor_assign(&mut self, rhs: &'r H256)
fn bitxor_assign(&mut self, rhs: &'r H256)
^=
operation. Read moresource§impl BitXorAssign for H256
impl BitXorAssign for H256
source§fn bitxor_assign(&mut self, rhs: H256)
fn bitxor_assign(&mut self, rhs: H256)
^=
operation. Read moresource§impl Decode for H256
impl Decode for H256
source§fn decode<I>(input: &mut I) -> Result<H256, Error>where
I: Input,
fn decode<I>(input: &mut I) -> Result<H256, Error>where I: 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,
source§impl<'de> Deserialize<'de> for H256
impl<'de> Deserialize<'de> for H256
source§fn deserialize<D>(
deserializer: D
) -> Result<H256, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>( deserializer: D ) -> Result<H256, <D as Deserializer<'de>>::Error>where D: Deserializer<'de>,
source§impl Encode for H256
impl Encode for H256
source§fn using_encoded<R, F>(&self, f: F) -> Rwhere
F: FnOnce(&[u8]) -> R,
fn using_encoded<R, F>(&self, f: F) -> Rwhere F: FnOnce(&[u8]) -> R,
source§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
source§fn encode_to<T>(&self, dest: &mut T)where
T: Output + ?Sized,
fn encode_to<T>(&self, dest: &mut T)where T: Output + ?Sized,
source§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
source§impl MaxEncodedLen for H256
impl MaxEncodedLen for H256
source§fn max_encoded_len() -> usize
fn max_encoded_len() -> usize
source§impl Ord for H256
impl Ord for H256
source§impl PartialEq for H256
impl PartialEq for H256
source§impl PartialOrd for H256
impl PartialOrd for H256
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl PassByInner for H256
impl PassByInner for H256
source§fn into_inner(self) -> <H256 as PassByInner>::Inner
fn into_inner(self) -> <H256 as PassByInner>::Inner
self
and returns the inner type.source§fn from_inner(inner: <H256 as PassByInner>::Inner) -> H256
fn from_inner(inner: <H256 as PassByInner>::Inner) -> H256
Self
from the given inner
.source§impl Serialize for H256
impl Serialize for H256
source§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,
source§impl UncheckedFrom<H256> for AccountId32
impl UncheckedFrom<H256> for AccountId32
source§fn unchecked_from(h: H256) -> Self
fn unchecked_from(h: H256) -> Self
T
to Self. This is not guaranteed to be
whatever counts as a valid instance of T
and it’s up to the caller to
ensure that it makes sense.source§impl UncheckedFrom<H256> for Public
impl UncheckedFrom<H256> for Public
source§fn unchecked_from(x: H256) -> Self
fn unchecked_from(x: H256) -> Self
T
to Self. This is not guaranteed to be
whatever counts as a valid instance of T
and it’s up to the caller to
ensure that it makes sense.source§impl UncheckedFrom<H256> for Public
impl UncheckedFrom<H256> for Public
source§fn unchecked_from(x: H256) -> Self
fn unchecked_from(x: H256) -> Self
T
to Self. This is not guaranteed to be
whatever counts as a valid instance of T
and it’s up to the caller to
ensure that it makes sense.impl Copy for H256
impl EncodeLike for H256
impl Eq for H256
Auto Trait Implementations§
impl RefUnwindSafe for H256
impl Send for H256
impl Sync for H256
impl Unpin for H256
impl UnwindSafe for H256
Blanket Implementations§
§impl<T, U> AsByteSlice<T> for Uwhere
T: ToByteSlice,
U: AsRef<[T]> + ?Sized,
impl<T, U> AsByteSlice<T> for Uwhere T: ToByteSlice, U: AsRef<[T]> + ?Sized,
fn as_byte_slice(&self) -> &[u8] ⓘ
§impl<T, U> AsMutByteSlice<T> for Uwhere
T: ToMutByteSlice,
U: AsMut<[T]> + ?Sized,
impl<T, U> AsMutByteSlice<T> for Uwhere T: ToMutByteSlice, U: AsMut<[T]> + ?Sized,
fn as_mut_byte_slice(&mut self) -> &mut [u8] ⓘ
§impl<U> AsMutSliceOf for Uwhere
U: AsMut<[u8]> + ?Sized,
impl<U> AsMutSliceOf for Uwhere U: AsMut<[u8]> + ?Sized,
fn as_mut_slice_of<T>(&mut self) -> Result<&mut [T], Error>where T: FromByteSlice,
§impl<U> AsSliceOf for Uwhere
U: AsRef<[u8]> + ?Sized,
impl<U> AsSliceOf for Uwhere U: AsRef<[u8]> + ?Sized,
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
source§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere T: Decode,
source§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.source§impl<T> FromFFIValue for Twhere
T: PassBy,
impl<T> FromFFIValue for Twhere T: PassBy,
§type SelfInstance = T
type SelfInstance = T
Self
can be an unsized type, it needs to be represented by a sized type at the host.
This SelfInstance
is the sized type.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoFFIValue for Twhere
T: PassBy,
impl<T> IntoFFIValue for Twhere T: PassBy,
source§impl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,
source§impl<T> ToHex for Twhere
T: AsRef<[u8]>,
impl<T> ToHex for Twhere T: AsRef<[u8]>,
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
)source§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from
.