* Now compiling in a separate directory using truffle 5. * Ported to 0.5.1, now compiling using 0.5.1. * test now also compiles using the truffle 5 hack. * Downgraded to 0.5.0. * Sorted scripts. * Cleaned up the compile script a bit.
26 lines
779 B
Solidity
26 lines
779 B
Solidity
pragma solidity ^0.5.0;
|
|
|
|
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
|
|
* @dev TODO - update https://github.com/OpenZeppelin/openzeppelin-solidity/blob/master/contracts/token/ERC721/IERC721.sol#L17 when 1046 is finalized
|
|
*/
|
|
contract ERC20TokenMetadata is IERC20 {
|
|
function tokenURI() external view returns (string memory);
|
|
}
|
|
|
|
contract ERC20WithMetadata is ERC20TokenMetadata {
|
|
string private _tokenURI;
|
|
|
|
constructor (string memory tokenURI) public {
|
|
_tokenURI = tokenURI;
|
|
}
|
|
|
|
function tokenURI() external view returns (string memory) {
|
|
return _tokenURI;
|
|
}
|
|
}
|