30 lines
784 B
Solidity
30 lines
784 B
Solidity
pragma solidity ^0.5.0;
|
|
|
|
import "zos-lib/contracts/Initializable.sol";
|
|
import "../../token/ERC20/IERC20.sol";
|
|
|
|
/**
|
|
* @title ERC-1047 Token Metadata
|
|
* @dev See https://eips.ethereum.org/EIPS/eip-1046
|
|
* @dev tokenURI must respond with a URI that implements https://eips.ethereum.org/EIPS/eip-1047
|
|
*/
|
|
contract ERC20TokenMetadata is Initializable, IERC20 {
|
|
function tokenURI() external view returns (string memory);
|
|
|
|
uint256[50] private ______gap;
|
|
}
|
|
|
|
contract ERC20WithMetadata is Initializable, ERC20TokenMetadata {
|
|
string private _tokenURI;
|
|
|
|
function initialize(string memory tokenURI) public {
|
|
_tokenURI = tokenURI;
|
|
}
|
|
|
|
function tokenURI() external view returns (string memory) {
|
|
return _tokenURI;
|
|
}
|
|
|
|
uint256[50] private ______gap;
|
|
}
|