View Source Ethers.Contracts.ERC777 (Ethers v0.5.5)

ERC777 token interface

More info: https://ethereum.org/en/developers/docs/standards/tokens/erc-777/

Summary

Functions

Default address of the contract. Returns nil if not specified.

Prepares allowance(address holder, address spender) call parameters on the contract.

Prepares approve(address spender, uint256 value) call parameters on the contract.

Prepares authorizeOperator(address operator) call parameters on the contract.

Prepares balanceOf(address tokenHolder) call parameters on the contract.

Prepares burn(uint256 amount, bytes data) call parameters on the contract.

Prepares contract constructor values for deployment.

Prepares decimals() call parameters on the contract.

Prepares defaultOperators() call parameters on the contract.

Prepares granularity() call parameters on the contract.

Prepares isOperatorFor(address operator, address tokenHolder) call parameters on the contract.

Prepares name() call parameters on the contract.

Prepares operatorBurn(address account, uint256 amount, bytes data, bytes operatorData) call parameters on the contract.

Prepares operatorSend(address sender, address recipient, uint256 amount, bytes data, bytes operatorData) call parameters on the contract.

Prepares revokeOperator(address operator) call parameters on the contract.

Prepares send(address recipient, uint256 amount, bytes data) call parameters on the contract.

Prepares symbol() call parameters on the contract.

Prepares totalSupply() call parameters on the contract.

Prepares transfer(address recipient, uint256 amount) call parameters on the contract.

Prepares transferFrom(address holder, address recipient, uint256 amount) call parameters on the contract.

Functions

__default_address__()

@spec __default_address__() :: nil

Default address of the contract. Returns nil if not specified.

To specify a default address see Ethers.Contract

allowance(holder, spender)

Prepares allowance(address holder, address spender) call parameters on the contract.

This function should only be called for result and never in a transaction on its own. (Use Ethers.call/2)

State mutability: view

Function Parameter Types

  • holder: :address
  • spender: :address

Return Types (when called with Ethers.call/2)

  • {:uint, 256}

approve(spender, value)

Prepares approve(address spender, uint256 value) call parameters on the contract.

This function can be used for a transaction or additionally called for results (Use Ethers.send/2). No amount of Ether can be sent with this function.

State mutability: non_payable

Function Parameter Types

  • spender: :address
  • value: {:uint, 256}

Return Types (when called with Ethers.call/2)

  • :bool

authorize_operator(operator)

@spec authorize_operator(Ethers.Types.t_address()) :: Ethers.TxData.t()

Prepares authorizeOperator(address operator) call parameters on the contract.

This function can be used for a transaction or additionally called for results (Use Ethers.send/2). No amount of Ether can be sent with this function.

State mutability: non_payable

Function Parameter Types

  • operator: :address

Return Types (when called with Ethers.call/2)

This function does not return any values!

balance_of(token_holder)

@spec balance_of(Ethers.Types.t_address()) :: Ethers.TxData.t()

Prepares balanceOf(address tokenHolder) call parameters on the contract.

This function should only be called for result and never in a transaction on its own. (Use Ethers.call/2)

State mutability: view

Function Parameter Types

  • tokenHolder: :address

Return Types (when called with Ethers.call/2)

  • {:uint, 256}

burn(amount, data)

@spec burn(non_neg_integer(), binary()) :: Ethers.TxData.t()

Prepares burn(uint256 amount, bytes data) call parameters on the contract.

This function can be used for a transaction or additionally called for results (Use Ethers.send/2). No amount of Ether can be sent with this function.

State mutability: non_payable

Function Parameter Types

  • amount: {:uint, 256}
  • data: :bytes

Return Types (when called with Ethers.call/2)

This function does not return any values!

constructor(name_, symbol_, default_operators_)

@spec constructor(String.t(), String.t(), [Ethers.Types.t_address()]) :: binary()

Prepares contract constructor values for deployment.

To deploy a contracts use Ethers.deploy/2 and pass the result of this function as :encoded_constructor option.

Parameters

  • name_: :string
  • symbol_: :string
  • defaultOperators_: {:array, :address}

decimals()

@spec decimals() :: Ethers.TxData.t()

Prepares decimals() call parameters on the contract.

This function should only be called for result and never in a transaction on its own. (Use Ethers.call/2)

State mutability: pure

Return Types (when called with Ethers.call/2)

  • {:uint, 8}

default_operators()

@spec default_operators() :: Ethers.TxData.t()

Prepares defaultOperators() call parameters on the contract.

This function should only be called for result and never in a transaction on its own. (Use Ethers.call/2)

State mutability: view

Return Types (when called with Ethers.call/2)

  • {:array, :address}

granularity()

@spec granularity() :: Ethers.TxData.t()

Prepares granularity() call parameters on the contract.

This function should only be called for result and never in a transaction on its own. (Use Ethers.call/2)

State mutability: view

Return Types (when called with Ethers.call/2)

  • {:uint, 256}

is_operator_for(operator, token_holder)

Prepares isOperatorFor(address operator, address tokenHolder) call parameters on the contract.

This function should only be called for result and never in a transaction on its own. (Use Ethers.call/2)

State mutability: view

Function Parameter Types

  • operator: :address
  • tokenHolder: :address

Return Types (when called with Ethers.call/2)

  • :bool

name()

@spec name() :: Ethers.TxData.t()

Prepares name() call parameters on the contract.

This function should only be called for result and never in a transaction on its own. (Use Ethers.call/2)

State mutability: view

Return Types (when called with Ethers.call/2)

  • :string

operator_burn(account, amount, data, operator_data)

@spec operator_burn(Ethers.Types.t_address(), non_neg_integer(), binary(), binary()) ::
  Ethers.TxData.t()

Prepares operatorBurn(address account, uint256 amount, bytes data, bytes operatorData) call parameters on the contract.

This function can be used for a transaction or additionally called for results (Use Ethers.send/2). No amount of Ether can be sent with this function.

State mutability: non_payable

Function Parameter Types

  • account: :address
  • amount: {:uint, 256}
  • data: :bytes
  • operatorData: :bytes

Return Types (when called with Ethers.call/2)

This function does not return any values!

operator_send(sender, recipient, amount, data, operator_data)

Prepares operatorSend(address sender, address recipient, uint256 amount, bytes data, bytes operatorData) call parameters on the contract.

This function can be used for a transaction or additionally called for results (Use Ethers.send/2). No amount of Ether can be sent with this function.

State mutability: non_payable

Function Parameter Types

  • sender: :address
  • recipient: :address
  • amount: {:uint, 256}
  • data: :bytes
  • operatorData: :bytes

Return Types (when called with Ethers.call/2)

This function does not return any values!

revoke_operator(operator)

@spec revoke_operator(Ethers.Types.t_address()) :: Ethers.TxData.t()

Prepares revokeOperator(address operator) call parameters on the contract.

This function can be used for a transaction or additionally called for results (Use Ethers.send/2). No amount of Ether can be sent with this function.

State mutability: non_payable

Function Parameter Types

  • operator: :address

Return Types (when called with Ethers.call/2)

This function does not return any values!

send(recipient, amount, data)

Prepares send(address recipient, uint256 amount, bytes data) call parameters on the contract.

This function can be used for a transaction or additionally called for results (Use Ethers.send/2). No amount of Ether can be sent with this function.

State mutability: non_payable

Function Parameter Types

  • recipient: :address
  • amount: {:uint, 256}
  • data: :bytes

Return Types (when called with Ethers.call/2)

This function does not return any values!

symbol()

@spec symbol() :: Ethers.TxData.t()

Prepares symbol() call parameters on the contract.

This function should only be called for result and never in a transaction on its own. (Use Ethers.call/2)

State mutability: view

Return Types (when called with Ethers.call/2)

  • :string

total_supply()

@spec total_supply() :: Ethers.TxData.t()

Prepares totalSupply() call parameters on the contract.

This function should only be called for result and never in a transaction on its own. (Use Ethers.call/2)

State mutability: view

Return Types (when called with Ethers.call/2)

  • {:uint, 256}

transfer(recipient, amount)

Prepares transfer(address recipient, uint256 amount) call parameters on the contract.

This function can be used for a transaction or additionally called for results (Use Ethers.send/2). No amount of Ether can be sent with this function.

State mutability: non_payable

Function Parameter Types

  • recipient: :address
  • amount: {:uint, 256}

Return Types (when called with Ethers.call/2)

  • :bool

transfer_from(holder, recipient, amount)

Prepares transferFrom(address holder, address recipient, uint256 amount) call parameters on the contract.

This function can be used for a transaction or additionally called for results (Use Ethers.send/2). No amount of Ether can be sent with this function.

State mutability: non_payable

Function Parameter Types

  • holder: :address
  • recipient: :address
  • amount: {:uint, 256}

Return Types (when called with Ethers.call/2)

  • :bool