Module: EthereumContractABI

Defined in:
lib/ethereum-contract-abi.rb,
lib/ethereum-contract-abi/util.rb,
lib/ethereum-contract-abi/contract.rb,
lib/ethereum-contract-abi/constants.rb,
lib/ethereum-contract-abi/contract/input.rb,
lib/ethereum-contract-abi/contract/output.rb,
lib/ethereum-contract-abi/contract/function.rb,
lib/ethereum-contract-abi/decoders/int_decoder.rb,
lib/ethereum-contract-abi/encoders/int_encoder.rb,
lib/ethereum-contract-abi/contract/abi_types/int.rb,
lib/ethereum-contract-abi/contract/eip/constants.rb,
lib/ethereum-contract-abi/encoders/bytes_encoder.rb,
lib/ethereum-contract-abi/contract/abi_types/bool.rb,
lib/ethereum-contract-abi/contract/abi_types/uint.rb,
lib/ethereum-contract-abi/decoders/string_decoder.rb,
lib/ethereum-contract-abi/contract/abi_types/bytes.rb,
lib/ethereum-contract-abi/contract/abi_types/fixed.rb,
lib/ethereum-contract-abi/encoders/decimal_encoder.rb,
lib/ethereum-contract-abi/contract/abi_types/string.rb,
lib/ethereum-contract-abi/decoders/function_decoder.rb,
lib/ethereum-contract-abi/encoders/function_encoder.rb,
lib/ethereum-contract-abi/contract/abi_types/address.rb,
lib/ethereum-contract-abi/contract/abi_types/base_type.rb,
lib/ethereum-contract-abi/contract/eip/erc165_interface.rb,
lib/ethereum-contract-abi/contract/parsers/abi_type_parser.rb,
lib/ethereum-contract-abi/contract/parsers/contract_parser.rb,
lib/ethereum-contract-abi/contract/parsers/function_parser.rb,
lib/ethereum-contract-abi/contract/eip/erc721_metadata_interface.rb,
lib/ethereum-contract-abi/contract/eip/erc1155_metadata_interface.rb,
lib/ethereum-contract-abi/contract/eip/erc721_enumerable_interface.rb

Defined Under Namespace

Modules: Constants, ContractInterface, Decoders, Encoders Classes: Contract, Util

Class Method Summary collapse

Class Method Details

.contract_from_json(json_string) ⇒ Object



8
9
10
# File 'lib/ethereum-contract-abi.rb', line 8

def self.contract_from_json(json_string)
  ContractParser.from_json(json_string)
end

.get_interface(interface_id) ⇒ Object



12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/ethereum-contract-abi.rb', line 12

def self.get_interface(interface_id)
  case interface_id
  when EIP::
    EIP::ERC721MetadataInterface
  when EIP::
    EIP::ERC1155MetadataInterface
  when EIP::ERC165_ID
    EIP::ERC165Interface
  else
    raise ArgumentError.new('Unknown interface identifier')
  end
end