pub struct DelegateAction {
pub sender_id: AccountId,
pub receiver_id: AccountId,
pub actions: Vec<NonDelegateAction>,
pub nonce: Nonce,
pub max_block_height: BlockHeight,
pub public_key: PublicKey,
}Expand description
This action allows to execute the inner actions behalf of the defined sender.
Fields§
§sender_id: AccountIdSigner of the delegated actions
receiver_id: AccountIdReceiver of the delegated actions.
actions: Vec<NonDelegateAction>List of actions to be executed.
With the meta transactions MVP, nested DelegateActions are not allowed. A separate type is used to enforce it.
nonce: NonceNonce to ensure that the same delegate action is not sent twice by a
relayer and should match for given account’s public_key.
After this action is processed it will increment.
max_block_height: BlockHeightThe maximal height of the block in the blockchain below which the given DelegateAction is valid.
public_key: PublicKeyPublic key used to sign this delegated action.
Implementations§
Source§impl DelegateAction
impl DelegateAction
pub fn get_actions(&self) -> Vec<Action>
Sourcepub fn get_nep461_hash(&self) -> CryptoHash
pub fn get_nep461_hash(&self) -> CryptoHash
Delegate action hash used for signature scheme which tags different messages before hashing
Trait Implementations§
Source§impl BorshDeserialize for DelegateAction
impl BorshDeserialize for DelegateAction
fn deserialize_reader<__R: Read>(reader: &mut __R) -> Result<Self, Error>
Source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes.
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl BorshSerialize for DelegateAction
impl BorshSerialize for DelegateAction
Source§impl Clone for DelegateAction
impl Clone for DelegateAction
Source§fn clone(&self) -> DelegateAction
fn clone(&self) -> DelegateAction
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DelegateAction
impl Debug for DelegateAction
Source§impl<'de> Deserialize<'de> for DelegateAction
impl<'de> Deserialize<'de> for DelegateAction
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for DelegateAction
impl PartialEq for DelegateAction
Source§impl Serialize for DelegateAction
impl Serialize for DelegateAction
impl Eq for DelegateAction
impl StructuralPartialEq for DelegateAction
Auto Trait Implementations§
impl Freeze for DelegateAction
impl RefUnwindSafe for DelegateAction
impl Send for DelegateAction
impl Sync for DelegateAction
impl Unpin for DelegateAction
impl UnwindSafe for DelegateAction
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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
Compare self to
key and return true if they are equal.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
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> 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>
Converts
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>
Converts
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