August 2019
Intermediate to advanced
486 pages
13h 52m
English
In the ERC721 implementation, the constructor is defined as follows:
constructor () public { // register the supported interfaces to conform to ERC721 via ERC165 _registerInterface(_INTERFACE_ID_ERC721);}
As you can see in the preceding code, it registers the bytes4 signature of the ERC721 interface functions using the ERC165 internal function, _registerInterface(). By registering this, the ERC721 contract allows any other contract to call supportsInterface() and find the list of functions supported by the deployed instance of the ERC721 contract.