Skip to main content

Argument

Argument Objects

class Argument(ArgumentProtocol)

An argument to a programmable transaction command

BCS

The BCS serialized form for this type is defined by the following ABNF:

argument    =  argument-gas
=/ argument-input
=/ argument-result
=/ argument-nested-result

argument-gas = %d00
argument-input = %d01 u16
argument-result = %d02 u16
argument-nested-result = %d03 u16 u16

new_gas

@classmethod
def new_gas(cls) -> Argument

The gas coin. The gas coin can only be used by-ref, except for with TransferObjects, which can use it by-value.

new_input

@classmethod
def new_input(cls, input: int) -> Argument

One of the input objects or primitive values (from ProgrammableTransaction inputs)

new_nested_result

@classmethod
def new_nested_result(cls, command_index: int,
subresult_index: int) -> Argument

Like a Result but it accesses a nested result. Currently, the only usage of this is to access a value from a Move call with multiple return values.

new_result

@classmethod
def new_result(cls, result: int) -> Argument

The result of another command (from ProgrammableTransaction commands)

get_nested_result

def get_nested_result(ix: int) -> typing.Optional[Argument]

Get the nested result for this result at the given index. Returns None if this is not a Result.