TokenMetadata.sol 759 B

12345678910111213141516171819202122232425
  1. pragma solidity ^0.4.24;
  2. import "../../token/ERC20/IERC20.sol";
  3. /**
  4. * @title ERC-1047 Token Metadata
  5. * @dev See https://eips.ethereum.org/EIPS/eip-1046
  6. * @dev tokenURI must respond with a URI that implements https://eips.ethereum.org/EIPS/eip-1047
  7. * @dev TODO - update https://github.com/OpenZeppelin/openzeppelin-solidity/blob/master/contracts/token/ERC721/IERC721.sol#L17 when 1046 is finalized
  8. */
  9. contract ERC20TokenMetadata is IERC20 {
  10. function tokenURI() external view returns (string);
  11. }
  12. contract ERC20WithMetadata is ERC20TokenMetadata {
  13. string private _tokenURI;
  14. constructor (string tokenURI) public {
  15. _tokenURI = tokenURI;
  16. }
  17. function tokenURI() external view returns (string) {
  18. return _tokenURI;
  19. }
  20. }