Represents an encoded ABI function call ready to be sent to the Fireblocks API.
Each function generated by Fireblocks.Evm.Contract returns one of these structs.
Pass it to Fireblocks.Evm.Contract.read/2 or Fireblocks.Evm.Contract.write/2.
Fields
:function– the Solidity function name (e.g."transfer").:inputs– list of%{name: String.t(), type: String.t(), value: any()}maps.:state_mutability– one of:pure,:view,:non_payable,:payable(ornil).:selector– the parsed%ABI.FunctionSelector{}used for encoding (internal).
Summary
Functions
Converts a %Fireblocks.Evm.Contract.Call{} into the abiFunction map expected
by the Fireblocks API, conforming to the ReadAbiFunction specification.
Types
Functions
Converts a %Fireblocks.Evm.Contract.Call{} into the abiFunction map expected
by the Fireblocks API, conforming to the ReadAbiFunction specification.
Required fields per spec: stateMutability, type, inputs.
Optional fields included when available: name, outputs.
%{
"name" => "transfer",
"type" => "function",
"stateMutability" => "nonpayable",
"inputs" => [
%{"name" => "to", "type" => "address", "value" => "0x..."},
%{"name" => "amount", "type" => "uint256", "value" => 1000}
],
"outputs" => [
%{"name" => "", "type" => "bool"}
]
}