/
receivers.sol
46 lines (37 loc) · 1.37 KB
/
receivers.sol
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;
import "../../access/Ownable.sol";
import "../../crosschain/amb/CrossChainEnabledAMB.sol";
import "../../crosschain/arbitrum/CrossChainEnabledArbitrumL1.sol";
import "../../crosschain/arbitrum/CrossChainEnabledArbitrumL2.sol";
import "../../crosschain/optimism/CrossChainEnabledOptimism.sol";
import "../../crosschain/polygon/CrossChainEnabledPolygonChild.sol";
abstract contract Receiver is Ownable, CrossChainEnabled {
function crossChainRestricted() external onlyCrossChain {}
function crossChainOwnerRestricted() external onlyCrossChainSender(owner()) {}
}
/**
* AMB
*/
contract CrossChainEnabledAMBMock is Receiver, CrossChainEnabledAMB {
constructor(address bridge) CrossChainEnabledAMB(bridge) {}
}
/**
* Arbitrum
*/
contract CrossChainEnabledArbitrumL1Mock is Receiver, CrossChainEnabledArbitrumL1 {
constructor(address bridge) CrossChainEnabledArbitrumL1(bridge) {}
}
contract CrossChainEnabledArbitrumL2Mock is Receiver, CrossChainEnabledArbitrumL2 {}
/**
* Optimism
*/
contract CrossChainEnabledOptimismMock is Receiver, CrossChainEnabledOptimism {
constructor(address bridge) CrossChainEnabledOptimism(bridge) {}
}
/**
* Polygon
*/
contract CrossChainEnabledPolygonChildMock is Receiver, CrossChainEnabledPolygonChild {
constructor(address bridge) CrossChainEnabledPolygonChild(bridge) {}
}