Class: EthereumContractABI::ContractInterface::EIP::ERC721MetadataInterface

Inherits:
Object
  • Object
show all
Defined in:
lib/ethereum-contract-abi/contract/eip/erc721_metadata_interface.rb

Class Method Summary collapse

Class Method Details

.functionsObject



40
41
42
# File 'lib/ethereum-contract-abi/contract/eip/erc721_metadata_interface.rb', line 40

def self.functions
  [self.name, self.symbol, self.tokenURI]
end

.is_implemented_by?(contract) ⇒ Boolean



13
14
15
16
17
# File 'lib/ethereum-contract-abi/contract/eip/erc721_metadata_interface.rb', line 13

def self.is_implemented_by?(contract)
  contract.has_function?(self.name) &&
    contract.has_function?(self.symbol) &&
    contract.has_function?(self.tokenURI)
end

.nameObject



19
20
21
22
23
24
# File 'lib/ethereum-contract-abi/contract/eip/erc721_metadata_interface.rb', line 19

def self.name
  function_name = 'name'
  inputs = []
  outputs = [Output.new(AbiTypes::String.new, '_name')]
  Function.new(function_name, inputs, outputs)
end

.symbolObject



26
27
28
29
30
31
# File 'lib/ethereum-contract-abi/contract/eip/erc721_metadata_interface.rb', line 26

def self.symbol
  function_name = 'symbol'
  inputs = []
  outputs = [Output.new(AbiTypes::String.new, '_symbol')]
  Function.new(function_name, inputs, outputs)
end

.tokenURIObject



33
34
35
36
37
38
# File 'lib/ethereum-contract-abi/contract/eip/erc721_metadata_interface.rb', line 33

def self.tokenURI
  function_name = 'tokenURI'
  inputs = [Input.new('_tokenId', AbiTypes::Uint.new)]
  outputs = [Output.new(AbiTypes::String.new)]
  Function.new(function_name, inputs, outputs)
end