ERC20Bridgable (ERC-7802) (#5735)

Co-authored-by: ernestognw <ernestognw@gmail.com>
Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com>
This commit is contained in:
Hadrien Croubois
2025-06-12 02:19:56 +02:00
committed by GitHub
parent bbc4d7ae67
commit 5c79432e40
7 changed files with 206 additions and 0 deletions

View File

@ -0,0 +1,26 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import {ERC20, ERC20Bridgeable} from "../../token/ERC20/extensions/draft-ERC20Bridgeable.sol";
abstract contract ERC20BridgeableMock is ERC20Bridgeable {
address private _bridge;
error OnlyTokenBridge();
event OnlyTokenBridgeFnCalled(address caller);
constructor(address bridge) {
_bridge = bridge;
}
function onlyTokenBridgeFn() external onlyTokenBridge {
emit OnlyTokenBridgeFnCalled(msg.sender);
}
function _checkTokenBridge(address sender) internal view override {
if (sender != _bridge) {
revert OnlyTokenBridge();
}
}
}