diff options
author | Amir Bandeali <abandeali1@gmail.com> | 2018-02-02 07:48:06 +0800 |
---|---|---|
committer | Amir Bandeali <abandeali1@gmail.com> | 2018-02-03 01:39:08 +0800 |
commit | d5d6079b673d0a6d311f349dba291da18c846d9e (patch) | |
tree | b87cb20d4ce387cd35316d2785c3ab8968c51911 /packages/contracts/src/current/utils/SafeMath | |
parent | bb4c8bf8eb8c347900980d92534b19a3a80c690b (diff) | |
download | dexon-sol-tools-d5d6079b673d0a6d311f349dba291da18c846d9e.tar dexon-sol-tools-d5d6079b673d0a6d311f349dba291da18c846d9e.tar.gz dexon-sol-tools-d5d6079b673d0a6d311f349dba291da18c846d9e.tar.bz2 dexon-sol-tools-d5d6079b673d0a6d311f349dba291da18c846d9e.tar.lz dexon-sol-tools-d5d6079b673d0a6d311f349dba291da18c846d9e.tar.xz dexon-sol-tools-d5d6079b673d0a6d311f349dba291da18c846d9e.tar.zst dexon-sol-tools-d5d6079b673d0a6d311f349dba291da18c846d9e.zip |
Rename directories
Diffstat (limited to 'packages/contracts/src/current/utils/SafeMath')
-rw-r--r-- | packages/contracts/src/current/utils/SafeMath/SafeMath.sol | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/packages/contracts/src/current/utils/SafeMath/SafeMath.sol b/packages/contracts/src/current/utils/SafeMath/SafeMath.sol new file mode 100644 index 000000000..955a9e379 --- /dev/null +++ b/packages/contracts/src/current/utils/SafeMath/SafeMath.sol @@ -0,0 +1,73 @@ +pragma solidity ^0.4.18; + +contract SafeMath { + function safeMul(uint a, uint b) + internal + pure + returns (uint256) + { + uint c = a * b; + assert(a == 0 || c / a == b); + return c; + } + + function safeDiv(uint a, uint b) + internal + pure + returns (uint256) + { + uint c = a / b; + return c; + } + + function safeSub(uint a, uint b) + internal + pure + returns (uint256) + { + assert(b <= a); + return a - b; + } + + function safeAdd(uint a, uint b) + internal + pure + returns (uint256) + { + uint c = a + b; + assert(c >= a); + return c; + } + + function max64(uint64 a, uint64 b) + internal + pure + returns (uint256) + { + return a >= b ? a : b; + } + + function min64(uint64 a, uint64 b) + internal + pure + returns (uint256) + { + return a < b ? a : b; + } + + function max256(uint256 a, uint256 b) + internal + pure + returns (uint256) + { + return a >= b ? a : b; + } + + function min256(uint256 a, uint256 b) + internal + pure + returns (uint256) + { + return a < b ? a : b; + } +} |