pub enum Address {
Ed25519(Ed25519Address),
Alias(AliasAddress),
Nft(NftAddress),
}
Expand description
A generic address supporting different address kinds.
Variants§
Ed25519(Ed25519Address)
An Ed25519 address.
Alias(AliasAddress)
An alias address.
Nft(NftAddress)
An NFT address.
Implementations§
source§impl Address
impl Address
sourcepub fn is_ed25519(&self) -> bool
pub fn is_ed25519(&self) -> bool
Checks whether the address is an Ed25519Address
.
sourcepub fn as_ed25519(&self) -> &Ed25519Address
pub fn as_ed25519(&self) -> &Ed25519Address
Gets the address as an actual Ed25519Address
.
PANIC: do not call on a non-ed25519 address.
sourcepub fn is_alias(&self) -> bool
pub fn is_alias(&self) -> bool
Checks whether the address is an AliasAddress
.
sourcepub fn as_alias(&self) -> &AliasAddress
pub fn as_alias(&self) -> &AliasAddress
Gets the address as an actual AliasAddress
.
PANIC: do not call on a non-alias address.
sourcepub fn is_nft(&self) -> bool
pub fn is_nft(&self) -> bool
Checks whether the address is an NftAddress
.
sourcepub fn as_nft(&self) -> &NftAddress
pub fn as_nft(&self) -> &NftAddress
Gets the address as an actual NftAddress
.
PANIC: do not call on a non-nft address.
sourcepub fn try_from_bech32(address: impl AsRef<str>) -> Result<Address, Error>
pub fn try_from_bech32(address: impl AsRef<str>) -> Result<Address, Error>
Tries to create an Address
from a bech32 encoded string.
sourcepub fn is_valid_bech32(address: &str) -> bool
pub fn is_valid_bech32(address: &str) -> bool
Checks if an string is a valid bech32 encoded address.
sourcepub fn unlock(
&self,
unlock: &Unlock,
inputs: &[(&OutputId, &Output)],
context: &mut ValidationContext<'_>
) -> Result<(), ConflictReason>
pub fn unlock( &self, unlock: &Unlock, inputs: &[(&OutputId, &Output)], context: &mut ValidationContext<'_> ) -> Result<(), ConflictReason>
Trait Implementations§
source§impl AsRef<Address> for Bech32Address
impl AsRef<Address> for Bech32Address
source§impl From<&Address> for AddressDto
impl From<&Address> for AddressDto
source§fn from(value: &Address) -> AddressDto
fn from(value: &Address) -> AddressDto
source§impl From<Address> for AddressUnlockCondition
impl From<Address> for AddressUnlockCondition
source§fn from(original: Address) -> AddressUnlockCondition
fn from(original: Address) -> AddressUnlockCondition
source§impl From<Address> for GovernorAddressUnlockCondition
impl From<Address> for GovernorAddressUnlockCondition
source§fn from(original: Address) -> GovernorAddressUnlockCondition
fn from(original: Address) -> GovernorAddressUnlockCondition
source§impl From<Address> for ImmutableAliasAddressUnlockCondition
impl From<Address> for ImmutableAliasAddressUnlockCondition
source§fn from(original: Address) -> ImmutableAliasAddressUnlockCondition
fn from(original: Address) -> ImmutableAliasAddressUnlockCondition
source§impl From<Address> for IssuerFeature
impl From<Address> for IssuerFeature
source§fn from(original: Address) -> IssuerFeature
fn from(original: Address) -> IssuerFeature
source§impl From<Address> for SenderFeature
impl From<Address> for SenderFeature
source§fn from(original: Address) -> SenderFeature
fn from(original: Address) -> SenderFeature
source§impl From<Address> for StateControllerAddressUnlockCondition
impl From<Address> for StateControllerAddressUnlockCondition
source§fn from(original: Address) -> StateControllerAddressUnlockCondition
fn from(original: Address) -> StateControllerAddressUnlockCondition
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<Ed25519Address> for Address
impl From<Ed25519Address> for Address
source§fn from(original: Ed25519Address) -> Address
fn from(original: Ed25519Address) -> Address
source§impl From<NftAddress> for Address
impl From<NftAddress> for Address
source§fn from(original: NftAddress) -> Address
fn from(original: NftAddress) -> Address
source§impl Ord for Address
impl Ord for Address
source§impl Packable for Address
impl Packable for Address
§type UnpackError = Error
type UnpackError = Error
§type UnpackVisitor = <Ed25519Address as Packable>::UnpackVisitor
type UnpackVisitor = <Ed25519Address 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: &<Address as Packable>::UnpackVisitor
) -> Result<Address, UnpackError<<Address as Packable>::UnpackError, <U as Unpacker>::Error>>where
U: Unpacker,
fn unpack<U, const VERIFY: bool>(
unpacker: &mut U,
visitor: &<Address as Packable>::UnpackVisitor
) -> Result<Address, UnpackError<<Address 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 Address
impl PartialEq for Address
source§impl PartialOrd for Address
impl PartialOrd for Address
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 TryFrom<AddressDto> for Address
impl TryFrom<AddressDto> for Address
impl Copy for Address
impl Eq for Address
impl StructuralPartialEq for Address
Auto Trait Implementations§
impl Freeze for Address
impl RefUnwindSafe for Address
impl Send for Address
impl Sync for Address
impl Unpin for Address
impl UnwindSafe for Address
Blanket Implementations§
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<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> 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> 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.