class Eth::Client
def call(contract, function_name, *args, **kwargs)
-
(Object)
- returns the result of the call.
Parameters:
-
legacy
(Boolean
) -- enables legacy transactions (pre-EIP-1559). -
sender_key
(Eth::Key
) -- the sender private key. -
value
(Integer|String
) -- function arguments. -
function_name
(String
) -- method name to be called. -
contract
(Eth::Contract
) -- subject contract to call. -
value
(Integer|String
) -- function arguments. -
function_name
(String
) -- method name to be called. -
contract
(Eth::Contract
) -- subject contract to call. -
function_name
(String
) -- method name to be called. -
contract
(Eth::Contract
) -- subject contract to call.
Overloads:
-
call(contract, function_name, value, sender_key, legacy)
-
call(contract, function_name, value)
-
call(contract, function_name)
def call(contract, function_name, *args, **kwargs) func = contract.functions.select { |func| func.name == function_name }[0] raise ArgumentError, "function_name does not exist!" if func.nil? output = call_raw(contract, func, *args, **kwargs) if output.length == 1 return output[0] else return output end end