Class: EthereumContractABI::ContractInterface::EIP::ERC165Interface

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

Class Method Summary collapse

Class Method Details

.functionsObject



17
18
19
# File 'lib/ethereum-contract-abi/contract/eip/erc165_interface.rb', line 17

def self.functions
  [self.supportsInterface]
end

.is_implemented_by?(contract) ⇒ Boolean

Returns:

  • (Boolean)


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

def self.is_implemented_by?(contract)
  contract.has_function?(self.supportsInterface)
end

.supportsInterfaceObject



21
22
23
24
25
26
# File 'lib/ethereum-contract-abi/contract/eip/erc165_interface.rb', line 21

def self.supportsInterface
  function_name = 'supportsInterface'
  inputs = [Input.new( 'interfaceID', AbiTypes::Bytes.new(4))]
  outputs = [Output.new(AbiTypes::Bool.new)]
  Function.new(function_name, inputs, outputs)
end