2025-01-22 16:10:16 +01:00
|
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
pragma solidity 0.8.28;
|
|
|
|
|
|
|
|
import "./Timestamps.sol";
|
|
|
|
|
|
|
|
type TokensPerSecond is int256;
|
|
|
|
|
2025-01-23 15:05:07 +01:00
|
|
|
using {_tokensPerSecondNegate as -} for TokensPerSecond global;
|
|
|
|
using {_tokensPerSecondEquals as ==} for TokensPerSecond global;
|
2025-01-22 16:10:16 +01:00
|
|
|
|
2025-01-23 15:05:07 +01:00
|
|
|
function _tokensPerSecondNegate(
|
|
|
|
TokensPerSecond rate
|
|
|
|
) pure returns (TokensPerSecond) {
|
2025-01-22 16:10:16 +01:00
|
|
|
return TokensPerSecond.wrap(-TokensPerSecond.unwrap(rate));
|
|
|
|
}
|
2025-01-23 10:19:41 +01:00
|
|
|
|
2025-01-23 15:05:07 +01:00
|
|
|
function _tokensPerSecondEquals(
|
|
|
|
TokensPerSecond a,
|
|
|
|
TokensPerSecond b
|
|
|
|
) pure returns (bool) {
|
2025-01-23 10:19:41 +01:00
|
|
|
return TokensPerSecond.unwrap(a) == TokensPerSecond.unwrap(b);
|
|
|
|
}
|