pub enum Call<T: Config>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,{
set_currency {
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId,
},
add_currency {
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId,
price: Price,
},
remove_currency {
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId,
},
// some variants omitted
}
Expand description
Contains one variant per dispatchable that can be called by an extrinsic.
Variants§
set_currency
Fields
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId
Set selected currency for given account.
This allows to set a currency for an account in which all transaction fees will be paid. Account balance cannot be zero.
Chosen currency must be in the list of accepted currencies.
When currency is set, fixed fee is withdrawn from the account to pay for the currency change
Emits CurrencySet
event when successful.
add_currency
Fields
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId
Add a currency to the list of accepted currencies.
Only member can perform this action.
Currency must not be already accepted. Core asset id cannot be explicitly added.
Emits CurrencyAdded
event when successful.
remove_currency
Fields
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId
Remove currency from the list of supported currencies Only selected members can perform this action
Core asset cannot be removed.
Emits CurrencyRemoved
when successful.
Implementations§
source§impl<T: Config> Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
impl<T: Config> Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
sourcepub fn new_call_variant_set_currency(
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId
) -> Self
pub fn new_call_variant_set_currency(
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId
) -> Self
Create a call with the variant set_currency
.
sourcepub fn new_call_variant_add_currency(
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId,
price: Price
) -> Self
pub fn new_call_variant_add_currency(
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId,
price: Price
) -> Self
Create a call with the variant add_currency
.
sourcepub fn new_call_variant_remove_currency(
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId
) -> Self
pub fn new_call_variant_remove_currency(
currency: <<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId
) -> Self
Create a call with the variant remove_currency
.
Trait Implementations§
source§impl<T: Config> Clone for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
impl<T: Config> Clone for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
source§impl<T: Config> Debug for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
impl<T: Config> Debug for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
source§impl<T: Config> Decode for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
impl<T: Config> Decode for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
source§impl<T: Config> Encode for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
impl<T: Config> Encode for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
source§fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
fn encode_to<__CodecOutputEdqy: Output + ?Sized>(
&self,
__codec_dest_edqy: &mut __CodecOutputEdqy
)
source§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
source§fn using_encoded<R, F>(&self, f: F) -> Rwhere
F: FnOnce(&[u8]) -> R,
fn using_encoded<R, F>(&self, f: F) -> Rwhere
F: FnOnce(&[u8]) -> R,
source§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
source§impl<T: Config> GetCallName for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
impl<T: Config> GetCallName for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
source§fn get_call_name(&self) -> &'static str
fn get_call_name(&self) -> &'static str
source§fn get_call_names() -> &'static [&'static str]
fn get_call_names() -> &'static [&'static str]
source§impl<T: Config> GetDispatchInfo for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
impl<T: Config> GetDispatchInfo for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
source§fn get_dispatch_info(&self) -> DispatchInfo
fn get_dispatch_info(&self) -> DispatchInfo
DispatchInfo
, containing relevant information of this dispatch. Read moresource§impl<T: Config> PartialEq<Call<T>> for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
impl<T: Config> PartialEq<Call<T>> for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
source§impl<T> TypeInfo for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
PhantomData<(T,)>: TypeInfo + 'static,
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId: TypeInfo + 'static,
T: Config + 'static,
impl<T> TypeInfo for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
PhantomData<(T,)>: TypeInfo + 'static,
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId: TypeInfo + 'static,
T: Config + 'static,
source§impl<T: Config> UnfilteredDispatchable for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
impl<T: Config> UnfilteredDispatchable for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
§type Origin = <T as Config>::Origin
type Origin = <T as Config>::Origin
frame_system::Config::Origin
).source§fn dispatch_bypass_filter(
self,
origin: Self::Origin
) -> DispatchResultWithPostInfo
fn dispatch_bypass_filter(
self,
origin: Self::Origin
) -> DispatchResultWithPostInfo
impl<T: Config> EncodeLike<Call<T>> for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
impl<T: Config> Eq for Call<T>where
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::Balance: FixedPointOperand,
Auto Trait Implementations§
impl<T> RefUnwindSafe for Call<T>where
T: RefUnwindSafe,
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId: RefUnwindSafe,
impl<T> Send for Call<T>where
T: Send,
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId: Send,
impl<T> Sync for Call<T>where
T: Sync,
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId: Sync,
impl<T> Unpin for Call<T>where
T: Unpin,
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId: Unpin,
impl<T> UnwindSafe for Call<T>where
T: UnwindSafe,
<<T as Config>::Currencies as MultiCurrency<<T as Config>::AccountId>>::CurrencyId: UnwindSafe,
Blanket Implementations§
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
source§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere
T: Decode,
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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
. Read moresource§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read moresource§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. Read moresource§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. Read moresource§impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.source§impl<T> FmtForward for T
impl<T> FmtForward for T
source§fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
fn fmt_binary(self) -> FmtBinary<Self>where
Self: Binary,
source§fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
fn fmt_display(self) -> FmtDisplay<Self>where
Self: Display,
source§fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
fn fmt_lower_exp(self) -> FmtLowerExp<Self>where
Self: LowerExp,
source§fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
fn fmt_lower_hex(self) -> FmtLowerHex<Self>where
Self: LowerHex,
source§fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
fn fmt_pointer(self) -> FmtPointer<Self>where
Self: Pointer,
source§fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
fn fmt_upper_exp(self) -> FmtUpperExp<Self>where
Self: UpperExp,
source§fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
fn fmt_upper_hex(self) -> FmtUpperHex<Self>where
Self: UpperHex,
source§impl<T> Hashable for Twhere
T: Codec,
impl<T> Hashable for Twhere
T: Codec,
fn blake2_128(&self) -> [u8; 16]
fn blake2_256(&self) -> [u8; 32]
fn blake2_128_concat(&self) -> Vec<u8, Global> ⓘ
fn twox_128(&self) -> [u8; 16]
fn twox_256(&self) -> [u8; 32]
fn twox_64_concat(&self) -> Vec<u8, Global> ⓘ
fn identity(&self) -> Vec<u8, Global> ⓘ
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, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
source§impl<T> Pipe for Twhere
T: ?Sized,
impl<T> Pipe for Twhere
T: ?Sized,
source§fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
fn pipe<R>(self, func: impl FnOnce(Self) -> R) -> Rwhere
Self: Sized,
source§fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref<'a, R>(&'a self, func: impl FnOnce(&'a Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moresource§fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
fn pipe_ref_mut<'a, R>(&'a mut self, func: impl FnOnce(&'a mut Self) -> R) -> Rwhere
R: 'a,
self
and passes that borrow into the pipe function. Read moresource§fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow<'a, B, R>(&'a self, func: impl FnOnce(&'a B) -> R) -> Rwhere
Self: Borrow<B>,
B: 'a + ?Sized,
R: 'a,
source§fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
fn pipe_borrow_mut<'a, B, R>(
&'a mut self,
func: impl FnOnce(&'a mut B) -> R
) -> Rwhere
Self: BorrowMut<B>,
B: 'a + ?Sized,
R: 'a,
source§fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_ref<'a, U, R>(&'a self, func: impl FnOnce(&'a U) -> R) -> Rwhere
Self: AsRef<U>,
U: 'a + ?Sized,
R: 'a,
self
, then passes self.as_ref()
into the pipe function.source§fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
fn pipe_as_mut<'a, U, R>(&'a mut self, func: impl FnOnce(&'a mut U) -> R) -> Rwhere
Self: AsMut<U>,
U: 'a + ?Sized,
R: 'a,
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
T
. Read moresource§impl<T> Tap for T
impl<T> Tap for T
source§fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
Borrow<B>
of a value. Read moresource§fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
BorrowMut<B>
of a value. Read moresource§fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
AsRef<R>
view of a value. Read moresource§fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
AsMut<R>
view of a value. Read moresource§fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
fn tap_deref<T>(self, func: impl FnOnce(&T)) -> Selfwhere
Self: Deref<Target = T>,
T: ?Sized,
Deref::Target
of a value. Read moresource§fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
fn tap_deref_mut<T>(self, func: impl FnOnce(&mut T)) -> Selfwhere
Self: DerefMut<Target = T> + Deref,
T: ?Sized,
Deref::Target
of a value. Read moresource§fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
fn tap_dbg(self, func: impl FnOnce(&Self)) -> Self
.tap()
only in debug builds, and is erased in release builds.source§fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
fn tap_mut_dbg(self, func: impl FnOnce(&mut Self)) -> Self
.tap_mut()
only in debug builds, and is erased in release
builds. Read moresource§fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
fn tap_borrow_dbg<B>(self, func: impl FnOnce(&B)) -> Selfwhere
Self: Borrow<B>,
B: ?Sized,
.tap_borrow()
only in debug builds, and is erased in release
builds. Read moresource§fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
fn tap_borrow_mut_dbg<B>(self, func: impl FnOnce(&mut B)) -> Selfwhere
Self: BorrowMut<B>,
B: ?Sized,
.tap_borrow_mut()
only in debug builds, and is erased in release
builds. Read moresource§fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
fn tap_ref_dbg<R>(self, func: impl FnOnce(&R)) -> Selfwhere
Self: AsRef<R>,
R: ?Sized,
.tap_ref()
only in debug builds, and is erased in release
builds. Read moresource§fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
fn tap_ref_mut_dbg<R>(self, func: impl FnOnce(&mut R)) -> Selfwhere
Self: AsMut<R>,
R: ?Sized,
.tap_ref_mut()
only in debug builds, and is erased in release
builds. Read moresource§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from
.source§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T
.