algokit_transact

Struct ApplicationCallTransactionFields

Source
pub struct ApplicationCallTransactionFields {
Show 13 fields pub header: TransactionHeader, pub app_id: u64, pub on_complete: OnApplicationComplete, pub approval_program: Option<Vec<u8>>, pub clear_state_program: Option<Vec<u8>>, pub global_state_schema: Option<StateSchema>, pub local_state_schema: Option<StateSchema>, pub extra_program_pages: Option<u64>, pub args: Option<Vec<Vec<u8>>>, pub account_references: Option<Vec<Address>>, pub app_references: Option<Vec<u64>>, pub asset_references: Option<Vec<u64>>, pub box_references: Option<Vec<BoxReference>>,
}
Expand description

Represents an application call transaction that interacts with Algorand Smart Contracts.

Application call transactions are used to create, update, delete, opt-in to, close out of, or clear state from Algorand applications (smart contracts).

Fields§

§header: TransactionHeader

Common transaction header fields.

§app_id: u64

ID of the application being called.

Set this to 0 to indicate an application creation call.

§on_complete: OnApplicationComplete

Defines what additional actions occur with the transaction.

§approval_program: Option<Vec<u8>>

Logic executed for every application call transaction, except when on-completion is set to “clear”.

Approval programs may reject the transaction. Only required for application creation and update transactions.

§clear_state_program: Option<Vec<u8>>

Logic executed for application call transactions with on-completion set to “clear”.

Clear state programs cannot reject the transaction. Only required for application creation and update transactions.

§global_state_schema: Option<StateSchema>

Holds the maximum number of global state values.

Only required for application creation transactions. This cannot be changed after creation.

§local_state_schema: Option<StateSchema>

Holds the maximum number of local state values.

Only required for application creation transactions. This cannot be changed after creation.

§extra_program_pages: Option<u64>

Number of additional pages allocated to the application’s approval and clear state programs.

Each extra program page is 2048 bytes. The sum of approval program and clear state program may not exceed 2048*(1+extra_program_pages) bytes. Currently, the maximum value is 3. This cannot be changed after creation.

§args: Option<Vec<Vec<u8>>>

Transaction specific arguments available in the application’s approval program and clear state program.

§account_references: Option<Vec<Address>>

List of accounts in addition to the sender that may be accessed from the application’s approval program and clear state program.

§app_references: Option<Vec<u64>>

List of applications in addition to the application ID that may be called from the application’s approval program and clear state program.

§asset_references: Option<Vec<u64>>

Lists the assets whose parameters may be accessed by this application’s approval program and clear state program.

The access is read-only.

§box_references: Option<Vec<BoxReference>>

The boxes that should be made available for the runtime of the program.

Trait Implementations§

Source§

impl Clone for ApplicationCallTransactionFields

Source§

fn clone(&self) -> ApplicationCallTransactionFields

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ApplicationCallTransactionFields

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for ApplicationCallTransactionFields

Source§

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 ApplicationCallTransactionFields

Source§

fn eq(&self, other: &ApplicationCallTransactionFields) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for ApplicationCallTransactionFields

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for ApplicationCallTransactionFields

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,