pub struct TokenId {
pub shard: u64,
pub realm: u64,
pub num: u64,
pub checksum: Option<Checksum>,
}
Expand description
The unique identifier for a token on Hedera.
Fields§
§shard: u64
A non-negative number identifying the shard containing this token.
realm: u64
A non-negative number identifying the realm within the shard containing this token.
num: u64
A non-negative number identifying the entity within the realm containing this token.
checksum: Option<Checksum>
A checksum if the token ID was read from a user inputted string which inclueded a checksum
Implementations§
source§impl TokenId
impl TokenId
sourcepub const fn new(shard: u64, realm: u64, num: u64) -> Self
pub const fn new(shard: u64, realm: u64, num: u64) -> Self
Create a TokenId
from the given shard
, realm
, and num
.
sourcepub fn from_bytes(bytes: &[u8]) -> Result<Self>
pub fn from_bytes(bytes: &[u8]) -> Result<Self>
Create a new TokenId
from protobuf-encoded bytes
.
§Errors
Error::FromProtobuf
if decoding the bytes fails to produce a valid protobuf.Error::FromProtobuf
if decoding the protobuf fails.
sourcepub fn from_solidity_address(address: &str) -> Result<Self>
pub fn from_solidity_address(address: &str) -> Result<Self>
Create a TokenId
from a solidity address.
§Errors
Error::BasicParse
ifaddress
cannot be parsed as a solidity address.
sourcepub fn to_solidity_address(&self) -> Result<String>
pub fn to_solidity_address(&self) -> Result<String>
Convert self
into a solidity address
.
§Errors
Error::BasicParse
ifself.shard
is larger thanu32::MAX
.
sourcepub fn to_string_with_checksum(&self, client: &Client) -> String
pub fn to_string_with_checksum(&self, client: &Client) -> String
Convert self
to a string with a valid checksum.
sourcepub fn validate_checksum(&self, client: &Client) -> Result<()>
pub fn validate_checksum(&self, client: &Client) -> Result<()>
Validates self.checksum
(if it exists) for client
.
§Errors
Error::BadEntityId
if there is a checksum, and the checksum is not valid for the client’sledger_id
.
Trait Implementations§
source§impl PartialEq for TokenId
impl PartialEq for TokenId
impl Copy for TokenId
impl Eq for TokenId
impl StructuralPartialEq for TokenId
Auto Trait Implementations§
impl Freeze for TokenId
impl RefUnwindSafe for TokenId
impl Send for TokenId
impl Sync for TokenId
impl Unpin for TokenId
impl UnwindSafe for TokenId
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
Mutably borrows from an owned value. Read more
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
Compare self to
key
and return true
if they are equal.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
Compare self to
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request