| A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | AA | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | |||||||||||||||||||||||||||
2 | |||||||||||||||||||||||||||
3 | bridgeAsset, where asset is | Lx gas_token is | Lx checks (internal stuff in bridgeAsset) | Ly gas_token is | Ly checks (internal stuff in claimAsset) | claimAsset transfers (aka what destination receives) | |||||||||||||||||||||
4 | A1 | gas token (eth) | Lx_gas_token==eth | token info is null | Ly_gas_token == Lx_gas_token | weth is null | gas token (eth) | ||||||||||||||||||||
5 | A2 | ERC20 | token info is erc 20 info | token info is not null, and not gas token | ERC20 | ||||||||||||||||||||||
6 | |||||||||||||||||||||||||||
7 | A3 | gas token (eth) | token info is null | Ly_gas_token != Lx_gas_token | weth is not null | Ly.WETH | |||||||||||||||||||||
8 | A4 | ERC20 | token info is erc 20 info | Ly_gas_token != Lx_gas_token, and erc20!=Ly_gas_token | token info is not null, and not gas token | ERC20 | |||||||||||||||||||||
9 | A5 | ERC20 | token info is erc 20 info | Ly_gas_token != Lx_gas_token, but erc20==Ly_gas_token | token info is not null, and it's gas token | gas token (not eth) | |||||||||||||||||||||
10 | |||||||||||||||||||||||||||
11 | B1 | gas token (not eth) | Lx_gas_token!=eth | token info is gas token | Ly_gas_token == Lx_gas_token | token info is not null, and is gas token | gas token (not eth) | ||||||||||||||||||||
12 | B2 | Lx.WETH | token info null, Lx.WETH burned | token info is null, Ly.WETH exists | Ly.WETH | ||||||||||||||||||||||
13 | B3 | ERC20 | token info is erc 20 info | token info is not null, and not gas token | ERC20 | ||||||||||||||||||||||
14 | |||||||||||||||||||||||||||
15 | B4 | gas token (not eth) | token info is gas token | Ly_gas_token != Lx_gas_token | token info is not null, and not gas token | ERC20 | |||||||||||||||||||||
16 | |||||||||||||||||||||||||||
17 | B5 | Lx.WETH | token info null, Lx.WETH burned | Ly_gas_token != Lx_gas_token, but Ly_gas_token == eth | token info is null, Ly.WETH null | gas token (eth) | |||||||||||||||||||||
18 | B6 | Lx.WETH | token info null, Lx.WETH burned | Ly_gas_token != Lx_gas_token, and Ly_gas_token != eth | token info is null, Ly.WETH exists | Ly.WETH | |||||||||||||||||||||
19 | B7 | ERC20 | token info is erc 20 info | Ly_gas_token != Lx_gas_token, and erc20!=Ly_gas_token | token info is not null, and not gas token | ERC20 | |||||||||||||||||||||
20 | B8 | ERC20 | token info is erc 20 info | Ly_gas_token != Lx_gas_token, but erc20==Ly_gas_token | token info is not null, and it's gas token | gas token (not eth) | |||||||||||||||||||||
21 | |||||||||||||||||||||||||||
22 | |||||||||||||||||||||||||||
23 | |||||||||||||||||||||||||||
24 | NOTE: not yet vetted by JL, but wrote tests against this spec https://github.com/omnifient/lxly-bridge-and-call/blob/main/test/integration/BridgeWithDifferentAssetTypes.t.sol | ||||||||||||||||||||||||||
25 | |||||||||||||||||||||||||||
26 | |||||||||||||||||||||||||||
27 | |||||||||||||||||||||||||||
28 | |||||||||||||||||||||||||||
29 | |||||||||||||||||||||||||||
30 | |||||||||||||||||||||||||||
31 | |||||||||||||||||||||||||||
32 | |||||||||||||||||||||||||||
33 | |||||||||||||||||||||||||||
34 | |||||||||||||||||||||||||||
35 | |||||||||||||||||||||||||||
36 | |||||||||||||||||||||||||||
37 | |||||||||||||||||||||||||||
38 | |||||||||||||||||||||||||||
39 | |||||||||||||||||||||||||||
40 | |||||||||||||||||||||||||||
41 | |||||||||||||||||||||||||||
42 | |||||||||||||||||||||||||||
43 | |||||||||||||||||||||||||||
44 | |||||||||||||||||||||||||||
45 | |||||||||||||||||||||||||||
46 | |||||||||||||||||||||||||||
47 | |||||||||||||||||||||||||||
48 | |||||||||||||||||||||||||||
49 | |||||||||||||||||||||||||||
50 | |||||||||||||||||||||||||||
51 | |||||||||||||||||||||||||||
52 | |||||||||||||||||||||||||||
53 | |||||||||||||||||||||||||||
54 | |||||||||||||||||||||||||||
55 | |||||||||||||||||||||||||||
56 | |||||||||||||||||||||||||||
57 | |||||||||||||||||||||||||||
58 | |||||||||||||||||||||||||||
59 | |||||||||||||||||||||||||||
60 | |||||||||||||||||||||||||||
61 | |||||||||||||||||||||||||||
62 | |||||||||||||||||||||||||||
63 | |||||||||||||||||||||||||||
64 | |||||||||||||||||||||||||||
65 | |||||||||||||||||||||||||||
66 | |||||||||||||||||||||||||||
67 | |||||||||||||||||||||||||||
68 | |||||||||||||||||||||||||||
69 | |||||||||||||||||||||||||||
70 | |||||||||||||||||||||||||||
71 | |||||||||||||||||||||||||||
72 | |||||||||||||||||||||||||||
73 | |||||||||||||||||||||||||||
74 | |||||||||||||||||||||||||||
75 | |||||||||||||||||||||||||||
76 | |||||||||||||||||||||||||||
77 | |||||||||||||||||||||||||||
78 | |||||||||||||||||||||||||||
79 | |||||||||||||||||||||||||||
80 | |||||||||||||||||||||||||||
81 | |||||||||||||||||||||||||||
82 | |||||||||||||||||||||||||||
83 | |||||||||||||||||||||||||||
84 | |||||||||||||||||||||||||||
85 | |||||||||||||||||||||||||||
86 | |||||||||||||||||||||||||||
87 | |||||||||||||||||||||||||||
88 | |||||||||||||||||||||||||||
89 | |||||||||||||||||||||||||||
90 | |||||||||||||||||||||||||||
91 | |||||||||||||||||||||||||||
92 | |||||||||||||||||||||||||||
93 | |||||||||||||||||||||||||||
94 | |||||||||||||||||||||||||||
95 | |||||||||||||||||||||||||||
96 | |||||||||||||||||||||||||||
97 | |||||||||||||||||||||||||||
98 | |||||||||||||||||||||||||||
99 | |||||||||||||||||||||||||||
100 |