IoTeX client
Public Member Functions | Static Public Member Functions | List of all members
iotex::Contract Class Reference

Public Member Functions

 Contract (IotexString &abiJson)
 Construct a new contract object passing the ABI JSON string. More...
 
 Contract (std::vector< iotex::abi::FunctionAbi > &functions)
 Construct a new Contract object from a vector of FunctionAbi objects. More...
 
ResultCode generateCallData (const IotexString &functionName, ParameterValuesDictionary &params, IotexString &out)
 Generates the Ethereum encoded data for the contract call. More...
 

Static Public Member Functions

static int32_t generateBytesForUint (const uint8_t *pVal, size_t size, uint8_t *out)
 
static int32_t generateBytesForInt (const int8_t *pVal, size_t size, uint8_t *out)
 
static int32_t generateBytesForAddress (const uint8_t *pVal, uint8_t *out)
 
static int32_t generateBytesForBool (bool val, uint8_t *out)
 
static int32_t generateBytesForStaticBytes (uint8_t *pVal, size_t size, uint8_t *out)
 
static int32_t generateBytesForBytes (uint8_t *pVal, size_t size, uint8_t *out)
 
static int32_t generateBytesForString (char *pVal, size_t size, uint8_t *out)
 
static int32_t generateBytesForStaticArrayOfStaticElements (iotex::abi::ParameterValue param, std::vector< uint8_t > &data)
 
static int32_t generateBytesForDynamicArrayOfStaticElements (iotex::abi::ParameterValue param, std::vector< uint8_t > &data)
 
static int32_t generateBytesForStaticArrayOfDynamicElements (iotex::abi::ParameterValue param, std::vector< uint8_t > &data)
 
static void generateFunctionSelector (iotex::abi::FunctionAbi &function, std::vector< uint8_t > &out)
 

Constructor & Destructor Documentation

◆ Contract() [1/2]

iotex::Contract::Contract ( IotexString &  abiJson)

Construct a new contract object passing the ABI JSON string.

Parameters
abiJsonThe ABI as a serialized JSON string

◆ Contract() [2/2]

iotex::Contract::Contract ( std::vector< iotex::abi::FunctionAbi > &  functions)

Construct a new Contract object from a vector of FunctionAbi objects.

Parameters
functionsThe contract functions

Member Function Documentation

◆ generateCallData()

ResultCode iotex::Contract::generateCallData ( const IotexString &  functionName,
ParameterValuesDictionary params,
IotexString &  out 
)

Generates the Ethereum encoded data for the contract call.

Parameters
functionNameThe function name
paramsThe paremeters values
out[out]The encoded data as a hex string if successful
Returns
ResultCode Success or error code

The documentation for this class was generated from the following files: