Method: Web3::Eth::Contract::ContractConstructor#parse_method_args

Defined in:
lib/web3/eth/contract.rb

#parse_method_args(transaction) ⇒ Object



112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# File 'lib/web3/eth/contract.rb', line 112

def parse_method_args transaction
  return [] if input_types.empty?

  input = transaction.input

  d = fetch_constructor_data input
  result = (d && !d.empty? && try_parse(d))

  unless result
    start = input.length-1-min_data_size(input_types)
    while start>=0 && !result
      result = try_parse input, start
      start -= 1
    end
  end

  result
end