pub struct TokenFnSpec;Implementations§
Source§impl TokenFnSpec
impl TokenFnSpec
Sourcepub const fn spec_xdr_allowance() -> [u8; 468]
pub const fn spec_xdr_allowance() -> [u8; 468]
Returns the allowance for spender to transfer from from.
The amount returned is the amount that spender is allowed to transfer out of from’s balance. When the spender transfers amounts, the allowance will be reduced by the amount transferred.
§Arguments
from- The address holding the balance of tokens to be drawn from.spender- The address spending the tokens held byfrom.
Source§impl TokenFnSpec
impl TokenFnSpec
Sourcepub const fn spec_xdr_approve() -> [u8; 1044]
pub const fn spec_xdr_approve() -> [u8; 1044]
Set the allowance by amount for spender to transfer/burn from
from.
The amount set is the amount that spender is approved to transfer out of from’s balance. The spender will be allowed to transfer amounts, and when an amount is transferred the allowance will be reduced by the amount transferred.
§Arguments
from- The address holding the balance of tokens to be drawn from.spender- The address being authorized to spend the tokens held byfrom.amount- The tokens to be made available tospender.expiration_ledger- The ledger number where this allowance expires. Cannot be less than the current ledger number unless the amount is being set to 0. An expired entry (where expiration_ledger < the current ledger number) should be treated as a 0 amount allowance.
§Events
Emits an event with topics ["approve", from: Address, spender: Address], data = [amount: i128, expiration_ledger: u32]
Source§impl TokenFnSpec
impl TokenFnSpec
Sourcepub const fn spec_xdr_balance() -> [u8; 200]
pub const fn spec_xdr_balance() -> [u8; 200]
Returns the balance of id.
§Arguments
id- The address for which a balance is being queried. If the address has no existing balance, returns 0.
Source§impl TokenFnSpec
impl TokenFnSpec
Sourcepub const fn spec_xdr_transfer() -> [u8; 596]
pub const fn spec_xdr_transfer() -> [u8; 596]
Transfer amount from from to to.
§Arguments
from- The address holding the balance of tokens which will be withdrawn from.to- The address which will receive the transferred tokens.amount- The amount of tokens to be transferred.
§Events
Emits an event with:
- topics
["transfer", from: Address, to: Address] - data
{ to_muxed_id: Option<u64>, amount: i128 }: Map
Legacy implementations may emit an event with:
- topics
["transfer", from: Address, to: Address] - data
amount: i128
Source§impl TokenFnSpec
impl TokenFnSpec
Sourcepub const fn spec_xdr_transfer_from() -> [u8; 928]
pub const fn spec_xdr_transfer_from() -> [u8; 928]
Transfer amount from from to to, consuming the allowance that
spender has on from’s balance. Authorized by spender
(spender.require_auth()).
The spender will be allowed to transfer the amount from from’s balance if the amount is less than or equal to the allowance that the spender has on the from’s balance. The spender’s allowance on from’s balance will be reduced by the amount.
§Arguments
spender- The address authorizing the transfer, and having its allowance consumed during the transfer.from- The address holding the balance of tokens which will be withdrawn from.to- The address which will receive the transferred tokens.amount- The amount of tokens to be transferred.
§Events
Emits an event with topics ["transfer", from: Address, to: Address], data = amount: i128
Source§impl TokenFnSpec
impl TokenFnSpec
Sourcepub const fn spec_xdr_burn() -> [u8; 416]
pub const fn spec_xdr_burn() -> [u8; 416]
Burn amount from from.
Reduces from’s balance by the amount, without transferring the balance to another holder’s balance.
§Arguments
from- The address holding the balance of tokens which will be burned from.amount- The amount of tokens to be burned.
§Events
Emits an event with topics ["burn", from: Address], data = amount: i128
Source§impl TokenFnSpec
impl TokenFnSpec
Sourcepub const fn spec_xdr_burn_from() -> [u8; 820]
pub const fn spec_xdr_burn_from() -> [u8; 820]
Burn amount from from, consuming the allowance of spender.
Reduces from’s balance by the amount, without transferring the balance to another holder’s balance.
The spender will be allowed to burn the amount from from’s balance, if the amount is less than or equal to the allowance that the spender has on the from’s balance. The spender’s allowance on from’s balance will be reduced by the amount.
§Arguments
spender- The address authorizing the burn, and having its allowance consumed during the burn.from- The address holding the balance of tokens which will be burned from.amount- The amount of tokens to be burned.
§Events
Emits an event with topics ["burn", from: Address], data = amount: i128
Source§impl TokenFnSpec
impl TokenFnSpec
Sourcepub const fn spec_xdr_decimals() -> [u8; 160]
pub const fn spec_xdr_decimals() -> [u8; 160]
Returns the number of decimals used to represent amounts of this token.
§Panics
If the contract has not yet been initialized.
Source§impl TokenFnSpec
impl TokenFnSpec
Sourcepub const fn spec_xdr_name() -> [u8; 120]
pub const fn spec_xdr_name() -> [u8; 120]
Source§impl TokenFnSpec
impl TokenFnSpec
Sourcepub const fn spec_xdr_symbol() -> [u8; 124]
pub const fn spec_xdr_symbol() -> [u8; 124]
Auto Trait Implementations§
impl Freeze for TokenFnSpec
impl RefUnwindSafe for TokenFnSpec
impl Send for TokenFnSpec
impl Sync for TokenFnSpec
impl Unpin for TokenFnSpec
impl UnsafeUnpin for TokenFnSpec
impl UnwindSafe for TokenFnSpec
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<T, U, V, W, E, C> Compare<(T, U, V, W)> for C
impl<T, U, V, W, E, C> Compare<(T, U, V, W)> for C
type Error = E
fn compare( &self, a: &(T, U, V, W), b: &(T, U, V, W), ) -> Result<Ordering, <C as Compare<(T, U, V, W)>>::Error>
Source§impl<T, U, V, W, X, E, C> Compare<(T, U, V, W, X)> for C
impl<T, U, V, W, X, E, C> Compare<(T, U, V, W, X)> for C
type Error = E
fn compare( &self, a: &(T, U, V, W, X), b: &(T, U, V, W, X), ) -> Result<Ordering, <C as Compare<(T, U, V, W, X)>>::Error>
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more