Enum pallet_plasma::Call [−][src]
pub enum Call<T: Config> { deploy(T::AccountId, T::AccountId, T::AccountId, T::AccountId), submit_root(T::AccountId, T::BlockNumber, T::Hash), deposit(T::AccountId, BalanceOf<T>, PropertyOf<T>), finalize_checkpoint(T::AccountId, PropertyOf<T>), exit_claim(T::AccountId, StateUpdateOf<T>, Option<StateUpdateOf<T>>, Option<InclusionProofOf<T>>), exit_spent_challenge(T::AccountId, StateUpdateOf<T>, TransactionOf<T>, InclusionProofOf<T>), exit_checkpoint_challenge(T::AccountId, StateUpdateOf<T>, StateUpdateOf<T>, InclusionProofOf<T>), exit_settle(T::AccountId, StateUpdateOf<T>), finalize_exit(T::AccountId, PropertyOf<T>, BalanceOf<T>, T::AccountId), // some variants omitted }
Expand description
Dispatchable calls.
Each variant of this enum maps to a dispatchable function from the associated module.
Variants
Commitment constructor + Deposit constructor TODO: weight
submit_root(T::AccountId, T::BlockNumber, T::Hash)
Submit root hash of Plasma chain. TODO: weight
deposit(T::AccountId, BalanceOf<T>, PropertyOf<T>)
deposit ERC20 token to deposit contract with initial state. following https://docs.plasma.group/projects/spec/en/latest/src/02-contracts/deposit-contract.html#deposit
- @param amount to deposit
- @param initial_state The initial state of deposit TODO: weight
finalize_checkpoint(T::AccountId, PropertyOf<T>)
finalizeCheckpoint
- @param _checkpointProperty A property which is instance of checkpoint predicate its first input is range to create checkpoint and second input is property for stateObject. TODO: weight
exit_claim(T::AccountId, StateUpdateOf<T>, Option<StateUpdateOf<T>>, Option<InclusionProofOf<T>>)
exit_spent_challenge(T::AccountId, StateUpdateOf<T>, TransactionOf<T>, InclusionProofOf<T>)
exit_checkpoint_challenge(T::AccountId, StateUpdateOf<T>, StateUpdateOf<T>, InclusionProofOf<T>)
exit_settle(T::AccountId, StateUpdateOf<T>)
finalize_exit(T::AccountId, PropertyOf<T>, BalanceOf<T>, T::AccountId)
finalizeExit
- @param _exitProperty A property which is instance of exit predicate and its inputs are range and StateUpdate that exiting account wants to withdraw. _exitProperty can be a property of ether ExitPredicate or ExitDepositPredicate.
- @param _depositedRangeId Id of deposited range
- @return return StateUpdate of exit property which is finalized.
- @dev The steps of finalizeExit.
- Serialize exit property
- check the property is decided by Adjudication Contract.
- Transfer asset to payout contract corresponding to StateObject.
Please alse see https://docs.plasma.group/projects/spec/en/latest/src/02-contracts/deposit-contract.html#finalizeexit TODO: weight
Trait Implementations
impl<T: Config> Decode for Call<T> where
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::BlockNumber: Decode,
T::BlockNumber: Decode,
T::Hash: Decode,
T::Hash: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
BalanceOf<T>: Decode,
BalanceOf<T>: Decode,
PropertyOf<T>: Decode,
PropertyOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
PropertyOf<T>: Decode,
PropertyOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
Option<StateUpdateOf<T>>: Decode,
Option<StateUpdateOf<T>>: Decode,
Option<InclusionProofOf<T>>: Decode,
Option<InclusionProofOf<T>>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
TransactionOf<T>: Decode,
TransactionOf<T>: Decode,
InclusionProofOf<T>: Decode,
InclusionProofOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
InclusionProofOf<T>: Decode,
InclusionProofOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
PropertyOf<T>: Decode,
PropertyOf<T>: Decode,
BalanceOf<T>: Decode,
BalanceOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
impl<T: Config> Decode for Call<T> where
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
T::BlockNumber: Decode,
T::BlockNumber: Decode,
T::Hash: Decode,
T::Hash: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
BalanceOf<T>: Decode,
BalanceOf<T>: Decode,
PropertyOf<T>: Decode,
PropertyOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
PropertyOf<T>: Decode,
PropertyOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
Option<StateUpdateOf<T>>: Decode,
Option<StateUpdateOf<T>>: Decode,
Option<InclusionProofOf<T>>: Decode,
Option<InclusionProofOf<T>>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
TransactionOf<T>: Decode,
TransactionOf<T>: Decode,
InclusionProofOf<T>: Decode,
InclusionProofOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
InclusionProofOf<T>: Decode,
InclusionProofOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
StateUpdateOf<T>: Decode,
StateUpdateOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
PropertyOf<T>: Decode,
PropertyOf<T>: Decode,
BalanceOf<T>: Decode,
BalanceOf<T>: Decode,
T::AccountId: Decode,
T::AccountId: Decode,
impl<T: Config> Encode for Call<T> where
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::BlockNumber: Encode,
T::BlockNumber: Encode,
T::Hash: Encode,
T::Hash: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
BalanceOf<T>: Encode,
BalanceOf<T>: Encode,
PropertyOf<T>: Encode,
PropertyOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
PropertyOf<T>: Encode,
PropertyOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
Option<StateUpdateOf<T>>: Encode,
Option<StateUpdateOf<T>>: Encode,
Option<InclusionProofOf<T>>: Encode,
Option<InclusionProofOf<T>>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
TransactionOf<T>: Encode,
TransactionOf<T>: Encode,
InclusionProofOf<T>: Encode,
InclusionProofOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
InclusionProofOf<T>: Encode,
InclusionProofOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
PropertyOf<T>: Encode,
PropertyOf<T>: Encode,
BalanceOf<T>: Encode,
BalanceOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
impl<T: Config> Encode for Call<T> where
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::BlockNumber: Encode,
T::BlockNumber: Encode,
T::Hash: Encode,
T::Hash: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
BalanceOf<T>: Encode,
BalanceOf<T>: Encode,
PropertyOf<T>: Encode,
PropertyOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
PropertyOf<T>: Encode,
PropertyOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
Option<StateUpdateOf<T>>: Encode,
Option<StateUpdateOf<T>>: Encode,
Option<InclusionProofOf<T>>: Encode,
Option<InclusionProofOf<T>>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
TransactionOf<T>: Encode,
TransactionOf<T>: Encode,
InclusionProofOf<T>: Encode,
InclusionProofOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
InclusionProofOf<T>: Encode,
InclusionProofOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
PropertyOf<T>: Encode,
PropertyOf<T>: Encode,
BalanceOf<T>: Encode,
BalanceOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
Return the function name of the Call.
Return all function names.
Return a DispatchInfo
, containing relevant information of this dispatch. Read more
Dispatch this call but do not check the filter in origin.
impl<T: Config> EncodeLike<Call<T>> for Call<T> where
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
T::BlockNumber: Encode,
T::BlockNumber: Encode,
T::Hash: Encode,
T::Hash: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
BalanceOf<T>: Encode,
BalanceOf<T>: Encode,
PropertyOf<T>: Encode,
PropertyOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
PropertyOf<T>: Encode,
PropertyOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
Option<StateUpdateOf<T>>: Encode,
Option<StateUpdateOf<T>>: Encode,
Option<InclusionProofOf<T>>: Encode,
Option<InclusionProofOf<T>>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
TransactionOf<T>: Encode,
TransactionOf<T>: Encode,
InclusionProofOf<T>: Encode,
InclusionProofOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
InclusionProofOf<T>: Encode,
InclusionProofOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
StateUpdateOf<T>: Encode,
StateUpdateOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
PropertyOf<T>: Encode,
PropertyOf<T>: Encode,
BalanceOf<T>: Encode,
BalanceOf<T>: Encode,
T::AccountId: Encode,
T::AccountId: Encode,
Auto Trait Implementations
impl<T> RefUnwindSafe for Call<T> where
T: RefUnwindSafe,
<T as Config>::AccountId: RefUnwindSafe,
<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: RefUnwindSafe,
<T as Config>::BlockNumber: RefUnwindSafe,
<T as Config>::Hash: RefUnwindSafe,
impl<T> Send for Call<T> where
T: Send,
<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Send,
impl<T> Sync for Call<T> where
T: Sync,
<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Sync,
impl<T> Unpin for Call<T> where
T: Unpin,
<T as Config>::AccountId: Unpin,
<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: Unpin,
<T as Config>::BlockNumber: Unpin,
<T as Config>::Hash: Unpin,
impl<T> UnwindSafe for Call<T> where
T: UnwindSafe,
<T as Config>::AccountId: UnwindSafe,
<<T as Config>::Currency as Currency<<T as Config>::AccountId>>::Balance: UnwindSafe,
<T as Config>::BlockNumber: UnwindSafe,
<T as Config>::Hash: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
type Output = T
type Output = T
Should always be Self
The counterpart to unchecked_from
.
Consume self to return an equivalent value of T
.
pub fn vzip(self) -> V
impl<T> MaybeDebug for T where
T: Debug,
impl<T> MaybeDebug for T where
T: Debug,
impl<T> MaybeRefUnwindSafe for T where
T: RefUnwindSafe,