Struct ethereum_types::Bloom
source · Expand description
Bloom hash type with 256 bytes (2048 bits) size.
Tuple Fields§
§0: [u8; 256]
Implementations§
source§impl Bloom
impl Bloom
sourcepub const fn repeat_byte(byte: u8) -> Bloom
pub const fn repeat_byte(byte: u8) -> Bloom
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; 256]
pub const fn as_fixed_bytes(&self) -> &[u8; 256]
Extracts a reference to the byte array containing the entire fixed hash.
sourcepub fn as_fixed_bytes_mut(&mut self) -> &mut [u8; 256]
pub fn as_fixed_bytes_mut(&mut self) -> &mut [u8; 256]
Extracts a reference to the byte array containing the entire fixed hash.
sourcepub const fn to_fixed_bytes(self) -> [u8; 256]
pub const fn to_fixed_bytes(self) -> [u8; 256]
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]) -> Bloom
pub fn from_slice(src: &[u8]) -> Bloom
source§impl Bloom
impl Bloom
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) -> Bloom
pub fn from_low_u64_be(val: u64) -> Bloom
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) -> Bloom
pub fn from_low_u64_le(val: u64) -> Bloom
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) -> Bloom
pub fn from_low_u64_ne(val: u64) -> Bloom
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 Bloom
impl Bloom
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.
source§impl Bloom
impl Bloom
pub fn is_empty(&self) -> bool
pub fn contains_input(&self, input: Input<'_>) -> bool
pub fn contains_bloom<'a, B>(&self, bloom: B) -> boolwhere
BloomRef<'a>: From<B>,
pub fn accrue(&mut self, input: Input<'_>)
pub fn accrue_bloom<'a, B>(&mut self, bloom: B)where
BloomRef<'a>: From<B>,
pub fn data(&self) -> &[u8; 256]
Trait Implementations§
source§impl<'r> BitAndAssign<&'r Bloom> for Bloom
impl<'r> BitAndAssign<&'r Bloom> for Bloom
source§fn bitand_assign(&mut self, rhs: &'r Bloom)
fn bitand_assign(&mut self, rhs: &'r Bloom)
&=
operation. Read moresource§impl BitAndAssign<Bloom> for Bloom
impl BitAndAssign<Bloom> for Bloom
source§fn bitand_assign(&mut self, rhs: Bloom)
fn bitand_assign(&mut self, rhs: Bloom)
&=
operation. Read moresource§impl<'r> BitOrAssign<&'r Bloom> for Bloom
impl<'r> BitOrAssign<&'r Bloom> for Bloom
source§fn bitor_assign(&mut self, rhs: &'r Bloom)
fn bitor_assign(&mut self, rhs: &'r Bloom)
|=
operation. Read moresource§impl BitOrAssign<Bloom> for Bloom
impl BitOrAssign<Bloom> for Bloom
source§fn bitor_assign(&mut self, rhs: Bloom)
fn bitor_assign(&mut self, rhs: Bloom)
|=
operation. Read moresource§impl<'r> BitXorAssign<&'r Bloom> for Bloom
impl<'r> BitXorAssign<&'r Bloom> for Bloom
source§fn bitxor_assign(&mut self, rhs: &'r Bloom)
fn bitxor_assign(&mut self, rhs: &'r Bloom)
^=
operation. Read moresource§impl BitXorAssign<Bloom> for Bloom
impl BitXorAssign<Bloom> for Bloom
source§fn bitxor_assign(&mut self, rhs: Bloom)
fn bitxor_assign(&mut self, rhs: Bloom)
^=
operation. Read moresource§impl<'de> Deserialize<'de> for Bloom
impl<'de> Deserialize<'de> for Bloom
source§fn deserialize<D>(
deserializer: D
) -> Result<Bloom, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D
) -> Result<Bloom, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
source§impl Encodable for Bloom
impl Encodable for Bloom
source§fn rlp_append(&self, s: &mut RlpStream)
fn rlp_append(&self, s: &mut RlpStream)
source§impl Ord for Bloom
impl Ord for Bloom
source§impl PartialOrd<Bloom> for Bloom
impl PartialOrd<Bloom> for Bloom
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 Serialize for Bloom
impl Serialize for Bloom
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,
impl Copy for Bloom
impl Eq for Bloom
Auto Trait Implementations§
impl RefUnwindSafe for Bloom
impl Send for Bloom
impl Sync for Bloom
impl Unpin for Bloom
impl UnwindSafe for Bloom
Blanket Implementations§
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
) Read moresource§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
) Read more