Что такое IRC20?

Я понимаю стандарты ERC20, которые включают такие функции, как totalSupply().

баланс()

разрешение()

передача()

утвердить()

передача из ()

Когда я проверял openzeppelin, я мог видеть «contract ERC20 is IERC20», у которого есть некоторые дополнительные функции.

Вопрос

  1. Что такое IRC20?
  2. Чем он отличается от ERC20?

Ответы (1)

contract ERC20 is IERC20

Интерпретируйте это так:

ERC20является реализацией интерфейса, определенного в IERC20.

IERC20определяет сигнатуры функций без указания поведения; имена функций, входы и выходы, но не процесс. ERC20наследует этот интерфейс и требуется для реализации всех описанных функций, иначе контракт не будет развернут.

Если это развернуто, то можно смело сказать, что все функции, описанные в интерфейсе ERC20, выложенном в , IERC20имеют соответствующие реализации в ERC20.

Надеюсь, поможет.

Я вижу, что в IERC20 есть новые методы, такие как уменьшениеAllowance(), _mint(), _burn() и некоторые другие. Включены ли они в новый стандарт ERC20? Пока я изучал это пару месяцев назад, я не видел этого..
ERC20 определяет поведение некоторых стандартных функций, но в спецификации нет ничего, что мешало бы расширению. Эти функции относятся к Burnable, Mintable и другим расширениям. Когда я смотрю на IRC20, я не вижу этих нестандартных расширений. github.com/OpenZeppelin/openzeppelin-solidity/blob/master/…