Files
openzeppelin-contracts/contracts/token/ERC20/ERC20Pausable.sol
Nicolás Venturo 7acd60d152 Add notice about deprecated Crowdsales (#2116)
* Remove crowdsales from sidebar documentation, add links to old version

* Remove mentions of Crowdsales from the documentation
2020-03-11 15:26:21 -03:00

28 lines
788 B
Solidity

pragma solidity ^0.6.0;
import "./ERC20.sol";
import "../../lifecycle/Pausable.sol";
/**
* @title Pausable token
* @dev ERC20 with pausable transfers and allowances.
*
* Useful for scenarios such as preventing trades until the end of an evaluation
* period, or having an emergency switch for freezing all token transfers in the
* event of a large bug.
*/
contract ERC20Pausable is ERC20, Pausable {
/**
* @dev See {ERC20-_beforeTokenTransfer}.
*
* Requirements:
*
* - the contract must not be paused.
*/
function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual override {
super._beforeTokenTransfer(from, to, amount);
require(!paused(), "ERC20Pausable: token transfer while paused");
}
}