Enum pallet_proxy::pallet::Call
source · pub enum Call<T: Config> {
proxy {
real: <<T as Config>::Lookup as StaticLookup>::Source,
force_proxy_type: Option<T::ProxyType>,
call: Box<<T as Config>::RuntimeCall>,
},
add_proxy {
delegate: <<T as Config>::Lookup as StaticLookup>::Source,
proxy_type: T::ProxyType,
delay: BlockNumberFor<T>,
},
remove_proxy {
delegate: <<T as Config>::Lookup as StaticLookup>::Source,
proxy_type: T::ProxyType,
delay: BlockNumberFor<T>,
},
remove_proxies {},
create_pure {
proxy_type: T::ProxyType,
delay: BlockNumberFor<T>,
index: u16,
},
kill_pure {
spawner: <<T as Config>::Lookup as StaticLookup>::Source,
proxy_type: T::ProxyType,
index: u16,
height: BlockNumberFor<T>,
ext_index: u32,
},
announce {
real: <<T as Config>::Lookup as StaticLookup>::Source,
call_hash: <<T as Config>::CallHasher as Hash>::Output,
},
remove_announcement {
real: <<T as Config>::Lookup as StaticLookup>::Source,
call_hash: <<T as Config>::CallHasher as Hash>::Output,
},
reject_announcement {
delegate: <<T as Config>::Lookup as StaticLookup>::Source,
call_hash: <<T as Config>::CallHasher as Hash>::Output,
},
proxy_announced {
delegate: <<T as Config>::Lookup as StaticLookup>::Source,
real: <<T as Config>::Lookup as StaticLookup>::Source,
force_proxy_type: Option<T::ProxyType>,
call: Box<<T as Config>::RuntimeCall>,
},
// some variants omitted
}
Expand description
Contains a variant per dispatchable extrinsic that this pallet has.
Variants§
proxy
Dispatch the given call
from an account that the sender is authorised for through
add_proxy
.
The dispatch origin for this call must be Signed.
Parameters:
real
: The account that the proxy will make a call on behalf of.force_proxy_type
: Specify the exact proxy type to be used and checked for this call.call
: The call to be made by thereal
account.
add_proxy
Register a proxy account for the sender that is able to make calls on its behalf.
The dispatch origin for this call must be Signed.
Parameters:
proxy
: The account that thecaller
would like to make a proxy.proxy_type
: The permissions allowed for this proxy account.delay
: The announcement period required of the initial proxy. Will generally be zero.
remove_proxy
Unregister a proxy account for the sender.
The dispatch origin for this call must be Signed.
Parameters:
proxy
: The account that thecaller
would like to remove as a proxy.proxy_type
: The permissions currently enabled for the removed proxy account.
remove_proxies
Unregister all proxy accounts for the sender.
The dispatch origin for this call must be Signed.
WARNING: This may be called on accounts created by pure
, however if done, then
the unreserved fees will be inaccessible. All access to this account will be lost.
create_pure
Spawn a fresh new account that is guaranteed to be otherwise inaccessible, and
initialize it with a proxy of proxy_type
for origin
sender.
Requires a Signed
origin.
proxy_type
: The type of the proxy that the sender will be registered as over the new account. This will almost always be the most permissiveProxyType
possible to allow for maximum flexibility.index
: A disambiguation index, in case this is called multiple times in the same transaction (e.g. withutility::batch
). Unless you’re usingbatch
you probably just want to use0
.delay
: The announcement period required of the initial proxy. Will generally be zero.
Fails with Duplicate
if this has already been called in this transaction, from the
same sender, with the same parameters.
Fails if there are insufficient funds to pay for deposit.
kill_pure
Removes a previously spawned pure proxy.
WARNING: All access to this account will be lost. Any funds held in it will be inaccessible.
Requires a Signed
origin, and the sender account must have been created by a call to
pure
with corresponding parameters.
spawner
: The account that originally calledpure
to create this account.index
: The disambiguation index originally passed topure
. Probably0
.proxy_type
: The proxy type originally passed topure
.height
: The height of the chain when the call topure
was processed.ext_index
: The extrinsic index in which the call topure
was processed.
Fails with NoPermission
in case the caller is not a previously created pure
account whose pure
call has corresponding parameters.
announce
Fields
real: <<T as Config>::Lookup as StaticLookup>::Source
call_hash: <<T as Config>::CallHasher as Hash>::Output
Publish the hash of a proxy-call that will be made in the future.
This must be called some number of blocks before the corresponding proxy
is attempted
if the delay associated with the proxy relationship is greater than zero.
No more than MaxPending
announcements may be made at any one time.
This will take a deposit of AnnouncementDepositFactor
as well as
AnnouncementDepositBase
if there are no other pending announcements.
The dispatch origin for this call must be Signed and a proxy of real
.
Parameters:
real
: The account that the proxy will make a call on behalf of.call_hash
: The hash of the call to be made by thereal
account.
remove_announcement
Fields
real: <<T as Config>::Lookup as StaticLookup>::Source
call_hash: <<T as Config>::CallHasher as Hash>::Output
Remove a given announcement.
May be called by a proxy account to remove a call they previously announced and return the deposit.
The dispatch origin for this call must be Signed.
Parameters:
real
: The account that the proxy will make a call on behalf of.call_hash
: The hash of the call to be made by thereal
account.
reject_announcement
Fields
delegate: <<T as Config>::Lookup as StaticLookup>::Source
call_hash: <<T as Config>::CallHasher as Hash>::Output
Remove the given announcement of a delegate.
May be called by a target (proxied) account to remove a call that one of their delegates
(delegate
) has announced they want to execute. The deposit is returned.
The dispatch origin for this call must be Signed.
Parameters:
delegate
: The account that previously announced the call.call_hash
: The hash of the call to be made.
proxy_announced
Fields
delegate: <<T as Config>::Lookup as StaticLookup>::Source
real: <<T as Config>::Lookup as StaticLookup>::Source
call: Box<<T as Config>::RuntimeCall>
Dispatch the given call
from an account that the sender is authorized for through
add_proxy
.
Removes any corresponding announcement(s).
The dispatch origin for this call must be Signed.
Parameters:
real
: The account that the proxy will make a call on behalf of.force_proxy_type
: Specify the exact proxy type to be used and checked for this call.call
: The call to be made by thereal
account.
Implementations§
source§impl<T: Config> Call<T>
impl<T: Config> Call<T>
sourcepub fn new_call_variant_proxy(
real: <<T as Config>::Lookup as StaticLookup>::Source,
force_proxy_type: Option<T::ProxyType>,
call: Box<<T as Config>::RuntimeCall>
) -> Self
pub fn new_call_variant_proxy( real: <<T as Config>::Lookup as StaticLookup>::Source, force_proxy_type: Option<T::ProxyType>, call: Box<<T as Config>::RuntimeCall> ) -> Self
Create a call with the variant proxy
.
sourcepub fn new_call_variant_add_proxy(
delegate: <<T as Config>::Lookup as StaticLookup>::Source,
proxy_type: T::ProxyType,
delay: BlockNumberFor<T>
) -> Self
pub fn new_call_variant_add_proxy( delegate: <<T as Config>::Lookup as StaticLookup>::Source, proxy_type: T::ProxyType, delay: BlockNumberFor<T> ) -> Self
Create a call with the variant add_proxy
.
sourcepub fn new_call_variant_remove_proxy(
delegate: <<T as Config>::Lookup as StaticLookup>::Source,
proxy_type: T::ProxyType,
delay: BlockNumberFor<T>
) -> Self
pub fn new_call_variant_remove_proxy( delegate: <<T as Config>::Lookup as StaticLookup>::Source, proxy_type: T::ProxyType, delay: BlockNumberFor<T> ) -> Self
Create a call with the variant remove_proxy
.
sourcepub fn new_call_variant_remove_proxies() -> Self
pub fn new_call_variant_remove_proxies() -> Self
Create a call with the variant remove_proxies
.
sourcepub fn new_call_variant_create_pure(
proxy_type: T::ProxyType,
delay: BlockNumberFor<T>,
index: u16
) -> Self
pub fn new_call_variant_create_pure( proxy_type: T::ProxyType, delay: BlockNumberFor<T>, index: u16 ) -> Self
Create a call with the variant create_pure
.
sourcepub fn new_call_variant_kill_pure(
spawner: <<T as Config>::Lookup as StaticLookup>::Source,
proxy_type: T::ProxyType,
index: u16,
height: BlockNumberFor<T>,
ext_index: u32
) -> Self
pub fn new_call_variant_kill_pure( spawner: <<T as Config>::Lookup as StaticLookup>::Source, proxy_type: T::ProxyType, index: u16, height: BlockNumberFor<T>, ext_index: u32 ) -> Self
Create a call with the variant kill_pure
.
sourcepub fn new_call_variant_announce(
real: <<T as Config>::Lookup as StaticLookup>::Source,
call_hash: <<T as Config>::CallHasher as Hash>::Output
) -> Self
pub fn new_call_variant_announce( real: <<T as Config>::Lookup as StaticLookup>::Source, call_hash: <<T as Config>::CallHasher as Hash>::Output ) -> Self
Create a call with the variant announce
.
sourcepub fn new_call_variant_remove_announcement(
real: <<T as Config>::Lookup as StaticLookup>::Source,
call_hash: <<T as Config>::CallHasher as Hash>::Output
) -> Self
pub fn new_call_variant_remove_announcement( real: <<T as Config>::Lookup as StaticLookup>::Source, call_hash: <<T as Config>::CallHasher as Hash>::Output ) -> Self
Create a call with the variant remove_announcement
.
sourcepub fn new_call_variant_reject_announcement(
delegate: <<T as Config>::Lookup as StaticLookup>::Source,
call_hash: <<T as Config>::CallHasher as Hash>::Output
) -> Self
pub fn new_call_variant_reject_announcement( delegate: <<T as Config>::Lookup as StaticLookup>::Source, call_hash: <<T as Config>::CallHasher as Hash>::Output ) -> Self
Create a call with the variant reject_announcement
.
sourcepub fn new_call_variant_proxy_announced(
delegate: <<T as Config>::Lookup as StaticLookup>::Source,
real: <<T as Config>::Lookup as StaticLookup>::Source,
force_proxy_type: Option<T::ProxyType>,
call: Box<<T as Config>::RuntimeCall>
) -> Self
pub fn new_call_variant_proxy_announced( delegate: <<T as Config>::Lookup as StaticLookup>::Source, real: <<T as Config>::Lookup as StaticLookup>::Source, force_proxy_type: Option<T::ProxyType>, call: Box<<T as Config>::RuntimeCall> ) -> Self
Create a call with the variant proxy_announced
.
Trait Implementations§
source§impl<T: Config> CheckIfFeeless for Call<T>
impl<T: Config> CheckIfFeeless for Call<T>
source§fn is_feeless(&self, origin: &Self::Origin) -> bool
fn is_feeless(&self, origin: &Self::Origin) -> bool
#[pallet::feeless_if]
source§impl<T: Config> Decode for Call<T>
impl<T: Config> Decode for Call<T>
source§fn decode<__CodecInputEdqy: Input>(
__codec_input_edqy: &mut __CodecInputEdqy
) -> Result<Self, Error>
fn decode<__CodecInputEdqy: Input>( __codec_input_edqy: &mut __CodecInputEdqy ) -> Result<Self, Error>
§fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>
) -> Result<DecodeFinished, Error>where
I: Input,
fn decode_into<I>(
input: &mut I,
dst: &mut MaybeUninit<Self>
) -> Result<DecodeFinished, Error>where
I: Input,
§fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
fn skip<I>(input: &mut I) -> Result<(), Error>where
I: Input,
§fn encoded_fixed_size() -> Option<usize>
fn encoded_fixed_size() -> Option<usize>
source§impl<T: Config> Encode for Call<T>
impl<T: Config> Encode for Call<T>
source§fn size_hint(&self) -> usize
fn size_hint(&self) -> usize
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 )
§fn using_encoded<R, F>(&self, f: F) -> R
fn using_encoded<R, F>(&self, f: F) -> R
§fn encoded_size(&self) -> usize
fn encoded_size(&self) -> usize
source§impl<T: Config> GetCallIndex for Call<T>
impl<T: Config> GetCallIndex for Call<T>
source§fn get_call_index(&self) -> u8
fn get_call_index(&self) -> u8
source§fn get_call_indices() -> &'static [u8] ⓘ
fn get_call_indices() -> &'static [u8] ⓘ
GetCallName
].source§impl<T: Config> GetCallName for Call<T>
impl<T: Config> GetCallName for Call<T>
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]
GetCallIndex
].source§impl<T: Config> GetDispatchInfo for Call<T>
impl<T: Config> GetDispatchInfo for Call<T>
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 for Call<T>
impl<T: Config> PartialEq for Call<T>
source§impl<T> TypeInfo for Call<T>where
PhantomData<(T,)>: TypeInfo + 'static,
<<T as Config>::Lookup as StaticLookup>::Source: TypeInfo + 'static,
Option<T::ProxyType>: TypeInfo + 'static,
Box<<T as Config>::RuntimeCall>: TypeInfo + 'static,
T::ProxyType: TypeInfo + 'static,
BlockNumberFor<T>: TypeInfo + 'static + HasCompact,
<<T as Config>::CallHasher as Hash>::Output: TypeInfo + 'static,
T: Config + 'static,
impl<T> TypeInfo for Call<T>where
PhantomData<(T,)>: TypeInfo + 'static,
<<T as Config>::Lookup as StaticLookup>::Source: TypeInfo + 'static,
Option<T::ProxyType>: TypeInfo + 'static,
Box<<T as Config>::RuntimeCall>: TypeInfo + 'static,
T::ProxyType: TypeInfo + 'static,
BlockNumberFor<T>: TypeInfo + 'static + HasCompact,
<<T as Config>::CallHasher as Hash>::Output: TypeInfo + 'static,
T: Config + 'static,
source§impl<T: Config> UnfilteredDispatchable for Call<T>
impl<T: Config> UnfilteredDispatchable for Call<T>
§type RuntimeOrigin = <T as Config>::RuntimeOrigin
type RuntimeOrigin = <T as Config>::RuntimeOrigin
frame_system::Config::RuntimeOrigin
).source§fn dispatch_bypass_filter(
self,
origin: Self::RuntimeOrigin
) -> DispatchResultWithPostInfo
fn dispatch_bypass_filter( self, origin: Self::RuntimeOrigin ) -> DispatchResultWithPostInfo
impl<T: Config> EncodeLike for Call<T>
impl<T: Config> Eq for Call<T>
Auto Trait Implementations§
impl<T> Freeze for Call<T>
impl<T> RefUnwindSafe for Call<T>where
T: RefUnwindSafe,
<<<T as Config>::Block as Block>::Header as Header>::Number: RefUnwindSafe,
<<T as Config>::CallHasher as Hash>::Output: RefUnwindSafe,
<T as Config>::ProxyType: RefUnwindSafe,
<T as Config>::RuntimeCall: RefUnwindSafe,
<<T as Config>::Lookup as StaticLookup>::Source: RefUnwindSafe,
impl<T> Send for Call<T>where
T: Send,
<T as Config>::RuntimeCall: Send,
<<T as Config>::Lookup as StaticLookup>::Source: Send,
impl<T> Sync for Call<T>where
T: Sync,
<T as Config>::RuntimeCall: Sync,
<<T as Config>::Lookup as StaticLookup>::Source: Sync,
impl<T> Unpin for Call<T>
impl<T> UnwindSafe for Call<T>where
T: UnwindSafe,
<<<T as Config>::Block as Block>::Header as Header>::Number: UnwindSafe,
<<T as Config>::CallHasher as Hash>::Output: UnwindSafe,
<T as Config>::ProxyType: UnwindSafe,
<T as Config>::RuntimeCall: UnwindSafe,
<<T as Config>::Lookup as StaticLookup>::Source: UnwindSafe,
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
§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
§fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
fn checked_from<T>(t: T) -> Option<Self>where
Self: TryFrom<T>,
§fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
fn checked_into<T>(self) -> Option<T>where
Self: TryInto<T>,
§impl<T> DecodeAll for Twhere
T: Decode,
impl<T> DecodeAll for Twhere
T: Decode,
§fn decode_all(input: &mut &[u8]) -> Result<T, Error>
fn decode_all(input: &mut &[u8]) -> Result<T, Error>
Self
and consume all of the given input data. Read more§impl<T> DecodeLimit for Twhere
T: Decode,
impl<T> DecodeLimit for Twhere
T: Decode,
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
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> Hashable for Twhere
T: Codec,
impl<T> Hashable for Twhere
T: Codec,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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§impl<T> IsType<T> for T
impl<T> IsType<T> for T
§impl<T, Outer> IsWrappedBy<Outer> for T
impl<T, Outer> IsWrappedBy<Outer> for T
§impl<T> KeyedVec for Twhere
T: Codec,
impl<T> KeyedVec for Twhere
T: Codec,
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
T
. Read more§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.§impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
impl<T, U> TryIntoKey<U> for Twhere
U: TryFromKey<T>,
type Error = <U as TryFromKey<T>>::Error
fn try_into_key(self) -> Result<U, <U as TryFromKey<T>>::Error>
§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
unchecked_from
.§impl<T, S> UniqueSaturatedInto<T> for S
impl<T, S> UniqueSaturatedInto<T> for S
§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
T
.