generated from hrkrshnn/tstore-template
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
be6492c
commit b7dcbdc
Showing
6 changed files
with
1,101 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
solady/=lib/solady/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
// SPDX-License-Identifier: MIT | ||
pragma solidity ^0.8.4; | ||
|
||
import {TERC20} from "src/TERC20.sol"; | ||
|
||
/// @dev WARNING! This mock is strictly intended for testing purposes only. | ||
/// Do NOT copy anything here into production code unless you really know what you are doing. | ||
contract MockTERC20 is TERC20 { | ||
string internal _name; | ||
string internal _symbol; | ||
uint8 internal _decimals; | ||
bytes32 internal immutable _nameHash; | ||
|
||
constructor(string memory name_, string memory symbol_, uint8 decimals_) { | ||
_name = name_; | ||
_symbol = symbol_; | ||
_decimals = decimals_; | ||
_nameHash = keccak256(bytes(name_)); | ||
} | ||
|
||
function _constantNameHash() internal view virtual override returns (bytes32) { | ||
return _nameHash; | ||
} | ||
|
||
function name() public view virtual override returns (string memory) { | ||
return _name; | ||
} | ||
|
||
function symbol() public view virtual override returns (string memory) { | ||
return _symbol; | ||
} | ||
|
||
function decimals() public view virtual override returns (uint8) { | ||
return _decimals; | ||
} | ||
|
||
function mint(address to, uint256 value) public virtual { | ||
_mint(_brutalized(to), value); | ||
} | ||
|
||
function burn(address from, uint256 value) public virtual { | ||
_burn(_brutalized(from), value); | ||
} | ||
|
||
function directTransfer(address from, address to, uint256 amount) public virtual { | ||
_transfer(_brutalized(from), _brutalized(to), amount); | ||
} | ||
|
||
function directSpendAllowance(address owner, address spender, uint256 amount) public virtual { | ||
_spendAllowance(_brutalized(owner), _brutalized(spender), amount); | ||
} | ||
|
||
function transfer(address to, uint256 amount) public virtual override returns (bool) { | ||
return super.transfer(_brutalized(to), amount); | ||
} | ||
|
||
function transferFrom(address from, address to, uint256 amount) | ||
public | ||
virtual | ||
override | ||
returns (bool) | ||
{ | ||
return super.transferFrom(_brutalized(from), _brutalized(to), amount); | ||
} | ||
|
||
function _brutalized(address a) internal view returns (address result) { | ||
/// @solidity memory-safe-assembly | ||
assembly { | ||
result := or(a, shl(160, gas())) | ||
} | ||
} | ||
} |
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.