Struct identity_iota::iota::block::address::AliasAddress
source · pub struct AliasAddress(/* private fields */);
Expand description
An alias address.
Implementations§
source§impl AliasAddress
impl AliasAddress
sourcepub const KIND: u8 = 8u8
pub const KIND: u8 = 8u8
The Address
kind of an AliasAddress
.
sourcepub const LENGTH: usize = 32usize
pub const LENGTH: usize = 32usize
The length of an AliasAddress
.
sourcepub fn new(id: AliasId) -> AliasAddress
pub fn new(id: AliasId) -> AliasAddress
Creates a new AliasAddress
.
sourcepub fn alias_id(&self) -> &AliasId
pub fn alias_id(&self) -> &AliasId
Returns the AliasId
of an AliasAddress
.
sourcepub fn into_alias_id(self) -> AliasId
pub fn into_alias_id(self) -> AliasId
Consumes an AliasAddress
and returns its AliasId
.
Methods from Deref<Target = AliasId>§
Methods from Deref<Target = [u8; 32]>§
1.57.0 · sourcepub fn as_slice(&self) -> &[T]
pub fn as_slice(&self) -> &[T]
Returns a slice containing the entire array. Equivalent to &s[..]
.
1.77.0 · sourcepub fn each_ref(&self) -> [&T; N]
pub fn each_ref(&self) -> [&T; N]
Borrows each element and returns an array of references with the same
size as self
.
§Example
let floats = [3.1, 2.7, -1.0];
let float_refs: [&f64; 3] = floats.each_ref();
assert_eq!(float_refs, [&3.1, &2.7, &-1.0]);
This method is particularly useful if combined with other methods, like
map
. This way, you can avoid moving the original
array if its elements are not Copy
.
let strings = ["Ferris".to_string(), "♥".to_string(), "Rust".to_string()];
let is_ascii = strings.each_ref().map(|s| s.is_ascii());
assert_eq!(is_ascii, [true, false, true]);
// We can still access the original array: it has not been moved.
assert_eq!(strings.len(), 3);
sourcepub fn split_array_ref<const M: usize>(&self) -> (&[T; M], &[T])
🔬This is a nightly-only experimental API. (split_array
)
pub fn split_array_ref<const M: usize>(&self) -> (&[T; M], &[T])
split_array
)Divides one array reference into two at an index.
The first will contain all indices from [0, M)
(excluding
the index M
itself) and the second will contain all
indices from [M, N)
(excluding the index N
itself).
§Panics
Panics if M > N
.
§Examples
#![feature(split_array)]
let v = [1, 2, 3, 4, 5, 6];
{
let (left, right) = v.split_array_ref::<0>();
assert_eq!(left, &[]);
assert_eq!(right, &[1, 2, 3, 4, 5, 6]);
}
{
let (left, right) = v.split_array_ref::<2>();
assert_eq!(left, &[1, 2]);
assert_eq!(right, &[3, 4, 5, 6]);
}
{
let (left, right) = v.split_array_ref::<6>();
assert_eq!(left, &[1, 2, 3, 4, 5, 6]);
assert_eq!(right, &[]);
}
sourcepub fn rsplit_array_ref<const M: usize>(&self) -> (&[T], &[T; M])
🔬This is a nightly-only experimental API. (split_array
)
pub fn rsplit_array_ref<const M: usize>(&self) -> (&[T], &[T; M])
split_array
)Divides one array reference into two at an index from the end.
The first will contain all indices from [0, N - M)
(excluding
the index N - M
itself) and the second will contain all
indices from [N - M, N)
(excluding the index N
itself).
§Panics
Panics if M > N
.
§Examples
#![feature(split_array)]
let v = [1, 2, 3, 4, 5, 6];
{
let (left, right) = v.rsplit_array_ref::<0>();
assert_eq!(left, &[1, 2, 3, 4, 5, 6]);
assert_eq!(right, &[]);
}
{
let (left, right) = v.rsplit_array_ref::<2>();
assert_eq!(left, &[1, 2, 3, 4]);
assert_eq!(right, &[5, 6]);
}
{
let (left, right) = v.rsplit_array_ref::<6>();
assert_eq!(left, &[]);
assert_eq!(right, &[1, 2, 3, 4, 5, 6]);
}
sourcepub fn as_ascii(&self) -> Option<&[AsciiChar; N]>
🔬This is a nightly-only experimental API. (ascii_char
)
pub fn as_ascii(&self) -> Option<&[AsciiChar; N]>
ascii_char
)Converts this array of bytes into a array of ASCII characters,
or returns None
if any of the characters is non-ASCII.
§Examples
#![feature(ascii_char)]
#![feature(const_option)]
const HEX_DIGITS: [std::ascii::Char; 16] =
*b"0123456789abcdef".as_ascii().unwrap();
assert_eq!(HEX_DIGITS[1].as_str(), "1");
assert_eq!(HEX_DIGITS[10].as_str(), "a");
sourcepub unsafe fn as_ascii_unchecked(&self) -> &[AsciiChar; N]
🔬This is a nightly-only experimental API. (ascii_char
)
pub unsafe fn as_ascii_unchecked(&self) -> &[AsciiChar; N]
ascii_char
)Converts this array of bytes into a array of ASCII characters, without checking whether they’re valid.
§Safety
Every byte in the array must be in 0..=127
, or else this is UB.
Trait Implementations§
source§impl<__AsRefT> AsRef<__AsRefT> for AliasAddress
impl<__AsRefT> AsRef<__AsRefT> for AliasAddress
source§impl Clone for AliasAddress
impl Clone for AliasAddress
source§fn clone(&self) -> AliasAddress
fn clone(&self) -> AliasAddress
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for AliasAddress
impl Debug for AliasAddress
source§impl Deref for AliasAddress
impl Deref for AliasAddress
source§impl<'de> Deserialize<'de> for AliasAddress
impl<'de> Deserialize<'de> for AliasAddress
source§fn deserialize<D>(
deserializer: D
) -> Result<AliasAddress, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D
) -> Result<AliasAddress, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
source§impl Display for AliasAddress
impl Display for AliasAddress
source§impl From<&AliasAddress> for AliasAddressDto
impl From<&AliasAddress> for AliasAddressDto
source§fn from(value: &AliasAddress) -> AliasAddressDto
fn from(value: &AliasAddress) -> AliasAddressDto
source§impl From<&OutputId> for AliasAddress
impl From<&OutputId> for AliasAddress
source§fn from(output_id: &OutputId) -> AliasAddress
fn from(output_id: &OutputId) -> AliasAddress
source§impl From<AliasAddress> for Address
impl From<AliasAddress> for Address
source§fn from(original: AliasAddress) -> Address
fn from(original: AliasAddress) -> Address
source§impl From<AliasId> for AliasAddress
impl From<AliasId> for AliasAddress
source§fn from(original: AliasId) -> AliasAddress
fn from(original: AliasId) -> AliasAddress
source§impl FromStr for AliasAddress
impl FromStr for AliasAddress
source§impl Hash for AliasAddress
impl Hash for AliasAddress
source§impl Ord for AliasAddress
impl Ord for AliasAddress
source§fn cmp(&self, other: &AliasAddress) -> Ordering
fn cmp(&self, other: &AliasAddress) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl Packable for AliasAddress
impl Packable for AliasAddress
§type UnpackError = <AliasId as Packable>::UnpackError
type UnpackError = <AliasId as Packable>::UnpackError
§type UnpackVisitor = <AliasId as Packable>::UnpackVisitor
type UnpackVisitor = <AliasId as Packable>::UnpackVisitor
source§fn pack<P>(&self, packer: &mut P) -> Result<(), <P as Packer>::Error>where
P: Packer,
fn pack<P>(&self, packer: &mut P) -> Result<(), <P as Packer>::Error>where
P: Packer,
Packer
.source§fn unpack<U, const VERIFY: bool>(
unpacker: &mut U,
visitor: &<AliasAddress as Packable>::UnpackVisitor
) -> Result<AliasAddress, UnpackError<<AliasAddress as Packable>::UnpackError, <U as Unpacker>::Error>>where
U: Unpacker,
fn unpack<U, const VERIFY: bool>(
unpacker: &mut U,
visitor: &<AliasAddress as Packable>::UnpackVisitor
) -> Result<AliasAddress, UnpackError<<AliasAddress as Packable>::UnpackError, <U as Unpacker>::Error>>where
U: Unpacker,
Unpacker
. The VERIFY
generic parameter can be used to skip additional
syntactic checks.source§impl PartialEq for AliasAddress
impl PartialEq for AliasAddress
source§fn eq(&self, other: &AliasAddress) -> bool
fn eq(&self, other: &AliasAddress) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd for AliasAddress
impl PartialOrd for AliasAddress
source§fn partial_cmp(&self, other: &AliasAddress) -> Option<Ordering>
fn partial_cmp(&self, other: &AliasAddress) -> 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 moresource§impl Serialize for AliasAddress
impl Serialize for AliasAddress
source§fn serialize<S>(
&self,
s: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>(
&self,
s: S
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
source§impl TryFrom<AliasAddressDto> for AliasAddress
impl TryFrom<AliasAddressDto> for AliasAddress
source§fn try_from(
value: AliasAddressDto
) -> Result<AliasAddress, <AliasAddress as TryFrom<AliasAddressDto>>::Error>
fn try_from( value: AliasAddressDto ) -> Result<AliasAddress, <AliasAddress as TryFrom<AliasAddressDto>>::Error>
impl Copy for AliasAddress
impl Eq for AliasAddress
impl StructuralPartialEq for AliasAddress
Auto Trait Implementations§
impl Freeze for AliasAddress
impl RefUnwindSafe for AliasAddress
impl Send for AliasAddress
impl Sync for AliasAddress
impl Unpin for AliasAddress
impl UnwindSafe for AliasAddress
Blanket Implementations§
source§impl<T> Base32Len for T
impl<T> Base32Len for T
source§fn base32_len(&self) -> usize
fn base32_len(&self) -> usize
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> CheckBase32<Vec<u5>> for T
impl<T> CheckBase32<Vec<u5>> for T
source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.source§impl<T> FromJson for Twhere
T: for<'de> Deserialize<'de>,
impl<T> FromJson for Twhere
T: for<'de> Deserialize<'de>,
source§fn from_json(json: &(impl AsRef<str> + ?Sized)) -> Result<Self, Error>
fn from_json(json: &(impl AsRef<str> + ?Sized)) -> Result<Self, Error>
Self
from a string of JSON text.source§fn from_json_slice(json: &(impl AsRef<[u8]> + ?Sized)) -> Result<Self, Error>
fn from_json_slice(json: &(impl AsRef<[u8]> + ?Sized)) -> Result<Self, Error>
Self
from bytes of JSON text.source§fn from_json_value(json: Value) -> Result<Self, Error>
fn from_json_value(json: Value) -> Result<Self, Error>
Self
from a serde_json::Value
.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<P> PackableExt for Pwhere
P: Packable,
impl<P> PackableExt for Pwhere
P: Packable,
source§fn unpack_verified<T>(
bytes: T,
visitor: &<P as Packable>::UnpackVisitor
) -> Result<P, UnpackError<<P as Packable>::UnpackError, UnexpectedEOF>>
fn unpack_verified<T>( bytes: T, visitor: &<P as Packable>::UnpackVisitor ) -> Result<P, UnpackError<<P as Packable>::UnpackError, UnexpectedEOF>>
Unpacks this value from a type that implements [AsRef<[u8]>
].
source§fn unpack_unverified<T>(
bytes: T
) -> Result<P, UnpackError<<P as Packable>::UnpackError, UnexpectedEOF>>
fn unpack_unverified<T>( bytes: T ) -> Result<P, UnpackError<<P as Packable>::UnpackError, UnexpectedEOF>>
Unpacks this value from a type that implements [AsRef<[u8]>
] skipping some syntatical checks.
source§fn packed_len(&self) -> usize
fn packed_len(&self) -> usize
pack
.source§impl<T> ToBase32 for T
impl<T> ToBase32 for T
source§fn write_base32<W>(&self, writer: &mut W) -> Result<(), <W as WriteBase32>::Err>where
W: WriteBase32,
fn write_base32<W>(&self, writer: &mut W) -> Result<(), <W as WriteBase32>::Err>where
W: WriteBase32,
source§impl<T> ToBech32Ext for T
impl<T> ToBech32Ext for T
source§fn try_to_bech32(self, hrp: impl ConvertTo<Hrp>) -> Result<Bech32Address, Error>
fn try_to_bech32(self, hrp: impl ConvertTo<Hrp>) -> Result<Bech32Address, Error>
Try to encode this address to a bech32 string with the given Human Readable Part as prefix.
source§fn to_bech32(self, hrp: Hrp) -> Bech32Address
fn to_bech32(self, hrp: Hrp) -> Bech32Address
Encodes this address to a bech32 string with the given Human Readable Part as prefix.
source§fn to_bech32_unchecked(self, hrp: impl ConvertTo<Hrp>) -> Bech32Address
fn to_bech32_unchecked(self, hrp: impl ConvertTo<Hrp>) -> Bech32Address
Encodes this address to a bech32 string with the given Human Readable Part as prefix without checking validity.
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>,
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<T> ToJson for Twhere
T: Serialize,
impl<T> ToJson for Twhere
T: Serialize,
source§fn to_json_value(&self) -> Result<Value, Error>
fn to_json_value(&self) -> Result<Value, Error>
self
as a serde_json::Value
.