File tree 8 files changed +177
-0
lines changed
8 files changed +177
-0
lines changed Original file line number Diff line number Diff line change
1
+
2
+ digraph StorageDiagram {
3
+ rankdir =LR
4
+ color =black
5
+ arrowhead =open
6
+ node [shape =record, style =filled, fillcolor =gray95 fontname =" Courier New" ]
7
+ 8 [label =" Bridge \<\< Contract\>\>\n | {{ slot| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11-50 } | { type: \< inherited contract\> .variable (bytes) | { unallocated (30) | bool: Initializable._initializing (1) | bool: Initializable._initialized (1) } | { <5> mapping\( address=\> InOutInfo\) : AbsBridge.allowedDelayedInboxesMap (32) } | { <8> mapping\( address=\> InOutInfo\) : AbsBridge.allowedOutboxesMap (32) } | { <10> address[]: AbsBridge.allowedDelayedInboxList (32) } | { <12> address[]: AbsBridge.allowedOutboxList (32) } | { unallocated (12) | address: AbsBridge._activeOutbox (20) } | { <15> bytes32[]: AbsBridge.delayedInboxAccs (32) } | { <17> bytes32[]: AbsBridge.sequencerInboxAccs (32) } | { unallocated (12) | IOwnable: AbsBridge.rollup (20) } | { unallocated (12) | address: AbsBridge.sequencerInbox (20) } | { uint256: AbsBridge.sequencerReportedSubMessageCount (32) } | { <61> uint256[40]: AbsBridge.__gap (1280) }}}" ]
8
+
9
+ 1 [label =" InOutInfo \<\< Struct\>\>\n | {{ slot| 0 | 1 } | { type: variable (bytes) | { uint256: index (32) } | { unallocated (31) | bool: allowed (1) }}}" ]
10
+
11
+ 2 [label =" InOutInfo \<\< Struct\>\>\n | {{ slot| 0 | 1 } | { type: variable (bytes) | { uint256: index (32) } | { unallocated (31) | bool: allowed (1) }}}" ]
12
+
13
+ 3 [label =" address[]: allowedDelayedInboxList \<\< Array\>\>\n 0x11987c15ef5ed64ec2e3cd9cfc79d7bd155aea3982ea59f35a5e6b5c1593a54b | {{ slot| 0 } | { type: variable (bytes) | { unallocated (12) | address (20) }}}" ]
14
+
15
+ 4 [label =" address[]: allowedOutboxList \<\< Array\>\>\n 0x68f9c7fa29c0442459fc0d2760448ff932de4dd67b90b4a6ac1899621cfd70a7 | {{ slot| 0 } | { type: variable (bytes) | { unallocated (12) | address (20) }}}" ]
16
+
17
+ 5 [label =" bytes32[]: delayedInboxAccs \<\< Array\>\>\n 0x5ff1374942f1d7624ea1478457e8132b05531ee44999ffc0f33a70926c6a0d30 | {{ slot| 0 } | { type: variable (bytes) | { bytes32 (32) }}}" ]
18
+
19
+ 6 [label =" bytes32[]: sequencerInboxAccs \<\< Array\>\>\n 0x995663702627f3d8fc4237c51a46b303536bb17f3f65e07c08ad05fecbf4d88e | {{ slot| 0 } | { type: variable (bytes) | { bytes32 (32) }}}" ]
20
+
21
+ 7 [label="uint256[40]: __gap \<\<Array\>\>\n | {{ slot| 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 | 47 | 48 | 49 | 50 } | { type: variable (bytes) | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) }}}"]
22
+
23
+ 8:5 -> 1
24
+ 8:8 -> 2
25
+ 8:10 -> 3
26
+ 8:12 -> 4
27
+ 8:15 -> 5
28
+ 8:17 -> 6
29
+ 8:61 -> 7
30
+ }
Original file line number Diff line number Diff line change
1
+
2
+ digraph StorageDiagram {
3
+ rankdir =LR
4
+ color =black
5
+ arrowhead =open
6
+ node [shape =record, style =filled, fillcolor =gray95 fontname =" Courier New" ]
7
+ 1 [label =" ChallengeManager \<\< Contract\>\>\n | {{ slot| 0 | 1 | 2 | 3 | 4 | 5 } | { type: \< inherited contract\> .variable (bytes) | { unallocated (24) | uint64: totalChallengesCreated (8) } | { mapping\( uint256=\> ChallengeLib.Challenge\) : challenges (32) } | { unallocated (12) | IChallengeResultReceiver: resultReceiver (20) } | { unallocated (12) | ISequencerInbox: sequencerInbox (20) } | { unallocated (12) | IBridge: bridge (20) } | { unallocated (12) | IOneStepProofEntry: osp (20) }}}" ]
8
+
9
+ }
Original file line number Diff line number Diff line change
1
+
2
+ digraph StorageDiagram {
3
+ rankdir =LR
4
+ color =black
5
+ arrowhead =open
6
+ node [shape =record, style =filled, fillcolor =gray95 fontname =" Courier New" ]
7
+ 4 [label =" Inbox \<\< Contract\>\>\n | {{ slot| 0 | 1-50 | 51 | 52-100 | 101 | 102 | 103 | 104-150 } | { type: \< inherited contract\> .variable (bytes) | { unallocated (30) | bool: Initializable._initializing (1) | bool: Initializable._initialized (1) } | { <53> uint256[50]: ContextUpgradeable.__gap (1600) } | { unallocated (31) | bool: PausableUpgradeable._paused (1) } | { <104> uint256[49]: PausableUpgradeable.__gap (1568) } | { unallocated (12) | IBridge: AbsInbox.bridge (20) } | { unallocated (11) | bool: AbsInbox.allowListEnabled (1) | ISequencerInbox: AbsInbox.sequencerInbox (20) } | { mapping\( address=\> bool\) : AbsInbox.isAllowed (32) } | { <156> uint256[47]: AbsInbox.__gap (1504) }}}" ]
8
+
9
+ 1 [label="uint256[50]: __gap \<\<Array\>\>\n | {{ slot| 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 | 47 | 48 | 49 | 50 } | { type: variable (bytes) | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) }}}"]
10
+
11
+ 2 [label="uint256[49]: __gap \<\<Array\>\>\n | {{ slot| 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 } | { type: variable (bytes) | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) }}}"]
12
+
13
+ 3 [label="uint256[47]: __gap \<\<Array\>\>\n | {{ slot| 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 } | { type: variable (bytes) | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) }}}"]
14
+
15
+ 4:53 -> 1
16
+ 4:104 -> 2
17
+ 4:156 -> 3
18
+ }
Original file line number Diff line number Diff line change
1
+
2
+ digraph StorageDiagram {
3
+ rankdir =LR
4
+ color =black
5
+ arrowhead =open
6
+ node [shape =record, style =filled, fillcolor =gray95 fontname =" Courier New" ]
7
+ 3 [label =" Outbox \<\< Contract\>\>\n | {{ slot| 0 | 1 | 2 | 3 | 4-7 | 8-49 } | { type: \< inherited contract\> .variable (bytes) | { unallocated (12) | address: AbsOutbox.rollup (20) } | { unallocated (12) | IBridge: AbsOutbox.bridge (20) } | { mapping\( uint256=\> bytes32\) : AbsOutbox.spent (32) } | { mapping\( bytes32=\> bytes32\) : AbsOutbox.roots (32) } | { <11> L2ToL1Context: AbsOutbox.context (128) } | { <54> uint256[42]: AbsOutbox.__gap (1344) }}}" ]
8
+
9
+ 1 [label =" L2ToL1Context \<\< Struct\>\>\n | {{ slot| 4 | 5 | 6 | 7 } | { type: variable (bytes) | { uint128: timestamp (16) | uint128: l2Block (16) } | { bytes32: outputId (32) } | { uint96: l1Block (12) | address: sender (20) } | { uint256: withdrawalAmount (32) }}}" ]
10
+
11
+ 2 [label="uint256[42]: __gap \<\<Array\>\>\n | {{ slot| 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 | 47 | 48 | 49 } | { type: variable (bytes) | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) }}}"]
12
+
13
+ 3:11 -> 1
14
+ 3:54 -> 2
15
+ }
Original file line number Diff line number Diff line change
1
+
2
+ digraph StorageDiagram {
3
+ rankdir =LR
4
+ color =black
5
+ arrowhead =open
6
+ node [shape =record, style =filled, fillcolor =gray95 fontname =" Courier New" ]
7
+ 8 [label="RollupAdminLogic \<\<Contract\>\>\n | {{ slot| 0 | 1-50 | 51 | 52-100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 } | { type: \<inherited contract\>.variable (bytes) | { unallocated (30) | bool: Initializable._initializing (1) | bool: Initializable._initialized (1) } | { <53> uint256[50]: ContextUpgradeable.__gap (1600) } | { unallocated (31) | bool: PausableUpgradeable._paused (1) } | { <104> uint256[49]: PausableUpgradeable.__gap (1568) } | { unallocated (16) | uint64: RollupCore.extraChallengeTimeBlocks (8) | uint64: RollupCore.confirmPeriodBlocks (8) } | { uint256: RollupCore.chainId (32) } | { uint256: RollupCore.baseStake (32) } | { bytes32: RollupCore.wasmModuleRoot (32) } | { unallocated (12) | IInboxBase: RollupCore.inbox (20) } | { unallocated (12) | IBridge: RollupCore.bridge (20) } | { unallocated (12) | IOutbox: RollupCore.outbox (20) } | { unallocated (12) | ISequencerInbox: RollupCore.sequencerInbox (20) } | { unallocated (12) | IRollupEventInbox: RollupCore.rollupEventInbox (20) } | { unallocated (12) | IChallengeManager: RollupCore.challengeManager (20) } | { unallocated (12) | address: RollupCore.validatorUtils (20) } | { unallocated (12) | address: RollupCore.validatorWalletCreator (20) } | { unallocated (12) | address: RollupCore.loserStakeEscrow (20) } | { unallocated (12) | address: RollupCore.stakeToken (20) } | { uint256: RollupCore.minimumAssertionPeriod (32) } | { mapping\(address=\>bool\): RollupCore.isValidator (32) } | { uint64: RollupCore._lastStakeBlock (8) | uint64: RollupCore._latestNodeCreated (8) | uint64: RollupCore._firstUnresolvedNode (8) | uint64: RollupCore._latestConfirmed (8) } | { <138> mapping\(uint64=\>Node\): RollupCore._nodes (32) } | { mapping\(uint64=\>mapping\(address=\>bool\)\): RollupCore._nodeStakers (32) } | { <141> address[]: RollupCore._stakerList (32) } | { <147> mapping\(address=\>Staker\): RollupCore._stakerMap (32) } | { <151> Zombie[]: RollupCore._zombies (32) } | { mapping\(address=\>uint256\): RollupCore._withdrawableFunds (32) } | { uint256: RollupCore.totalWithdrawableFunds (32) } | { uint256: RollupCore.rollupDeploymentBlock (32) } | { unallocated (31) | bool: RollupCore.validatorWhitelistDisabled (1) } | { mapping\(uint64=\>uint256\): RollupCore._nodeCreatedAtArbSysBlock (32) }}}"]
8
+
9
+ 1 [label="uint256[50]: __gap \<\<Array\>\>\n | {{ slot| 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 | 47 | 48 | 49 | 50 } | { type: variable (bytes) | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) }}}"]
10
+
11
+ 2 [label="uint256[49]: __gap \<\<Array\>\>\n | {{ slot| 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 } | { type: variable (bytes) | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) } | { uint256 (32) }}}"]
12
+
13
+ 3 [label =" Node \<\< Struct\>\>\n | {{ slot| 0 | 1 | 2 | 3 | 4 | 5 } | { type: variable (bytes) | { bytes32: stateHash (32) } | { bytes32: challengeHash (32) } | { bytes32: confirmData (32) } | { uint64: stakerCount (8) | uint64: noChildConfirmedBeforeBlock (8) | uint64: deadlineBlock (8) | uint64: prevNum (8) } | { uint64: createdAtBlock (8) | uint64: latestChildNumber (8) | uint64: firstChildBlock (8) | uint64: childStakerCount (8) } | { bytes32: nodeHash (32) }}}" ]
14
+
15
+ 4 [label =" address[]: _stakerList \<\< Array\>\>\n 0x315040cf50a9fea58aa3302eb9bbbb1153c7ed7311c4e1c76711b1190d535025 | {{ slot| 0 } | { type: variable (bytes) | { unallocated (12) | address (20) }}}" ]
16
+
17
+ 5 [label =" Staker \<\< Struct\>\>\n | {{ slot| 0 | 1 } | { type: variable (bytes) | { uint256: amountStaked (32) } | { unallocated (7) | bool: isStaked (1) | uint64: currentChallenge (8) | uint64: latestStakedNode (8) | uint64: index (8) }}}" ]
18
+
19
+ 6 [label =" Zombie \<\< Struct\>\>\n | {{ slot| 0 } | { type: variable (bytes) | { unallocated (4) | uint64: latestStakedNode (8) | address: stakerAddress (20) }}}" ]
20
+
21
+ 7 [label =" Zombie[]: _zombies \<\< Array\>\>\n 0x8e4a4be60bf9672655845da331c63e49fa2a771e90e72dc554369cbb34aae7b8 | {{ slot| 0 } | { type: variable (bytes) | { <148> Zombie (32) }}}" ]
22
+
23
+ 8:53 -> 1
24
+ 8:104 -> 2
25
+ 8:138 -> 3
26
+ 8:141 -> 4
27
+ 8:147 -> 5
28
+ 8:151 -> 7
29
+ 7:148 -> 6
30
+ }
You can’t perform that action at this time.
0 commit comments