mirror of
https://github.com/th30d4y/OpenLearnX.git
synced 2026-05-26 19:26:33 +00:00
Fix .gitignore: stop tracking ignored files
This commit is contained in:
@@ -0,0 +1,75 @@
|
||||
// SPDX-License-Identifier: MIT
|
||||
// OpenZeppelin Contracts (last updated v4.9.0) (utils/Timers.sol)
|
||||
|
||||
pragma solidity ^0.8.0;
|
||||
|
||||
/**
|
||||
* @dev Tooling for timepoints, timers and delays
|
||||
*
|
||||
* CAUTION: This file is deprecated as of 4.9 and will be removed in the next major release.
|
||||
*/
|
||||
library Timers {
|
||||
struct Timestamp {
|
||||
uint64 _deadline;
|
||||
}
|
||||
|
||||
function getDeadline(Timestamp memory timer) internal pure returns (uint64) {
|
||||
return timer._deadline;
|
||||
}
|
||||
|
||||
function setDeadline(Timestamp storage timer, uint64 timestamp) internal {
|
||||
timer._deadline = timestamp;
|
||||
}
|
||||
|
||||
function reset(Timestamp storage timer) internal {
|
||||
timer._deadline = 0;
|
||||
}
|
||||
|
||||
function isUnset(Timestamp memory timer) internal pure returns (bool) {
|
||||
return timer._deadline == 0;
|
||||
}
|
||||
|
||||
function isStarted(Timestamp memory timer) internal pure returns (bool) {
|
||||
return timer._deadline > 0;
|
||||
}
|
||||
|
||||
function isPending(Timestamp memory timer) internal view returns (bool) {
|
||||
return timer._deadline > block.timestamp;
|
||||
}
|
||||
|
||||
function isExpired(Timestamp memory timer) internal view returns (bool) {
|
||||
return isStarted(timer) && timer._deadline <= block.timestamp;
|
||||
}
|
||||
|
||||
struct BlockNumber {
|
||||
uint64 _deadline;
|
||||
}
|
||||
|
||||
function getDeadline(BlockNumber memory timer) internal pure returns (uint64) {
|
||||
return timer._deadline;
|
||||
}
|
||||
|
||||
function setDeadline(BlockNumber storage timer, uint64 timestamp) internal {
|
||||
timer._deadline = timestamp;
|
||||
}
|
||||
|
||||
function reset(BlockNumber storage timer) internal {
|
||||
timer._deadline = 0;
|
||||
}
|
||||
|
||||
function isUnset(BlockNumber memory timer) internal pure returns (bool) {
|
||||
return timer._deadline == 0;
|
||||
}
|
||||
|
||||
function isStarted(BlockNumber memory timer) internal pure returns (bool) {
|
||||
return timer._deadline > 0;
|
||||
}
|
||||
|
||||
function isPending(BlockNumber memory timer) internal view returns (bool) {
|
||||
return timer._deadline > block.number;
|
||||
}
|
||||
|
||||
function isExpired(BlockNumber memory timer) internal view returns (bool) {
|
||||
return isStarted(timer) && timer._deadline <= block.number;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user