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§
§impl H256
impl H256
pub 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.
pub 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.
pub 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.
pub 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.
pub const fn to_fixed_bytes(self) -> [u8; 32]
pub const fn to_fixed_bytes(self) -> [u8; 32]
Returns the inner bytes array.
pub 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.
pub fn assign_from_slice(&mut self, src: &[u8])
pub fn assign_from_slice(&mut self, src: &[u8])
pub fn from_slice(src: &[u8]) -> H256
pub fn from_slice(src: &[u8]) -> H256
§impl H256
impl H256
Utilities using the byteorder crate.
pub 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.
pub 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.
pub 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.
pub 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
u64value is interpreted as big endian. - Ignores the most significant bits of the given value if the hash type has less than 8 bytes.
pub 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
u64value is interpreted as little endian. - Ignores the most significant bits of the given value if the hash type has less than 8 bytes.
pub 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
u64value is interpreted as native endian. - Ignores the most significant bits of the given value if the hash type has less than 8 bytes.
§impl H256
impl H256
Utilities using the rand crate.
pub 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.
pub fn randomize(&mut self)
pub fn randomize(&mut self)
Assign self to a cryptographically random value.
pub fn random_using<R>(rng: &mut R) -> H256where
R: Rng + ?Sized,
pub fn random_using<R>(rng: &mut R) -> H256where R: Rng + ?Sized,
Create a new hash with cryptographically random content using the given random number generator.
Trait Implementations§
source§impl AbiType for H256
impl AbiType for H256
source§fn param_type() -> ParamType
fn param_type() -> ParamType
source§fn minimum_size() -> usize
fn minimum_size() -> usize
§impl BigEndianHash for H256
impl BigEndianHash for H256
§impl<'r> BitAndAssign<&'r H256> for H256
impl<'r> BitAndAssign<&'r H256> for H256
§fn bitand_assign(&mut self, rhs: &'r H256)
fn bitand_assign(&mut self, rhs: &'r H256)
&= operation. Read more§impl BitAndAssign<H256> for H256
impl BitAndAssign<H256> for H256
§fn bitand_assign(&mut self, rhs: H256)
fn bitand_assign(&mut self, rhs: H256)
&= operation. Read more§impl<'r> BitOrAssign<&'r H256> for H256
impl<'r> BitOrAssign<&'r H256> for H256
§fn bitor_assign(&mut self, rhs: &'r H256)
fn bitor_assign(&mut self, rhs: &'r H256)
|= operation. Read more§impl BitOrAssign<H256> for H256
impl BitOrAssign<H256> for H256
§fn bitor_assign(&mut self, rhs: H256)
fn bitor_assign(&mut self, rhs: H256)
|= operation. Read more§impl<'r> BitXorAssign<&'r H256> for H256
impl<'r> BitXorAssign<&'r H256> for H256
§fn bitxor_assign(&mut self, rhs: &'r H256)
fn bitxor_assign(&mut self, rhs: &'r H256)
^= operation. Read more§impl BitXorAssign<H256> for H256
impl BitXorAssign<H256> for H256
§fn bitxor_assign(&mut self, rhs: H256)
fn bitxor_assign(&mut self, rhs: H256)
^= operation. Read more§impl Decode for H256
impl Decode for H256
§fn decode<I>(input: &mut I) -> Result<H256, Error>where
I: Input,
fn decode<I>(input: &mut I) -> Result<H256, Error>where I: Input,
§fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error>where I: Input,
§fn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
§impl<'de> Deserialize<'de> for H256
impl<'de> Deserialize<'de> for H256
§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>,
§impl Distribution<H256> for Standard
impl Distribution<H256> for Standard
§fn sample<R>(&self, rng: &mut R) -> H256where
R: Rng + ?Sized,
fn sample<R>(&self, rng: &mut R) -> H256where R: Rng + ?Sized,
T, using rng as the source of randomness.§impl Encode for H256
impl Encode for H256
§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,
§fn encode_to<T>(&self, dest: &mut T)where
T: Output + ?Sized,
fn encode_to<T>(&self, dest: &mut T)where T: Output + ?Sized,
§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
source§impl From<H256> for FilterBlockOption
impl From<H256> for FilterBlockOption
source§fn from(hash: H256) -> FilterBlockOption
fn from(hash: H256) -> FilterBlockOption
source§impl From<H256> for RecoveryMessage
impl From<H256> for RecoveryMessage
source§fn from(hash: H256) -> RecoveryMessage
fn from(hash: H256) -> RecoveryMessage
§impl<I> Index<I> for H256where
I: SliceIndex<[u8]>,
impl<I> Index<I> for H256where I: SliceIndex<[u8]>,
§impl MaxEncodedLen for H256
impl MaxEncodedLen for H256
§fn max_encoded_len() -> usize
fn max_encoded_len() -> usize
§impl Ord for H256
impl Ord for H256
source§impl<'a, P> PartialEq<H256> for PendingTransaction<'a, P>
impl<'a, P> PartialEq<H256> for PendingTransaction<'a, P>
§impl PartialOrd<H256> for H256
impl PartialOrd<H256> for H256
§fn partial_cmp(&self, other: &H256) -> Option<Ordering>
fn partial_cmp(&self, other: &H256) -> Option<Ordering>
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 more§impl Serialize for H256
impl Serialize for H256
§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 Tokenizable for H256
impl Tokenizable for H256
source§fn from_token(token: Token) -> Result<H256, InvalidOutputType>
fn from_token(token: Token) -> Result<H256, InvalidOutputType>
Token into expected type.source§fn into_token(self) -> Token
fn into_token(self) -> Token
impl AbiArrayType for H256
impl Copy for H256
impl EncodeLike<H256> for H256
impl Eq for H256
impl TokenizableItem 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,
§impl<T> Base32Len for Twhere
T: AsRef<[u8]>,
impl<T> Base32Len for Twhere T: AsRef<[u8]>,
§fn base32_len(&self) -> usize
fn base32_len(&self) -> usize
§impl<T> DecodeAll for Twhere
T: Decode,
impl<T> DecodeAll for Twhere T: Decode,
§fn decode_all(input: &mut &[u8]) -> Result<T, Error>
fn decode_all(input: &mut &[u8]) -> Result<T, Error>
Self and consume all of the given input data. Read more§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere T: Decode,
source§impl<T> Detokenize for Twhere
T: Tokenizable,
impl<T> Detokenize for Twhere T: Tokenizable,
source§fn from_tokens(tokens: Vec<Token, Global>) -> Result<T, InvalidOutputType>
fn from_tokens(tokens: Vec<Token, Global>) -> Result<T, InvalidOutputType>
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> 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> 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>
§impl<T> KeyedVec for Twhere
T: Codec,
impl<T> KeyedVec for Twhere T: Codec,
§impl<T> Pointable for T
impl<T> Pointable for T
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)