#[repr(C)]pub struct Invocation {
pub invoked_address: ContractAddress,
pub entrypoint: ContractEntrypointID,
pub gas_limit: GasAmount,
pub calldata: Calldata,
}Expand description
Specifies a contract method invocation with its parameters.
This struct is used both for the root transaction invocation and for subinvocations made via the Invoke syscall.
Fields§
§invoked_address: ContractAddressAddress of the contract to invoke.
entrypoint: ContractEntrypointID8-byte identifier of the contract method to call.
See ContractEntrypointID in contract.x for how these are derived.
gas_limit: GasAmountMaximum gas units available for this invocation.
For the root transaction invocation, this is the total gas budget. For subinvocations via the Invoke syscall, this is capped at the remaining gas in the caller’s frame. The SDK default is UINT64_MAX, meaning “use all remaining gas”.
calldata: CalldataEncoded arguments to pass to the contract method.
Trait Implementations§
Source§impl Clone for Invocation
impl Clone for Invocation
Source§impl ConstMaxSize for Invocation
impl ConstMaxSize for Invocation
Source§impl ConstMaxSize for Invocation
impl ConstMaxSize for Invocation
Source§impl Debug for Invocation
impl Debug for Invocation
Source§impl<'de> Deserialize<'de> for Invocation
impl<'de> Deserialize<'de> for Invocation
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
impl EncodesAs<Invocation> for Invocation
impl Eq for Invocation
Source§impl Hash for Invocation
impl Hash for Invocation
Source§impl JsonSchema for Invocation
impl JsonSchema for Invocation
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreSource§impl Ord for Invocation
impl Ord for Invocation
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
Source§impl PartialEq for Invocation
impl PartialEq for Invocation
Source§impl PartialOrd for Invocation
impl PartialOrd for Invocation
Source§impl<'_r> ReadXDR<'_r> for Invocation
impl<'_r> ReadXDR<'_r> for Invocation
Source§fn read_xdr<R: Reader<'_r>>(r: &mut R) -> ReadResult<Self>
fn read_xdr<R: Reader<'_r>>(r: &mut R) -> ReadResult<Self>
Reads an XDR value from the reader. Read more
Source§fn read_xdr_in_place<'__xdrs_s, R: Reader<'_r>>(
r: &mut R,
__xdrs_slot: Slot<'__xdrs_s, Self>,
) -> ReadResult<Init<'__xdrs_s, Self>>
fn read_xdr_in_place<'__xdrs_s, R: Reader<'_r>>( r: &mut R, __xdrs_slot: Slot<'__xdrs_s, Self>, ) -> ReadResult<Init<'__xdrs_s, Self>>
Reads an XDR value directly into
slot, without first building it
on the stack. Read moreSource§impl Serialize for Invocation
impl Serialize for Invocation
impl StructuralPartialEq for Invocation
Source§impl WriteXDR for Invocation
impl WriteXDR for Invocation
Source§fn write_xdr<F, W: Writer<F>>(&self, w: &mut W) -> WriteResult<()>
fn write_xdr<F, W: Writer<F>>(&self, w: &mut W) -> WriteResult<()>
Writes this value as XDR data to the writer. Read more
Source§unsafe fn write_xdr_unchecked<F, W: WriterUnchecked<F>>(&self, w: &mut W)
unsafe fn write_xdr_unchecked<F, W: WriterUnchecked<F>>(&self, w: &mut W)
Writes this value as XDR data to the writer, without runtime checks. Read more
Auto Trait Implementations§
impl Freeze for Invocation
impl RefUnwindSafe for Invocation
impl Send for Invocation
impl Sync for Invocation
impl Unpin for Invocation
impl UnsafeUnpin for Invocation
impl UnwindSafe for Invocation
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
Mutably borrows from an owned value. Read more