@daostack/upgrades
Version:
Proxy upgadable contracts based on openzeppelin-sdk
1,209 lines (1,208 loc) • 44.7 kB
JSON
{
"fileName": "GetFunctionMocks.sol",
"contractName": "GetFunctionBase",
"source": "pragma solidity ^0.6.0;\n// SPDX-License-Identifier: MIT\n\ncontract GetFunctionBase {\n uint256 x;\n \n function initialize(uint256 _x) public {\n x = _x;\n }\n\n function initialize(string memory _x) public {\n x = bytes(_x).length;\n }\n\n function initialize(uint256 _x, uint256 _y) public {\n x = _x + _y;\n }\n\n function another(uint256 _x) public {\n x = _x;\n }\n}\n\ncontract GetFunctionChild is GetFunctionBase {\n function initialize(bytes memory _x) public {\n x = _x.length;\n }\n}\n\ncontract GetFunctionOtherChild is GetFunctionBase {\n function initialize(bytes32 _x) public {\n x = uint256(_x);\n }\n}\n\ncontract GetFunctionGrandchild is GetFunctionChild, GetFunctionOtherChild { }\n\ncontract GetFunctionOtherGrandchild is GetFunctionOtherChild, GetFunctionChild { }",
"sourcePath": "contracts/mocks/GetFunctionMocks.sol",
"sourceMap": "57:317:10:-:0;;;;;;;;;;;;;;;;;;;;;;",
"deployedSourceMap": "57:317:10:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;319:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;242:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;162:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;102:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;319:53;365:2;361:1;;:6;;;;;;;319:53;;:::o;242:73::-;308:2;303;:7;299:1;;:11;;;;;;;242:73;;;:::o;162:76::-;223:2;217:16;213:1;;:20;;;;;;;162:76;;:::o;102:56::-;151:2;147:1;;:6;;;;;;;102:56;;:::o",
"abi": [
{
"inputs": [
{
"internalType": "uint256",
"name": "_x",
"type": "uint256"
}
],
"name": "another",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_x",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "_y",
"type": "uint256"
}
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "string",
"name": "_x",
"type": "string"
}
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "_x",
"type": "uint256"
}
],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"ast": {
"absolutePath": "contracts/mocks/GetFunctionMocks.sol",
"exportedSymbols": {
"GetFunctionBase": [
1705
],
"GetFunctionChild": [
1719
],
"GetFunctionGrandchild": [
1740
],
"GetFunctionOtherChild": [
1735
],
"GetFunctionOtherGrandchild": [
1745
]
},
"id": 1746,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1654,
"literals": [
"solidity",
"^",
"0.6",
".0"
],
"nodeType": "PragmaDirective",
"src": "0:23:10"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 1705,
"linearizedBaseContracts": [
1705
],
"name": "GetFunctionBase",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 1656,
"mutability": "mutable",
"name": "x",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 1705,
"src": "86:9:10",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1655,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "86:7:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"body": {
"id": 1665,
"nodeType": "Block",
"src": "141:17:10",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1663,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1661,
"name": "x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1656,
"src": "147:1:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 1662,
"name": "_x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1658,
"src": "151:2:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "147:6:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1664,
"nodeType": "ExpressionStatement",
"src": "147:6:10"
}
]
},
"documentation": null,
"functionSelector": "fe4b84df",
"id": 1666,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "initialize",
"nodeType": "FunctionDefinition",
"overrides": null,
"parameters": {
"id": 1659,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1658,
"mutability": "mutable",
"name": "_x",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 1666,
"src": "122:10:10",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1657,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "122:7:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "121:12:10"
},
"returnParameters": {
"id": 1660,
"nodeType": "ParameterList",
"parameters": [],
"src": "141:0:10"
},
"scope": 1705,
"src": "102:56:10",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
},
{
"body": {
"id": 1679,
"nodeType": "Block",
"src": "207:31:10",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1677,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1671,
"name": "x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1656,
"src": "213:1:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1674,
"name": "_x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1668,
"src": "223:2:10",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string memory"
}
],
"id": 1673,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "217:5:10",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_bytes_storage_ptr_$",
"typeString": "type(bytes storage pointer)"
},
"typeName": {
"id": 1672,
"name": "bytes",
"nodeType": "ElementaryTypeName",
"src": "217:5:10",
"typeDescriptions": {
"typeIdentifier": null,
"typeString": null
}
}
},
"id": 1675,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "217:9:10",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_bytes_memory_ptr",
"typeString": "bytes memory"
}
},
"id": 1676,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "217:16:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "213:20:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1678,
"nodeType": "ExpressionStatement",
"src": "213:20:10"
}
]
},
"documentation": null,
"functionSelector": "f62d1888",
"id": 1680,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "initialize",
"nodeType": "FunctionDefinition",
"overrides": null,
"parameters": {
"id": 1669,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1668,
"mutability": "mutable",
"name": "_x",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 1680,
"src": "182:16:10",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 1667,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "182:6:10",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "181:18:10"
},
"returnParameters": {
"id": 1670,
"nodeType": "ParameterList",
"parameters": [],
"src": "207:0:10"
},
"scope": 1705,
"src": "162:76:10",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
},
{
"body": {
"id": 1693,
"nodeType": "Block",
"src": "293:22:10",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1691,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1687,
"name": "x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1656,
"src": "299:1:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 1690,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 1688,
"name": "_x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1682,
"src": "303:2:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "+",
"rightExpression": {
"argumentTypes": null,
"id": 1689,
"name": "_y",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1684,
"src": "308:2:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "303:7:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "299:11:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1692,
"nodeType": "ExpressionStatement",
"src": "299:11:10"
}
]
},
"documentation": null,
"functionSelector": "e4a30116",
"id": 1694,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "initialize",
"nodeType": "FunctionDefinition",
"overrides": null,
"parameters": {
"id": 1685,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1682,
"mutability": "mutable",
"name": "_x",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 1694,
"src": "262:10:10",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1681,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "262:7:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1684,
"mutability": "mutable",
"name": "_y",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 1694,
"src": "274:10:10",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1683,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "274:7:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "261:24:10"
},
"returnParameters": {
"id": 1686,
"nodeType": "ParameterList",
"parameters": [],
"src": "293:0:10"
},
"scope": 1705,
"src": "242:73:10",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
},
{
"body": {
"id": 1703,
"nodeType": "Block",
"src": "355:17:10",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1701,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1699,
"name": "x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1656,
"src": "361:1:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 1700,
"name": "_x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1696,
"src": "365:2:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "361:6:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1702,
"nodeType": "ExpressionStatement",
"src": "361:6:10"
}
]
},
"documentation": null,
"functionSelector": "499af201",
"id": 1704,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "another",
"nodeType": "FunctionDefinition",
"overrides": null,
"parameters": {
"id": 1697,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1696,
"mutability": "mutable",
"name": "_x",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 1704,
"src": "336:10:10",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1695,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "336:7:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "335:12:10"
},
"returnParameters": {
"id": 1698,
"nodeType": "ParameterList",
"parameters": [],
"src": "355:0:10"
},
"scope": 1705,
"src": "319:53:10",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
}
],
"scope": 1746,
"src": "57:317:10"
},
{
"abstract": false,
"baseContracts": [
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 1706,
"name": "GetFunctionBase",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1705,
"src": "405:15:10",
"typeDescriptions": {
"typeIdentifier": "t_contract$_GetFunctionBase_$1705",
"typeString": "contract GetFunctionBase"
}
},
"id": 1707,
"nodeType": "InheritanceSpecifier",
"src": "405:15:10"
}
],
"contractDependencies": [
1705
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 1719,
"linearizedBaseContracts": [
1719,
1705
],
"name": "GetFunctionChild",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 1717,
"nodeType": "Block",
"src": "469:24:10",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1715,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1712,
"name": "x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1656,
"src": "475:1:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 1713,
"name": "_x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1709,
"src": "479:2:10",
"typeDescriptions": {
"typeIdentifier": "t_bytes_memory_ptr",
"typeString": "bytes memory"
}
},
"id": 1714,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "479:9:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "475:13:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1716,
"nodeType": "ExpressionStatement",
"src": "475:13:10"
}
]
},
"documentation": null,
"functionSelector": "439fab91",
"id": 1718,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "initialize",
"nodeType": "FunctionDefinition",
"overrides": null,
"parameters": {
"id": 1710,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1709,
"mutability": "mutable",
"name": "_x",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 1718,
"src": "445:15:10",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_bytes_memory_ptr",
"typeString": "bytes"
},
"typeName": {
"id": 1708,
"name": "bytes",
"nodeType": "ElementaryTypeName",
"src": "445:5:10",
"typeDescriptions": {
"typeIdentifier": "t_bytes_storage_ptr",
"typeString": "bytes"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "444:17:10"
},
"returnParameters": {
"id": 1711,
"nodeType": "ParameterList",
"parameters": [],
"src": "469:0:10"
},
"scope": 1719,
"src": "425:68:10",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
}
],
"scope": 1746,
"src": "376:119:10"
},
{
"abstract": false,
"baseContracts": [
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 1720,
"name": "GetFunctionBase",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1705,
"src": "531:15:10",
"typeDescriptions": {
"typeIdentifier": "t_contract$_GetFunctionBase_$1705",
"typeString": "contract GetFunctionBase"
}
},
"id": 1721,
"nodeType": "InheritanceSpecifier",
"src": "531:15:10"
}
],
"contractDependencies": [
1705
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 1735,
"linearizedBaseContracts": [
1735,
1705
],
"name": "GetFunctionOtherChild",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 1733,
"nodeType": "Block",
"src": "590:26:10",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1731,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1726,
"name": "x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1656,
"src": "596:1:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1729,
"name": "_x",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1723,
"src": "608:2:10",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
],
"id": 1728,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "600:7:10",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_uint256_$",
"typeString": "type(uint256)"
},
"typeName": {
"id": 1727,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "600:7:10",
"typeDescriptions": {
"typeIdentifier": null,
"typeString": null
}
}
},
"id": 1730,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "600:11:10",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "596:15:10",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 1732,
"nodeType": "ExpressionStatement",
"src": "596:15:10"
}
]
},
"documentation": null,
"functionSelector": "9498bd71",
"id": 1734,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "initialize",
"nodeType": "FunctionDefinition",
"overrides": null,
"parameters": {
"id": 1724,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1723,
"mutability": "mutable",
"name": "_x",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 1734,
"src": "571:10:10",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 1722,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "571:7:10",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "570:12:10"
},
"returnParameters": {
"id": 1725,
"nodeType": "ParameterList",
"parameters": [],
"src": "590:0:10"
},
"scope": 1735,
"src": "551:65:10",
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
}
],
"scope": 1746,
"src": "497:121:10"
},
{
"abstract": false,
"baseContracts": [
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 1736,
"name": "GetFunctionChild",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1719,
"src": "654:16:10",
"typeDescriptions": {
"typeIdentifier": "t_contract$_GetFunctionChild_$1719",
"typeString": "contract GetFunctionChild"
}
},
"id": 1737,
"nodeType": "InheritanceSpecifier",
"src": "654:16:10"
},
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 1738,
"name": "GetFunctionOtherChild",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1735,
"src": "672:21:10",
"typeDescriptions": {
"typeIdentifier": "t_contract$_GetFunctionOtherChild_$1735",
"typeString": "contract GetFunctionOtherChild"
}
},
"id": 1739,
"nodeType": "InheritanceSpecifier",
"src": "672:21:10"
}
],
"contractDependencies": [
1705,
1719,
1735
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 1740,
"linearizedBaseContracts": [
1740,
1735,
1719,
1705
],
"name": "GetFunctionGrandchild",
"nodeType": "ContractDefinition",
"nodes": [],
"scope": 1746,
"src": "620:77:10"
},
{
"abstract": false,
"baseContracts": [
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 1741,
"name": "GetFunctionOtherChild",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1735,
"src": "738:21:10",
"typeDescriptions": {
"typeIdentifier": "t_contract$_GetFunctionOtherChild_$1735",
"typeString": "contract GetFunctionOtherChild"
}
},
"id": 1742,
"nodeType": "InheritanceSpecifier",
"src": "738:21:10"
},
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 1743,
"name": "GetFunctionChild",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1719,
"src": "761:16:10",
"typeDescriptions": {
"typeIdentifier": "t_contract$_GetFunctionChild_$1719",
"typeString": "contract GetFunctionChild"
}
},
"id": 1744,
"nodeType": "InheritanceSpecifier",
"src": "761:16:10"
}
],
"contractDependencies": [
1705,
1719,
1735
],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 1745,
"linearizedBaseContracts": [
1745,
1719,
1735,
1705
],
"name": "GetFunctionOtherGrandchild",
"nodeType": "ContractDefinition",
"nodes": [],
"scope": 1746,
"src": "699:82:10"
}
],
"src": "0:781:10"
},
"bytecode": "0x60806040523480156100115760006000fd5b50610017565b61022b806100266000396000f3fe60806040523480156100115760006000fd5b50600436106100515760003560e01c8063499af20114610057578063e4a3011614610086578063f62d1888146100bf578063fe4b84df1461018257610051565b60006000fd5b6100846004803603602081101561006e5760006000fd5b81019080803590602001909291905050506101b1565b005b6100bd6004803603604081101561009d5760006000fd5b8101908080359060200190929190803590602001909291905050506101c1565b005b610180600480360360208110156100d65760006000fd5b81019080803590602001906401000000008111156100f45760006000fd5b8201836020820111156101075760006000fd5b8035906020019184600183028401116401000000008311171561012a5760006000fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509090919290909192905050506101d4565b005b6101af600480360360208110156101995760006000fd5b81019080803590602001909291905050506101e5565b005b8060006000508190909055505b50565b80820160006000508190909055505b5050565b805160006000508190909055505b50565b8060006000508190909055505b5056fea26469706673582212208d65a56ad37866775e117616c6e101952c557edecb0f9962c1de7cd9e3f3f85c64736f6c634300060a0033",
"deployedBytecode": "0x60806040523480156100115760006000fd5b50600436106100515760003560e01c8063499af20114610057578063e4a3011614610086578063f62d1888146100bf578063fe4b84df1461018257610051565b60006000fd5b6100846004803603602081101561006e5760006000fd5b81019080803590602001909291905050506101b1565b005b6100bd6004803603604081101561009d5760006000fd5b8101908080359060200190929190803590602001909291905050506101c1565b005b610180600480360360208110156100d65760006000fd5b81019080803590602001906401000000008111156100f45760006000fd5b8201836020820111156101075760006000fd5b8035906020019184600183028401116401000000008311171561012a5760006000fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509090919290909192905050506101d4565b005b6101af600480360360208110156101995760006000fd5b81019080803590602001909291905050506101e5565b005b8060006000508190909055505b50565b80820160006000508190909055505b5050565b805160006000508190909055505b50565b8060006000508190909055505b5056fea26469706673582212208d65a56ad37866775e117616c6e101952c557edecb0f9962c1de7cd9e3f3f85c64736f6c634300060a0033",
"compiler": {
"name": "solc",
"version": "0.6.10+commit.00c0fcaf.Emscripten.clang",
"optimizer": {},
"evmVersion": "constantinople"
}
}