UNPKG

@alice-network/zos-lib

Version:

JavaScript library for the ZeppelinOS smart contract platform

1,433 lines 96.2 kB
{ "contractName": "Impl", "abi": [ { "constant": true, "inputs": [], "name": "version", "outputs": [ { "name": "", "type": "string" } ], "payable": false, "stateMutability": "pure", "type": "function" } ], "bytecode": "0x", "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", "source": "pragma solidity ^0.4.24;\n\ncontract Impl {\n function version() public pure returns (string); \n}\n\ncontract DummyImplementation {\n uint256 public value;\n string public text;\n uint256[] public values;\n\n function initializeNonPayable() public {\n value = 10;\n }\n\n function initializePayable() payable public {\n value = 100;\n }\n\n function initializeNonPayable(uint256 _value) public {\n value = _value;\n }\n\n function initializePayable(uint256 _value) payable public {\n value = _value;\n }\n\n function initialize(uint256 _value, string _text, uint256[] _values) public {\n value = _value;\n text = _text;\n values = _values;\n }\n\n function get() public pure returns (bool) {\n return true;\n }\n\n function version() public pure returns (string) {\n return \"V1\";\n }\n\n function reverts() public pure {\n require(false);\n }\n}\n\ncontract DummyImplementationV2 is DummyImplementation {\n function migrate(uint256 newVal) payable public {\n value = newVal;\n }\n\n function version() public pure returns (string) {\n return \"V2\";\n }\n}\n", "sourcePath": "/Users/yoonjae/WebstormProjects/zos/packages/lib/contracts/mocks/DummyImplementation.sol", "ast": { "absolutePath": "/Users/yoonjae/WebstormProjects/zos/packages/lib/contracts/mocks/DummyImplementation.sol", "exportedSymbols": { "DummyImplementation": [ 1418 ], "DummyImplementationV2": [ 1439 ], "Impl": [ 1327 ] }, "id": 1440, "nodeType": "SourceUnit", "nodes": [ { "id": 1321, "literals": [ "solidity", "^", "0.4", ".24" ], "nodeType": "PragmaDirective", "src": "0:24:8" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": false, "id": 1327, "linearizedBaseContracts": [ 1327 ], "name": "Impl", "nodeType": "ContractDefinition", "nodes": [ { "body": null, "documentation": null, "id": 1326, "implemented": false, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "version", "nodeType": "FunctionDefinition", "parameters": { "id": 1322, "nodeType": "ParameterList", "parameters": [], "src": "60:2:8" }, "payable": false, "returnParameters": { "id": 1325, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1324, "name": "", "nodeType": "VariableDeclaration", "scope": 1326, "src": "84:6:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1323, "name": "string", "nodeType": "ElementaryTypeName", "src": "84:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": null, "visibility": "internal" } ], "src": "83:8:8" }, "scope": 1327, "src": "44:48:8", "stateMutability": "pure", "superFunction": null, "visibility": "public" } ], "scope": 1440, "src": "26:69:8" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 1418, "linearizedBaseContracts": [ 1418 ], "name": "DummyImplementation", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 1329, "name": "value", "nodeType": "VariableDeclaration", "scope": 1418, "src": "130:20:8", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1328, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "130:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "public" }, { "constant": false, "id": 1331, "name": "text", "nodeType": "VariableDeclaration", "scope": 1418, "src": "154:18:8", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string" }, "typeName": { "id": 1330, "name": "string", "nodeType": "ElementaryTypeName", "src": "154:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": null, "visibility": "public" }, { "constant": false, "id": 1334, "name": "values", "nodeType": "VariableDeclaration", "scope": 1418, "src": "176:23:8", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 1332, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "176:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 1333, "length": null, "nodeType": "ArrayTypeName", "src": "176:9:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "value": null, "visibility": "public" }, { "body": { "id": 1341, "nodeType": "Block", "src": "243:21:8", "statements": [ { "expression": { "argumentTypes": null, "id": 1339, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 1337, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1329, "src": "249:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "hexValue": "3130", "id": 1338, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "257:2:8", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", "typeString": "int_const 10" }, "value": "10" }, "src": "249:10:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 1340, "nodeType": "ExpressionStatement", "src": "249:10:8" } ] }, "documentation": null, "id": 1342, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "initializeNonPayable", "nodeType": "FunctionDefinition", "parameters": { "id": 1335, "nodeType": "ParameterList", "parameters": [], "src": "233:2:8" }, "payable": false, "returnParameters": { "id": 1336, "nodeType": "ParameterList", "parameters": [], "src": "243:0:8" }, "scope": 1418, "src": "204:60:8", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { "id": 1349, "nodeType": "Block", "src": "312:22:8", "statements": [ { "expression": { "argumentTypes": null, "id": 1347, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 1345, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1329, "src": "318:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "hexValue": "313030", "id": 1346, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", "src": "326:3:8", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", "typeString": "int_const 100" }, "value": "100" }, "src": "318:11:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 1348, "nodeType": "ExpressionStatement", "src": "318:11:8" } ] }, "documentation": null, "id": 1350, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "initializePayable", "nodeType": "FunctionDefinition", "parameters": { "id": 1343, "nodeType": "ParameterList", "parameters": [], "src": "294:2:8" }, "payable": true, "returnParameters": { "id": 1344, "nodeType": "ParameterList", "parameters": [], "src": "312:0:8" }, "scope": 1418, "src": "268:66:8", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { "id": 1359, "nodeType": "Block", "src": "391:25:8", "statements": [ { "expression": { "argumentTypes": null, "id": 1357, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 1355, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1329, "src": "397:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "id": 1356, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1352, "src": "405:6:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "397:14:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 1358, "nodeType": "ExpressionStatement", "src": "397:14:8" } ] }, "documentation": null, "id": 1360, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "initializeNonPayable", "nodeType": "FunctionDefinition", "parameters": { "id": 1353, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1352, "name": "_value", "nodeType": "VariableDeclaration", "scope": 1360, "src": "368:14:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1351, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "368:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "367:16:8" }, "payable": false, "returnParameters": { "id": 1354, "nodeType": "ParameterList", "parameters": [], "src": "391:0:8" }, "scope": 1418, "src": "338:78:8", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { "id": 1369, "nodeType": "Block", "src": "478:25:8", "statements": [ { "expression": { "argumentTypes": null, "id": 1367, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 1365, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1329, "src": "484:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "id": 1366, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1362, "src": "492:6:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "484:14:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 1368, "nodeType": "ExpressionStatement", "src": "484:14:8" } ] }, "documentation": null, "id": 1370, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "initializePayable", "nodeType": "FunctionDefinition", "parameters": { "id": 1363, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1362, "name": "_value", "nodeType": "VariableDeclaration", "scope": 1370, "src": "447:14:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1361, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "447:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "446:16:8" }, "payable": true, "returnParameters": { "id": 1364, "nodeType": "ParameterList", "parameters": [], "src": "478:0:8" }, "scope": 1418, "src": "420:83:8", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { "id": 1392, "nodeType": "Block", "src": "583:65:8", "statements": [ { "expression": { "argumentTypes": null, "id": 1382, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 1380, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1329, "src": "589:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "id": 1381, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1372, "src": "597:6:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "589:14:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 1383, "nodeType": "ExpressionStatement", "src": "589:14:8" }, { "expression": { "argumentTypes": null, "id": 1386, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 1384, "name": "text", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1331, "src": "609:4:8", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "id": 1385, "name": "_text", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1374, "src": "616:5:8", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, "src": "609:12:8", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, "id": 1387, "nodeType": "ExpressionStatement", "src": "609:12:8" }, { "expression": { "argumentTypes": null, "id": 1390, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 1388, "name": "values", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1334, "src": "627:6:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "id": 1389, "name": "_values", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1377, "src": "636:7:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[] memory" } }, "src": "627:16:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage", "typeString": "uint256[] storage ref" } }, "id": 1391, "nodeType": "ExpressionStatement", "src": "627:16:8" } ] }, "documentation": null, "id": 1393, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "initialize", "nodeType": "FunctionDefinition", "parameters": { "id": 1378, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1372, "name": "_value", "nodeType": "VariableDeclaration", "scope": 1393, "src": "527:14:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1371, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "527:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 1374, "name": "_text", "nodeType": "VariableDeclaration", "scope": 1393, "src": "543:12:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1373, "name": "string", "nodeType": "ElementaryTypeName", "src": "543:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 1377, "name": "_values", "nodeType": "VariableDeclaration", "scope": 1393, "src": "557:17:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 1375, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "557:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 1376, "length": null, "nodeType": "ArrayTypeName", "src": "557:9:8", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "value": null, "visibility": "internal" } ], "src": "526:49:8" }, "payable": false, "returnParameters": { "id": 1379, "nodeType": "ParameterList", "parameters": [], "src": "583:0:8" }, "scope": 1418, "src": "507:141:8", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { "id": 1400, "nodeType": "Block", "src": "694:22:8", "statements": [ { "expression": { "argumentTypes": null, "hexValue": "74727565", "id": 1398, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "707:4:8", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "true" }, "functionReturnParameters": 1397, "id": 1399, "nodeType": "Return", "src": "700:11:8" } ] }, "documentation": null, "id": 1401, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "get", "nodeType": "FunctionDefinition", "parameters": { "id": 1394, "nodeType": "ParameterList", "parameters": [], "src": "664:2:8" }, "payable": false, "returnParameters": { "id": 1397, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1396, "name": "", "nodeType": "VariableDeclaration", "scope": 1401, "src": "688:4:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 1395, "name": "bool", "nodeType": "ElementaryTypeName", "src": "688:4:8", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "value": null, "visibility": "internal" } ], "src": "687:6:8" }, "scope": 1418, "src": "652:64:8", "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { "id": 1408, "nodeType": "Block", "src": "768:22:8", "statements": [ { "expression": { "argumentTypes": null, "hexValue": "5631", "id": 1406, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "781:4:8", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_4c23426613a5dc69e08fbd2787e6210aa679d4522e95a89d4dd88c4fd13a2283", "typeString": "literal_string \"V1\"" }, "value": "V1" }, "functionReturnParameters": 1405, "id": 1407, "nodeType": "Return", "src": "774:11:8" } ] }, "documentation": null, "id": 1409, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "version", "nodeType": "FunctionDefinition", "parameters": { "id": 1402, "nodeType": "ParameterList", "parameters": [], "src": "736:2:8" }, "payable": false, "returnParameters": { "id": 1405, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1404, "name": "", "nodeType": "VariableDeclaration", "scope": 1409, "src": "760:6:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1403, "name": "string", "nodeType": "ElementaryTypeName", "src": "760:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": null, "visibility": "internal" } ], "src": "759:8:8" }, "scope": 1418, "src": "720:70:8", "stateMutability": "pure", "superFunction": null, "visibility": "public" }, { "body": { "id": 1416, "nodeType": "Block", "src": "825:25:8", "statements": [ { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "hexValue": "66616c7365", "id": 1413, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", "src": "839:5:8", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "value": "false" } ], "expression": { "argumentTypes": [ { "typeIdentifier": "t_bool", "typeString": "bool" } ], "id": 1412, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ 3160, 3161 ], "referencedDeclaration": 3160, "src": "831:7:8", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, "id": 1414, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "names": [], "nodeType": "FunctionCall", "src": "831:14:8", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 1415, "nodeType": "ExpressionStatement", "src": "831:14:8" } ] }, "documentation": null, "id": 1417, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "reverts", "nodeType": "FunctionDefinition", "parameters": { "id": 1410, "nodeType": "ParameterList", "parameters": [], "src": "810:2:8" }, "payable": false, "returnParameters": { "id": 1411, "nodeType": "ParameterList", "parameters": [], "src": "825:0:8" }, "scope": 1418, "src": "794:56:8", "stateMutability": "pure", "superFunction": null, "visibility": "public" } ], "scope": 1440, "src": "97:755:8" }, { "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 1419, "name": "DummyImplementation", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 1418, "src": "888:19:8", "typeDescriptions": { "typeIdentifier": "t_contract$_DummyImplementation_$1418", "typeString": "contract DummyImplementation" } }, "id": 1420, "nodeType": "InheritanceSpecifier", "src": "888:19:8" } ], "contractDependencies": [ 1418 ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, "id": 1439, "linearizedBaseContracts": [ 1439, 1418 ], "name": "DummyImplementationV2", "nodeType": "ContractDefinition", "nodes": [ { "body": { "id": 1429, "nodeType": "Block", "src": "960:25:8", "statements": [ { "expression": { "argumentTypes": null, "id": 1427, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, "id": 1425, "name": "value", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1329, "src": "966:5:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, "id": 1426, "name": "newVal", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 1422, "src": "974:6:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "src": "966:14:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 1428, "nodeType": "ExpressionStatement", "src": "966:14:8" } ] }, "documentation": null, "id": 1430, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "migrate", "nodeType": "FunctionDefinition", "parameters": { "id": 1423, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1422, "name": "newVal", "nodeType": "VariableDeclaration", "scope": 1430, "src": "929:14:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 1421, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "929:7:8", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" } ], "src": "928:16:8" }, "payable": true, "returnParameters": { "id": 1424, "nodeType": "ParameterList", "parameters": [], "src": "960:0:8" }, "scope": 1439, "src": "912:73:8", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { "id": 1437, "nodeType": "Block", "src": "1037:22:8", "statements": [ { "expression": { "argumentTypes": null, "hexValue": "5632", "id": 1435, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", "src": "1050:4:8", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_23d235efaf569b2b407d10f447247743508d1762a8e3a3aed85ccc0570dde35f", "typeString": "literal_string \"V2\"" }, "value": "V2" }, "functionReturnParameters": 1434, "id": 1436, "nodeType": "Return", "src": "1043:11:8" } ] }, "documentation": null, "id": 1438, "implemented": true, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "version", "nodeType": "FunctionDefinition", "parameters": { "id": 1431, "nodeType": "ParameterList", "parameters": [], "src": "1005:2:8" }, "payable": false, "returnParameters": { "id": 1434, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 1433, "name": "", "nodeType": "VariableDeclaration", "scope": 1438, "src": "1029:6:8", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string" }, "typeName": { "id": 1432, "name": "string", "nodeType": "ElementaryTypeName", "src": "1029:6:8", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" } }, "value": null, "visibility": "internal" } ], "src": "1028:8:8" }, "scope": 1439, "src": "989:70:8", "stateMutability": "pure", "superFunction": 1409, "visibility": "public" } ], "scope": 1440, "src": "854:207:8" } ], "src": "0:1062:8" }, "legacyAST": { "absolutePath": "/Users/yoonjae/WebstormProjects/zos/packages/lib/contracts/mocks/DummyImplementation.sol", "exportedSymbols": { "DummyImplementation": [ 1418 ], "DummyImplementationV2": [ 1439 ], "Impl": [ 1327 ] }, "id": 1440, "nodeType": "SourceUnit", "nodes": [ { "id": 1321, "literals": [ "solidity", "^", "0.4", ".24" ], "nodeType": "PragmaDirective", "src": "0:24:8" }, { "baseContracts": [], "contractDependencies": [], "contractKind": "contract", "documentation": null, "fullyImplemented": false, "id": 1327, "linearizedBaseContracts": [ 1327 ], "name": "Impl", "nodeType": "ContractDefinition", "nodes": [ { "body": null, "documentation": null, "id": 1326, "implemented": false, "isConstructor": false, "isDeclaredConst": true, "modifiers": [], "name": "ve