UNPKG

@alice-network/zos-lib

Version:

JavaScript library for the ZeppelinOS smart contract platform

1,538 lines 61.9 kB
{ "contractName": "StorageMockChainBase", "abi": [], "bytecode": "0x6080604052348015600f57600080fd5b50603580601d6000396000f3006080604052600080fd00a165627a7a72305820f4e9472215979d855aac44ac89d9eb8084f11ee07489e51c59098194d8a9dcb80029", "deployedBytecode": "0x6080604052600080fd00a165627a7a72305820f4e9472215979d855aac44ac89d9eb8084f11ee07489e51c59098194d8a9dcb80029", "sourceMap": "501:58:17:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;501:58:17;;;;;;;", "deployedSourceMap": "501:58:17:-;;;;;", "source": "pragma solidity ^0.4.24;\n\nimport \"./StorageMocks.sol\";\nimport \"mock-dependency/contracts/DependencyStorageMock.sol\";\n\ncontract StorageMockWithReferences {\n StorageMockWithEnums.MyEnum internal my_enum;\n StorageMockWithStructs.MyStruct internal my_struct;\n SimpleStorageMock internal my_contract;\n}\n\ncontract StorageMockWithNodeModulesReferences {\n DependencyStorageMock.MyEnum internal my_enum;\n DependencyStorageMock.MyStruct internal my_struct;\n DependencyStorageMock internal my_contract;\n}\n\ncontract StorageMockChainBase {\n uint256 internal base;\n}\n\ncontract StorageMockChainA1 is StorageMockChainBase {\n uint256 internal a1;\n uint256 internal a2;\n}\n\ncontract StorageMockChainA2 is StorageMockChainA1 {\n uint256 public a3;\n uint256 public a4;\n}\n\ncontract StorageMockChainB is StorageMockChainBase {\n uint256 internal b1;\n uint256 internal b2;\n}\n\ncontract StorageMockChainChild is StorageMockChainA2, StorageMockChainB {\n uint256 internal child;\n\n function slots() public pure returns(uint256 baseSlot, uint256 a1Slot, uint256 a3Slot, uint256 b1Slot, uint256 childSlot) {\n assembly {\n baseSlot := base_slot\n a1Slot := a1_slot\n a3Slot := a3_slot\n b1Slot := b1_slot\n childSlot := child_slot\n }\n }\n}", "sourcePath": "/Users/yoonjae/WebstormProjects/zos/packages/lib/contracts/mocks/StorageMocks2.sol", "ast": { "absolutePath": "/Users/yoonjae/WebstormProjects/zos/packages/lib/contracts/mocks/StorageMocks2.sol", "exportedSymbols": { "StorageMockChainA1": [ 2327 ], "StorageMockChainA2": [ 2334 ], "StorageMockChainB": [ 2341 ], "StorageMockChainBase": [ 2320 ], "StorageMockChainChild": [ 2363 ], "StorageMockWithNodeModulesReferences": [ 2317 ], "StorageMockWithReferences": [ 2310 ] }, "id": 2364, "nodeType": "SourceUnit", "nodes": [ { "id": 2301, "literals": [ "solidity", "^", "0.4", ".24" ], "nodeType": "PragmaDirective", "src": "0:24:17" }, { "absolutePath": "/Users/yoonjae/WebstormProjects/zos/packages/lib/contracts/mocks/StorageMocks.sol", "file": "./StorageMocks.sol", "id": 2302, "nodeType": "ImportDirective", "scope": 2364, "sourceUnit": 2300, "src": "26:28:17", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "mock-dependency/contracts/DependencyStorageMock.sol", "file": "mock-dependency/contracts/DependencyStorageMock.sol", "id": 2303, "nodeType": "ImportDirective", "scope": 2364, "sourceUnit": 3038, "src": "55:61:17", "symbolAliases": [], "unitAlias": "" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2310, "linearizedBaseContracts": [ 2310 ], "name": "StorageMockWithReferences", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2305, "name": "my_enum", "nodeType": "VariableDeclaration", "scope": 2310, "src": "157:44:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_MyEnum_$2253", "typeString": "enum StorageMockWithEnums.MyEnum" }, "typeName": { "contractScope": null, "id": 2304, "name": "StorageMockWithEnums.MyEnum", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2253, "src": "157:27:17", "typeDescriptions": { "typeIdentifier": "t_enum$_MyEnum_$2253", "typeString": "enum StorageMockWithEnums.MyEnum" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2307, "name": "my_struct", "nodeType": "VariableDeclaration", "scope": 2310, "src": "205:50:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_struct$_MyStruct_$2236_storage", "typeString": "struct StorageMockWithStructs.MyStruct" }, "typeName": { "contractScope": null, "id": 2306, "name": "StorageMockWithStructs.MyStruct", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2236, "src": "205:31:17", "typeDescriptions": { "typeIdentifier": "t_struct$_MyStruct_$2236_storage_ptr", "typeString": "struct StorageMockWithStructs.MyStruct" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2309, "name": "my_contract", "nodeType": "VariableDeclaration", "scope": 2310, "src": "259:38:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_contract$_SimpleStorageMock_$2115", "typeString": "contract SimpleStorageMock" }, "typeName": { "contractScope": null, "id": 2308, "name": "SimpleStorageMock", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2115, "src": "259:17:17", "typeDescriptions": { "typeIdentifier": "t_contract$_SimpleStorageMock_$2115", "typeString": "contract SimpleStorageMock" } }, "value": null, "visibility": "internal" } ], "scope": 2364, "src": "118:182:17" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2317, "linearizedBaseContracts": [ 2317 ], "name": "StorageMockWithNodeModulesReferences", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2312, "name": "my_enum", "nodeType": "VariableDeclaration", "scope": 2317, "src": "352:45:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_MyEnum_$3033", "typeString": "enum DependencyStorageMock.MyEnum" }, "typeName": { "contractScope": null, "id": 2311, "name": "DependencyStorageMock.MyEnum", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3033, "src": "352:28:17", "typeDescriptions": { "typeIdentifier": "t_enum$_MyEnum_$3033", "typeString": "enum DependencyStorageMock.MyEnum" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2314, "name": "my_struct", "nodeType": "VariableDeclaration", "scope": 2317, "src": "401:49:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_struct$_MyStruct_$3036_storage", "typeString": "struct DependencyStorageMock.MyStruct" }, "typeName": { "contractScope": null, "id": 2313, "name": "DependencyStorageMock.MyStruct", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3036, "src": "401:30:17", "typeDescriptions": { "typeIdentifier": "t_struct$_MyStruct_$3036_storage_ptr", "typeString": "struct DependencyStorageMock.MyStruct" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2316, "name": "my_contract", "nodeType": "VariableDeclaration", "scope": 2317, "src": "454:42:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_contract$_DependencyStorageMock_$3037", "typeString": "contract DependencyStorageMock" }, "typeName": { "contractScope": null, "id": 2315, "name": "DependencyStorageMock", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3037, "src": "454:21:17", "typeDescriptions": { "typeIdentifier": "t_contract$_DependencyStorageMock_$3037", "typeString": "contract DependencyStorageMock" } }, "value": null, "visibility": "internal" } ], "scope": 2364, "src": "302:197:17" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2320, "linearizedBaseContracts": [ 2320 ], "name": "StorageMockChainBase", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2319, "name": "base", "nodeType": "VariableDeclaration", "scope": 2320, "src": "535:21:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2318, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "535:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "scope": 2364, "src": "501:58:17" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 2321, "name": "StorageMockChainBase", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2320, "src": "592:20:17", "typeDescriptions": { "typeIdentifier": "t_contract$_StorageMockChainBase_$2320", "typeString": "contract StorageMockChainBase" } }, "id": 2322, "nodeType": "InheritanceSpecifier", "src": "592:20:17" } ], "contractDependencies": [ 2320 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2327, "linearizedBaseContracts": [ 2327, 2320 ], "name": "StorageMockChainA1", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2324, "name": "a1", "nodeType": "VariableDeclaration", "scope": 2327, "src": "617:19:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2323, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "617:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2326, "name": "a2", "nodeType": "VariableDeclaration", "scope": 2327, "src": "640:19:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2325, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "640:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "scope": 2364, "src": "561:101:17" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 2328, "name": "StorageMockChainA1", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2327, "src": "695:18:17", "typeDescriptions": { "typeIdentifier": "t_contract$_StorageMockChainA1_$2327", "typeString": "contract StorageMockChainA1" } }, "id": 2329, "nodeType": "InheritanceSpecifier", "src": "695:18:17" } ], "contractDependencies": [ 2320, 2327 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2334, "linearizedBaseContracts": [ 2334, 2327, 2320 ], "name": "StorageMockChainA2", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2331, "name": "a3", "nodeType": "VariableDeclaration", "scope": 2334, "src": "718:17:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2330, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "718:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "public" }, { "constant": false, "id": 2333, "name": "a4", "nodeType": "VariableDeclaration", "scope": 2334, "src": "739:17:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2332, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "739:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "public" } ], "scope": 2364, "src": "664:95:17" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 2335, "name": "StorageMockChainBase", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2320, "src": "791:20:17", "typeDescriptions": { "typeIdentifier": "t_contract$_StorageMockChainBase_$2320", "typeString": "contract StorageMockChainBase" } }, "id": 2336, "nodeType": "InheritanceSpecifier", "src": "791:20:17" } ], "contractDependencies": [ 2320 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2341, "linearizedBaseContracts": [ 2341, 2320 ], "name": "StorageMockChainB", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2338, "name": "b1", "nodeType": "VariableDeclaration", "scope": 2341, "src": "816:19:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2337, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "816:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2340, "name": "b2", "nodeType": "VariableDeclaration", "scope": 2341, "src": "839:19:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2339, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "839:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "scope": 2364, "src": "761:100:17" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 2342, "name": "StorageMockChainA2", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2334, "src": "897:18:17", "typeDescriptions": { "typeIdentifier": "t_contract$_StorageMockChainA2_$2334", "typeString": "contract StorageMockChainA2" } }, "id": 2343, "nodeType": "InheritanceSpecifier", "src": "897:18:17" }, { "arguments": null, "baseName": { "contractScope": null, "id": 2344, "name": "StorageMockChainB", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2341, "src": "917:17:17", "typeDescriptions": { "typeIdentifier": "t_contract$_StorageMockChainB_$2341", "typeString": "contract StorageMockChainB" } }, "id": 2345, "nodeType": "InheritanceSpecifier", "src": "917:17:17" } ], "contractDependencies": [ 2320, 2327, 2334, 2341 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2363, "linearizedBaseContracts": [ 2363, 2341, 2334, 2327, 2320 ], "name": "StorageMockChainChild", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2347, "name": "child", "nodeType": "VariableDeclaration", "scope": 2363, "src": "939:22:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2346, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "939:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "body": { "id": 2361, "nodeType": "Block", "src": "1088:156:17", "statements": [ { "externalReferences": [ { "base_slot": { "declaration": 2319, "isOffset": false, "isSlot": true, "src": "1123:9:17", "valueSize": 1 } }, { "baseSlot": { "declaration": 2350, "isOffset": false, "isSlot": false, "src": "1111:8:17", "valueSize": 1 } }, { "a3_slot": { "declaration": 2331, "isOffset": false, "isSlot": true, "src": "1173:7:17", "valueSize": 1 } }, { "a3Slot": { "declaration": 2354, "isOffset": false, "isSlot": false, "src": "1163:6:17", "valueSize": 1 } }, { "a1_slot": { "declaration": 2324, "isOffset": false, "isSlot": true, "src": "1149:7:17", "valueSize": 1 } }, { "a1Slot": { "declaration": 2352, "isOffset": false, "isSlot": false, "src": "1139:6:17", "valueSize": 1 } }, { "b1_slot": { "declaration": 2338, "isOffset": false, "isSlot": true, "src": "1197:7:17", "valueSize": 1 } }, { "b1Slot": { "declaration": 2356, "isOffset": false, "isSlot": false, "src": "1187:6:17", "valueSize": 1 } }, { "child_slot": { "declaration": 2347, "isOffset": false, "isSlot": true, "src": "1224:10:17", "valueSize": 1 } }, { "childSlot": { "declaration": 2358, "isOffset": false, "isSlot": false, "src": "1211:9:17", "valueSize": 1 } } ], "id": 2360, "nodeType": "InlineAssembly", "operations": "{\n baseSlot := base_slot\n a1Slot := a1_slot\n a3Slot := a3_slot\n b1Slot := b1_slot\n childSlot := child_slot\n}", "src": "1094:150:17" } ] }, "documentation": null, "id": 2362, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "slots", "nodeType": "FunctionDefinition", "parameters": { "id": 2348, "nodeType": "ParameterList", "parameters": [], "src": "980:2:17" }, "payable": false, "returnParameters": { "id": 2359, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2350, "name": "baseSlot", "nodeType": "VariableDeclaration", "scope": 2362, "src": "1003:16:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2349, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1003:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2352, "name": "a1Slot", "nodeType": "VariableDeclaration", "scope": 2362, "src": "1021:14:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2351, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1021:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2354, "name": "a3Slot", "nodeType": "VariableDeclaration", "scope": 2362, "src": "1037:14:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2353, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1037:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2356, "name": "b1Slot", "nodeType": "VariableDeclaration", "scope": 2362, "src": "1053:14:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2355, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1053:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2358, "name": "childSlot", "nodeType": "VariableDeclaration", "scope": 2362, "src": "1069:17:17", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2357, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1069:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "1002:85:17" }, "scope": 2363, "src": "966:278:17", "stateMutability": "pure", "superFunction": null, "visibility": "public" } ], "scope": 2364, "src": "863:383:17" } ], "src": "0:1246:17" }, "legacyAST": { "absolutePath": "/Users/yoonjae/WebstormProjects/zos/packages/lib/contracts/mocks/StorageMocks2.sol", "exportedSymbols": { "StorageMockChainA1": [ 2327 ], "StorageMockChainA2": [ 2334 ], "StorageMockChainB": [ 2341 ], "StorageMockChainBase": [ 2320 ], "StorageMockChainChild": [ 2363 ], "StorageMockWithNodeModulesReferences": [ 2317 ], "StorageMockWithReferences": [ 2310 ] }, "id": 2364, "nodeType": "SourceUnit", "nodes": [ { "id": 2301, "literals": [ "solidity", "^", "0.4", ".24" ], "nodeType": "PragmaDirective", "src": "0:24:17" }, { "absolutePath": "/Users/yoonjae/WebstormProjects/zos/packages/lib/contracts/mocks/StorageMocks.sol", "file": "./StorageMocks.sol", "id": 2302, "nodeType": "ImportDirective", "scope": 2364, "sourceUnit": 2300, "src": "26:28:17", "symbolAliases": [], "unitAlias": "" }, { "absolutePath": "mock-dependency/contracts/DependencyStorageMock.sol", "file": "mock-dependency/contracts/DependencyStorageMock.sol", "id": 2303, "nodeType": "ImportDirective", "scope": 2364, "sourceUnit": 3038, "src": "55:61:17", "symbolAliases": [], "unitAlias": "" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2310, "linearizedBaseContracts": [ 2310 ], "name": "StorageMockWithReferences", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2305, "name": "my_enum", "nodeType": "VariableDeclaration", "scope": 2310, "src": "157:44:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_MyEnum_$2253", "typeString": "enum StorageMockWithEnums.MyEnum" }, "typeName": { "contractScope": null, "id": 2304, "name": "StorageMockWithEnums.MyEnum", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2253, "src": "157:27:17", "typeDescriptions": { "typeIdentifier": "t_enum$_MyEnum_$2253", "typeString": "enum StorageMockWithEnums.MyEnum" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2307, "name": "my_struct", "nodeType": "VariableDeclaration", "scope": 2310, "src": "205:50:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_struct$_MyStruct_$2236_storage", "typeString": "struct StorageMockWithStructs.MyStruct" }, "typeName": { "contractScope": null, "id": 2306, "name": "StorageMockWithStructs.MyStruct", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2236, "src": "205:31:17", "typeDescriptions": { "typeIdentifier": "t_struct$_MyStruct_$2236_storage_ptr", "typeString": "struct StorageMockWithStructs.MyStruct" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2309, "name": "my_contract", "nodeType": "VariableDeclaration", "scope": 2310, "src": "259:38:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_contract$_SimpleStorageMock_$2115", "typeString": "contract SimpleStorageMock" }, "typeName": { "contractScope": null, "id": 2308, "name": "SimpleStorageMock", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2115, "src": "259:17:17", "typeDescriptions": { "typeIdentifier": "t_contract$_SimpleStorageMock_$2115", "typeString": "contract SimpleStorageMock" } }, "value": null, "visibility": "internal" } ], "scope": 2364, "src": "118:182:17" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2317, "linearizedBaseContracts": [ 2317 ], "name": "StorageMockWithNodeModulesReferences", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2312, "name": "my_enum", "nodeType": "VariableDeclaration", "scope": 2317, "src": "352:45:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_enum$_MyEnum_$3033", "typeString": "enum DependencyStorageMock.MyEnum" }, "typeName": { "contractScope": null, "id": 2311, "name": "DependencyStorageMock.MyEnum", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3033, "src": "352:28:17", "typeDescriptions": { "typeIdentifier": "t_enum$_MyEnum_$3033", "typeString": "enum DependencyStorageMock.MyEnum" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2314, "name": "my_struct", "nodeType": "VariableDeclaration", "scope": 2317, "src": "401:49:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_struct$_MyStruct_$3036_storage", "typeString": "struct DependencyStorageMock.MyStruct" }, "typeName": { "contractScope": null, "id": 2313, "name": "DependencyStorageMock.MyStruct", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3036, "src": "401:30:17", "typeDescriptions": { "typeIdentifier": "t_struct$_MyStruct_$3036_storage_ptr", "typeString": "struct DependencyStorageMock.MyStruct" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2316, "name": "my_contract", "nodeType": "VariableDeclaration", "scope": 2317, "src": "454:42:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_contract$_DependencyStorageMock_$3037", "typeString": "contract DependencyStorageMock" }, "typeName": { "contractScope": null, "id": 2315, "name": "DependencyStorageMock", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 3037, "src": "454:21:17", "typeDescriptions": { "typeIdentifier": "t_contract$_DependencyStorageMock_$3037", "typeString": "contract DependencyStorageMock" } }, "value": null, "visibility": "internal" } ], "scope": 2364, "src": "302:197:17" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2320, "linearizedBaseContracts": [ 2320 ], "name": "StorageMockChainBase", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2319, "name": "base", "nodeType": "VariableDeclaration", "scope": 2320, "src": "535:21:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2318, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "535:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "scope": 2364, "src": "501:58:17" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 2321, "name": "StorageMockChainBase", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2320, "src": "592:20:17", "typeDescriptions": { "typeIdentifier": "t_contract$_StorageMockChainBase_$2320", "typeString": "contract StorageMockChainBase" } }, "id": 2322, "nodeType": "InheritanceSpecifier", "src": "592:20:17" } ], "contractDependencies": [ 2320 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2327, "linearizedBaseContracts": [ 2327, 2320 ], "name": "StorageMockChainA1", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2324, "name": "a1", "nodeType": "VariableDeclaration", "scope": 2327, "src": "617:19:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2323, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "617:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2326, "name": "a2", "nodeType": "VariableDeclaration", "scope": 2327, "src": "640:19:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2325, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "640:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "scope": 2364, "src": "561:101:17" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 2328, "name": "StorageMockChainA1", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2327, "src": "695:18:17", "typeDescriptions": { "typeIdentifier": "t_contract$_StorageMockChainA1_$2327", "typeString": "contract StorageMockChainA1" } }, "id": 2329, "nodeType": "InheritanceSpecifier", "src": "695:18:17" } ], "contractDependencies": [ 2320, 2327 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2334, "linearizedBaseContracts": [ 2334, 2327, 2320 ], "name": "StorageMockChainA2", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2331, "name": "a3", "nodeType": "VariableDeclaration", "scope": 2334, "src": "718:17:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2330, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "718:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "public" }, { "constant": false, "id": 2333, "name": "a4", "nodeType": "VariableDeclaration", "scope": 2334, "src": "739:17:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2332, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "739:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "public" } ], "scope": 2364, "src": "664:95:17" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 2335, "name": "StorageMockChainBase", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2320, "src": "791:20:17", "typeDescriptions": { "typeIdentifier": "t_contract$_StorageMockChainBase_$2320", "typeString": "contract StorageMockChainBase" } }, "id": 2336, "nodeType": "InheritanceSpecifier", "src": "791:20:17" } ], "contractDependencies": [ 2320 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 2341, "linearizedBaseContracts": [ 2341, 2320 ], "name": "StorageMockChainB", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 2338, "name": "b1", "nodeType": "VariableDeclaration", "scope": 2341, "src": "816:19:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2337, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "816:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2340, "name": "b2", "nodeType": "VariableDeclaration", "scope": 2341, "src": "839:19:17", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2339, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "839:7:17", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "scope": 2364, "src": "761:100:17" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 2342, "name": "StorageMockChainA2", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2334, "src":