[][src]Enum pallet_commodities::Call

pub enum Call<T: Trait<I>, I: Instance = DefaultInstance> {
    mint(T::AccountId, T::CommodityInfo),
    burn(CommodityId<T>),
    transfer(T::AccountIdCommodityId<T>),
    // some variants omitted
}

Dispatchable calls.

Each variant of this enum maps to a dispatchable function from the associated module.

Variants

mint(T::AccountId, T::CommodityInfo)

Create a new commodity from the provided commodity info and identify the specified account as its owner. The ID of the new commodity will be equal to the hash of the info that defines it, as calculated by the runtime system's hashing algorithm.

The dispatch origin for this call must be the commodity admin.

This function will throw an error if it is called with commodity info that describes an existing (duplicate) commodity, if the maximum number of this type of commodity already exists or if the specified owner already owns the maximum number of this type of commodity.

  • owner_account: Receiver of the commodity.
  • commodity_info: The information that defines the commodity.
burn(CommodityId<T>)

Destroy the specified commodity.

The dispatch origin for this call must be the commodity owner.

  • commodity_id: The hash (calculated by the runtime system's hashing algorithm) of the info that defines the commodity to destroy.
transfer(T::AccountIdCommodityId<T>)

Transfer a commodity to a new owner.

The dispatch origin for this call must be the commodity owner.

This function will throw an error if the new owner already owns the maximum number of this type of commodity.

  • dest_account: Receiver of the commodity.
  • commodity_id: The hash (calculated by the runtime system's hashing algorithm) of the info that defines the commodity to destroy.

Trait Implementations

impl<T: Trait<I>, I: Instance> Clone for Call<T, I>[src]

impl<T: Trait<I>, I: Instance> Debug for Call<T, I>[src]

impl<T: Trait<I>, I: Instance> Decode for Call<T, I> where
    T::AccountId: Decode,
    T::AccountId: Decode,
    T::CommodityInfo: Decode,
    T::CommodityInfo: Decode,
    CommodityId<T>: Decode,
    CommodityId<T>: Decode,
    T::AccountId: Decode,
    T::AccountId: Decode,
    CommodityId<T>: Decode,
    CommodityId<T>: Decode
[src]

impl<T: Trait<I>, I: Instance> Encode for Call<T, I> where
    T::AccountId: Encode,
    T::AccountId: Encode,
    T::CommodityInfo: Encode,
    T::CommodityInfo: Encode,
    CommodityId<T>: Encode,
    CommodityId<T>: Encode,
    T::AccountId: Encode,
    T::AccountId: Encode,
    CommodityId<T>: Encode,
    CommodityId<T>: Encode
[src]

impl<T: Trait<I>, I: Instance> EncodeLike<Call<T, I>> for Call<T, I> where
    T::AccountId: Encode,
    T::AccountId: Encode,
    T::CommodityInfo: Encode,
    T::CommodityInfo: Encode,
    CommodityId<T>: Encode,
    CommodityId<T>: Encode,
    T::AccountId: Encode,
    T::AccountId: Encode,
    CommodityId<T>: Encode,
    CommodityId<T>: Encode
[src]

impl<T: Trait<I>, I: Instance> Eq for Call<T, I>[src]

impl<T: Trait<I>, I: Instance> GetCallName for Call<T, I>[src]

impl<T: Trait<I>, I: Instance> GetDispatchInfo for Call<T, I>[src]

impl<T: Trait<I>, I: Instance> PartialEq<Call<T, I>> for Call<T, I>[src]

impl<T: Trait<I>, I: Instance> UnfilteredDispatchable for Call<T, I>[src]

type Origin = T::Origin

The origin type of the runtime, (i.e. frame_system::Trait::Origin).

Auto Trait Implementations

impl<T, I> RefUnwindSafe for Call<T, I> where
    I: RefUnwindSafe,
    T: RefUnwindSafe,
    <T as Trait>::AccountId: RefUnwindSafe,
    <T as Trait<I>>::CommodityInfo: RefUnwindSafe,
    <T as Trait>::Hash: RefUnwindSafe

impl<T, I> Send for Call<T, I> where
    I: Send,
    T: Send,
    <T as Trait>::AccountId: Send,
    <T as Trait<I>>::CommodityInfo: Send,
    <T as Trait>::Hash: Send

impl<T, I> Sync for Call<T, I> where
    I: Sync,
    T: Sync,
    <T as Trait>::AccountId: Sync,
    <T as Trait<I>>::CommodityInfo: Sync,
    <T as Trait>::Hash: Sync

impl<T, I> Unpin for Call<T, I> where
    I: Unpin,
    T: Unpin,
    <T as Trait>::AccountId: Unpin,
    <T as Trait<I>>::CommodityInfo: Unpin,
    <T as Trait>::Hash: Unpin

impl<T, I> UnwindSafe for Call<T, I> where
    I: UnwindSafe,
    T: UnwindSafe,
    <T as Trait>::AccountId: UnwindSafe,
    <T as Trait<I>>::CommodityInfo: UnwindSafe,
    <T as Trait>::Hash: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> CheckedConversion for T[src]

impl<S> Codec for S where
    S: Encode + Decode
[src]

impl<T, X> Decode for X where
    T: Decode + Into<X>,
    X: WrapperTypeDecode<Wrapped = T>, 
[src]

impl<T> DecodeAll for T where
    T: Decode
[src]

impl<T> DecodeLimit for T where
    T: Decode
[src]

impl<T> DynClone for T where
    T: Clone
[src]

impl<T, X> Encode for X where
    T: Encode + ?Sized,
    X: WrapperTypeEncode<Target = T>, 
[src]

impl<'_, '_, T> EncodeLike<&'_ &'_ T> for T where
    T: Encode
[src]

impl<'_, T> EncodeLike<&'_ T> for T where
    T: Encode
[src]

impl<'_, T> EncodeLike<&'_ mut T> for T where
    T: Encode
[src]

impl<T> EncodeLike<Arc<T>> for T where
    T: Encode
[src]

impl<T> EncodeLike<Box<T>> for T where
    T: Encode
[src]

impl<'a, T> EncodeLike<Cow<'a, T>> for T where
    T: Encode + ToOwned
[src]

impl<T> EncodeLike<Rc<T>> for T where
    T: Encode
[src]

impl<T> From<T> for T[src]

impl<S> FullCodec for S where
    S: Decode + FullEncode
[src]

impl<S> FullEncode for S where
    S: Encode + EncodeLike<S>, 
[src]

impl<T> Hashable for T where
    T: Codec
[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> IsType<T> for T[src]

impl<T, Outer> IsWrappedBy<Outer> for T where
    Outer: AsRef<T> + AsMut<T> + From<T>,
    T: From<Outer>, 
[src]

fn from_ref(outer: &Outer) -> &T[src]

Get a reference to the inner from the outer.

fn from_mut(outer: &mut Outer) -> &mut T[src]

Get a mutable reference to the inner from the outer.

impl<T> KeyedVec for T where
    T: Codec
[src]

impl<T> MaybeDebug for T where
    T: Debug

impl<T> MaybeDebug for T where
    T: Debug

impl<T> MaybeRefUnwindSafe for T where
    T: RefUnwindSafe

impl<T> Member for T where
    T: 'static + Clone + PartialEq<T> + Eq + Send + Sync + Debug
[src]

impl<T> Parameter for T where
    T: Codec + EncodeLike<T> + Clone + Eq + Debug
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> SaturatedConversion for T

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<S, T> UncheckedInto<T> for S where
    T: UncheckedFrom<S>, 
[src]

impl<T, S> UniqueSaturatedInto<T> for S where
    S: TryInto<T>,
    T: Bounded

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,