* Change import path from zos-lib to upgrades in all contracts * Update readme with new naming * Update package and deps names * Change path to initializable in AST of networks.jsons * Migrate manifest version * Use new oz file locations * Rename in ERC20Migrator comments * Update SDK install instructions in README * Update gitignore to use new session file name * trigger CI * Fixes to readme and package version * Use 2.5.0 release of OpenZeppelin SDK
30 lines
827 B
Solidity
30 lines
827 B
Solidity
pragma solidity ^0.5.2;
|
|
|
|
import "@openzeppelin/upgrades/contracts/Initializable.sol";
|
|
import "./ERC20.sol";
|
|
|
|
/**
|
|
* @title Burnable Token
|
|
* @dev Token that can be irreversibly burned (destroyed).
|
|
*/
|
|
contract ERC20Burnable is Initializable, ERC20 {
|
|
/**
|
|
* @dev Burns a specific amount of tokens.
|
|
* @param value The amount of token to be burned.
|
|
*/
|
|
function burn(uint256 value) public {
|
|
_burn(msg.sender, value);
|
|
}
|
|
|
|
/**
|
|
* @dev Burns a specific amount of tokens from the target address and decrements allowance
|
|
* @param from address The account whose tokens will be burned.
|
|
* @param value uint256 The amount of token to be burned.
|
|
*/
|
|
function burnFrom(address from, uint256 value) public {
|
|
_burnFrom(from, value);
|
|
}
|
|
|
|
uint256[50] private ______gap;
|
|
}
|