@daostack/upgrades
Version:
Proxy upgadable contracts based on openzeppelin-sdk
1,394 lines • 99.2 kB
JSON
{
"fileName": "StorageMocks.sol",
"contractName": "StorageMockWithEnums",
"source": "pragma solidity ^0.6.0;\n// SPDX-License-Identifier: MIT\n\n// Added just for having a circular reference\nimport \"./StorageMocks3.sol\";\n\ncontract SimpleStorageMock {\n uint256 public my_public_uint256;\n string internal my_internal_string;\n uint8 private my_private_uint8;\n int8 private my_private_uint16;\n bool private my_private_bool;\n uint private my_private_uint;\n address private my_private_address;\n}\n\ncontract StorageMockWithBytes {\n bytes internal my_bytes;\n bytes8 internal my_bytes8;\n bytes32 internal my_bytes32;\n}\n\ncontract StorageMockWithConstants {\n uint256 public constant my_public_uint256 = 256;\n string internal constant my_internal_string = \"foo\";\n uint8 private constant my_private_uint8 = 8;\n}\n\ncontract StorageMockWithArrays {\n uint256[] public my_public_uint256_dynarray;\n string[] internal my_internal_string_dynarray;\n address[] private my_private_address_dynarray;\n int8[10] public my_public_int8_staticarray;\n bool[20] internal my_internal_bool_staticarray;\n uint[30] private my_private_uint_staticarray;\n}\n\ncontract StorageMockWithMappings {\n mapping(uint256 => string) public my_mapping;\n mapping(uint256 => mapping(string => address)) internal my_nested_mapping;\n mapping(uint256 => bool[]) private my_mapping_with_arrays;\n}\n\ncontract StorageMockWithFunctions {\n function(uint) internal my_fun;\n function(string memory, string memory)[] internal my_fun_dynarray;\n function(uint) returns (address)[10] internal my_fun_staticarray;\n mapping(uint256 => function(bool)) internal my_fun_mapping;\n}\n\ncontract StorageMockWithContracts {\n SimpleStorageMock public my_contract;\n SimpleStorageMock[] private my_contract_dynarray;\n SimpleStorageMock[10] internal my_contract_staticarray;\n mapping(uint256 => SimpleStorageMock) private my_contract_mapping;\n mapping(uint256 => SimpleStorageMock[]) private my_contract_dynarray_mapping;\n mapping(uint256 => SimpleStorageMock[10]) private my_contract_staticarray_mapping;\n}\n\ncontract StorageMockWithStructs {\n struct MyStruct {\n uint256 struct_uint256;\n string struct_string;\n address struct_address;\n } \n\n MyStruct internal my_struct;\n MyStruct[] private my_struct_dynarray;\n MyStruct[10] internal my_struct_staticarray;\n mapping(uint256 => MyStruct) private my_struct_mapping;\n}\n\ncontract StorageMockWithEnums {\n enum MyEnum { State1, State2 }\n \n MyEnum public my_enum;\n MyEnum[] internal my_enum_dynarray;\n MyEnum[10] internal my_enum_staticarray;\n mapping(uint256 => MyEnum) private my_enum_mapping;\n}\n\ncontract StorageMockWithComplexStructs {\n struct MyStruct {\n uint256[] uint256_dynarray;\n mapping(string => StorageMockWithEnums.MyEnum) mapping_enums;\n StorageMockWithStructs.MyStruct other_struct;\n }\n\n MyStruct internal my_struct;\n StorageMockWithStructs.MyStruct internal my_other_struct;\n}\n\ncontract StorageMockWithRecursiveStructs {\n struct MyStruct {\n OtherStruct[] other_structs;\n }\n\n struct OtherStruct {\n MyStruct my_struct;\n }\n\n MyStruct internal my_struct;\n}\n\ncontract StorageMockMixed is StorageMockWithStructs, StorageMockWithEnums, SimpleStorageMock {\n}\n",
"sourcePath": "contracts/mocks/StorageMocks.sol",
"sourceMap": "2291:228:18:-:0;;;;;;;;;;;;;;;;;;;;;;",
"deployedSourceMap": "2291:228:18:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2360:21;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
"abi": [
{
"inputs": [],
"name": "my_enum",
"outputs": [
{
"internalType": "enum StorageMockWithEnums.MyEnum",
"name": "",
"type": "uint8"
}
],
"stateMutability": "view",
"type": "function"
}
],
"ast": {
"absolutePath": "contracts/mocks/StorageMocks.sol",
"exportedSymbols": {
"SimpleStorageMock": [
4603
],
"StorageMockMixed": [
4787
],
"StorageMockWithArrays": [
4642
],
"StorageMockWithBytes": [
4610
],
"StorageMockWithComplexStructs": [
4770
],
"StorageMockWithConstants": [
4620
],
"StorageMockWithContracts": [
4717
],
"StorageMockWithEnums": [
4755
],
"StorageMockWithFunctions": [
4692
],
"StorageMockWithMappings": [
4658
],
"StorageMockWithRecursiveStructs": [
4780
],
"StorageMockWithStructs": [
4738
]
},
"id": 4788,
"license": "MIT",
"nodeType": "SourceUnit",
"nodes": [
{
"id": 4587,
"literals": [
"solidity",
"^",
"0.6",
".0"
],
"nodeType": "PragmaDirective",
"src": "0:23:18"
},
{
"absolutePath": "contracts/mocks/StorageMocks3.sol",
"file": "./StorageMocks3.sol",
"id": 4588,
"nodeType": "ImportDirective",
"scope": 4788,
"sourceUnit": 4862,
"src": "103:29:18",
"symbolAliases": [],
"unitAlias": ""
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 4603,
"linearizedBaseContracts": [
4603
],
"name": "SimpleStorageMock",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"functionSelector": "26b2009f",
"id": 4590,
"mutability": "mutable",
"name": "my_public_uint256",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4603,
"src": "165:32:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 4589,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "165:7:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "public"
},
{
"constant": false,
"id": 4592,
"mutability": "mutable",
"name": "my_internal_string",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4603,
"src": "201:34:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string"
},
"typeName": {
"id": 4591,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "201:6:18",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 4594,
"mutability": "mutable",
"name": "my_private_uint8",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4603,
"src": "239:30:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
},
"typeName": {
"id": 4593,
"name": "uint8",
"nodeType": "ElementaryTypeName",
"src": "239:5:18",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
}
},
"value": null,
"visibility": "private"
},
{
"constant": false,
"id": 4596,
"mutability": "mutable",
"name": "my_private_uint16",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4603,
"src": "273:30:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_int8",
"typeString": "int8"
},
"typeName": {
"id": 4595,
"name": "int8",
"nodeType": "ElementaryTypeName",
"src": "273:4:18",
"typeDescriptions": {
"typeIdentifier": "t_int8",
"typeString": "int8"
}
},
"value": null,
"visibility": "private"
},
{
"constant": false,
"id": 4598,
"mutability": "mutable",
"name": "my_private_bool",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4603,
"src": "307:28:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 4597,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "307:4:18",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "private"
},
{
"constant": false,
"id": 4600,
"mutability": "mutable",
"name": "my_private_uint",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4603,
"src": "339:28:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 4599,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "339:4:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "private"
},
{
"constant": false,
"id": 4602,
"mutability": "mutable",
"name": "my_private_address",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4603,
"src": "371:34:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 4601,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "371:7:18",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "private"
}
],
"scope": 4788,
"src": "134:274:18"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 4610,
"linearizedBaseContracts": [
4610
],
"name": "StorageMockWithBytes",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 4605,
"mutability": "mutable",
"name": "my_bytes",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4610,
"src": "444:23:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes_storage",
"typeString": "bytes"
},
"typeName": {
"id": 4604,
"name": "bytes",
"nodeType": "ElementaryTypeName",
"src": "444:5:18",
"typeDescriptions": {
"typeIdentifier": "t_bytes_storage_ptr",
"typeString": "bytes"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 4607,
"mutability": "mutable",
"name": "my_bytes8",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4610,
"src": "471:25:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
},
"typeName": {
"id": 4606,
"name": "bytes8",
"nodeType": "ElementaryTypeName",
"src": "471:6:18",
"typeDescriptions": {
"typeIdentifier": "t_bytes8",
"typeString": "bytes8"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 4609,
"mutability": "mutable",
"name": "my_bytes32",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4610,
"src": "500:27:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 4608,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "500:7:18",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"scope": 4788,
"src": "410:120:18"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 4620,
"linearizedBaseContracts": [
4620
],
"name": "StorageMockWithConstants",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": true,
"functionSelector": "26b2009f",
"id": 4613,
"mutability": "constant",
"name": "my_public_uint256",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4620,
"src": "570:47:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 4611,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "570:7:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": {
"argumentTypes": null,
"hexValue": "323536",
"id": 4612,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "614:3:18",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_256_by_1",
"typeString": "int_const 256"
},
"value": "256"
},
"visibility": "public"
},
{
"constant": true,
"id": 4616,
"mutability": "constant",
"name": "my_internal_string",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4620,
"src": "621:51:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 4614,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "621:6:18",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": {
"argumentTypes": null,
"hexValue": "666f6f",
"id": 4615,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "667:5:18",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_41b1a0649752af1b28b3dc29a1556eee781e4a4c3a1f7f53f90fa834de098c4d",
"typeString": "literal_string \"foo\""
},
"value": "foo"
},
"visibility": "internal"
},
{
"constant": true,
"id": 4619,
"mutability": "constant",
"name": "my_private_uint8",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4620,
"src": "676:43:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
},
"typeName": {
"id": 4617,
"name": "uint8",
"nodeType": "ElementaryTypeName",
"src": "676:5:18",
"typeDescriptions": {
"typeIdentifier": "t_uint8",
"typeString": "uint8"
}
},
"value": {
"argumentTypes": null,
"hexValue": "38",
"id": 4618,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "718:1:18",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_8_by_1",
"typeString": "int_const 8"
},
"value": "8"
},
"visibility": "private"
}
],
"scope": 4788,
"src": "532:190:18"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 4642,
"linearizedBaseContracts": [
4642
],
"name": "StorageMockWithArrays",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"functionSelector": "0749d804",
"id": 4623,
"mutability": "mutable",
"name": "my_public_uint256_dynarray",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4642,
"src": "759:43:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 4621,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "759:7:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 4622,
"length": null,
"nodeType": "ArrayTypeName",
"src": "759:9:18",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "public"
},
{
"constant": false,
"id": 4626,
"mutability": "mutable",
"name": "my_internal_string_dynarray",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4642,
"src": "806:45:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_string_storage_$dyn_storage",
"typeString": "string[]"
},
"typeName": {
"baseType": {
"id": 4624,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "806:6:18",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"id": 4625,
"length": null,
"nodeType": "ArrayTypeName",
"src": "806:8:18",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr",
"typeString": "string[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 4629,
"mutability": "mutable",
"name": "my_private_address_dynarray",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4642,
"src": "855:45:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_storage",
"typeString": "address[]"
},
"typeName": {
"baseType": {
"id": 4627,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "855:7:18",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 4628,
"length": null,
"nodeType": "ArrayTypeName",
"src": "855:9:18",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
"typeString": "address[]"
}
},
"value": null,
"visibility": "private"
},
{
"constant": false,
"functionSelector": "03cfd947",
"id": 4633,
"mutability": "mutable",
"name": "my_public_int8_staticarray",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4642,
"src": "904:42:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_int8_$10_storage",
"typeString": "int8[10]"
},
"typeName": {
"baseType": {
"id": 4630,
"name": "int8",
"nodeType": "ElementaryTypeName",
"src": "904:4:18",
"typeDescriptions": {
"typeIdentifier": "t_int8",
"typeString": "int8"
}
},
"id": 4632,
"length": {
"argumentTypes": null,
"hexValue": "3130",
"id": 4631,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "909:2:18",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_10_by_1",
"typeString": "int_const 10"
},
"value": "10"
},
"nodeType": "ArrayTypeName",
"src": "904:8:18",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_int8_$10_storage_ptr",
"typeString": "int8[10]"
}
},
"value": null,
"visibility": "public"
},
{
"constant": false,
"id": 4637,
"mutability": "mutable",
"name": "my_internal_bool_staticarray",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4642,
"src": "950:46:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_bool_$20_storage",
"typeString": "bool[20]"
},
"typeName": {
"baseType": {
"id": 4634,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "950:4:18",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 4636,
"length": {
"argumentTypes": null,
"hexValue": "3230",
"id": 4635,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "955:2:18",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_20_by_1",
"typeString": "int_const 20"
},
"value": "20"
},
"nodeType": "ArrayTypeName",
"src": "950:8:18",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_bool_$20_storage_ptr",
"typeString": "bool[20]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 4641,
"mutability": "mutable",
"name": "my_private_uint_staticarray",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4642,
"src": "1000:44:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$30_storage",
"typeString": "uint256[30]"
},
"typeName": {
"baseType": {
"id": 4638,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "1000:4:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 4640,
"length": {
"argumentTypes": null,
"hexValue": "3330",
"id": 4639,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1005:2:18",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_30_by_1",
"typeString": "int_const 30"
},
"value": "30"
},
"nodeType": "ArrayTypeName",
"src": "1000:8:18",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$30_storage_ptr",
"typeString": "uint256[30]"
}
},
"value": null,
"visibility": "private"
}
],
"scope": 4788,
"src": "724:323:18"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 4658,
"linearizedBaseContracts": [
4658
],
"name": "StorageMockWithMappings",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"functionSelector": "1b8268d5",
"id": 4646,
"mutability": "mutable",
"name": "my_mapping",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4658,
"src": "1086:44:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$",
"typeString": "mapping(uint256 => string)"
},
"typeName": {
"id": 4645,
"keyType": {
"id": 4643,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1094:7:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Mapping",
"src": "1086:26:18",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_uint256_$_t_string_storage_$",
"typeString": "mapping(uint256 => string)"
},
"valueType": {
"id": 4644,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "1105:6:18",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
}
},
"value": null,
"visibility": "public"
},
{
"constant": false,
"id": 4652,
"mutability": "mutable",
"name": "my_nested_mapping",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4658,
"src": "1134:73:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_uint256_$_t_mapping$_t_string_memory_ptr_$_t_address_$_$",
"typeString": "mapping(uint256 => mapping(string => address))"
},
"typeName": {
"id": 4651,
"keyType": {
"id": 4647,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1142:7:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Mapping",
"src": "1134:46:18",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_uint256_$_t_mapping$_t_string_memory_ptr_$_t_address_$_$",
"typeString": "mapping(uint256 => mapping(string => address))"
},
"valueType": {
"id": 4650,
"keyType": {
"id": 4648,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "1161:6:18",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"nodeType": "Mapping",
"src": "1153:26:18",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_string_memory_ptr_$_t_address_$",
"typeString": "mapping(string => address)"
},
"valueType": {
"id": 4649,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1171:7:18",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 4657,
"mutability": "mutable",
"name": "my_mapping_with_arrays",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4658,
"src": "1211:57:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_uint256_$_t_array$_t_bool_$dyn_storage_$",
"typeString": "mapping(uint256 => bool[])"
},
"typeName": {
"id": 4656,
"keyType": {
"id": 4653,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1219:7:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Mapping",
"src": "1211:26:18",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_uint256_$_t_array$_t_bool_$dyn_storage_$",
"typeString": "mapping(uint256 => bool[])"
},
"valueType": {
"baseType": {
"id": 4654,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "1230:4:18",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 4655,
"length": null,
"nodeType": "ArrayTypeName",
"src": "1230:6:18",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
"typeString": "bool[]"
}
}
},
"value": null,
"visibility": "private"
}
],
"scope": 4788,
"src": "1049:222:18"
},
{
"abstract": false,
"baseContracts": [],
"contractDependencies": [],
"contractKind": "contract",
"documentation": null,
"fullyImplemented": true,
"id": 4692,
"linearizedBaseContracts": [
4692
],
"name": "StorageMockWithFunctions",
"nodeType": "ContractDefinition",
"nodes": [
{
"constant": false,
"id": 4664,
"mutability": "mutable",
"name": "my_fun",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4692,
"src": "1311:30:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$",
"typeString": "function (uint256)"
},
"typeName": {
"id": 4663,
"nodeType": "FunctionTypeName",
"parameterTypes": {
"id": 4661,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 4660,
"mutability": "mutable",
"name": "",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4663,
"src": "1320:4:18",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 4659,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "1320:4:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1319:6:18"
},
"returnParameterTypes": {
"id": 4662,
"nodeType": "ParameterList",
"parameters": [],
"src": "1335:0:18"
},
"src": "1311:30:18",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$__$",
"typeString": "function (uint256)"
},
"visibility": "internal"
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 4673,
"mutability": "mutable",
"name": "my_fun_dynarray",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4692,
"src": "1345:65:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_function_internal_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$_$dyn_storage",
"typeString": "function (string,string)[]"
},
"typeName": {
"baseType": {
"id": 4671,
"nodeType": "FunctionTypeName",
"parameterTypes": {
"id": 4669,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 4666,
"mutability": "mutable",
"name": "",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4671,
"src": "1354:13:18",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 4665,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "1354:6:18",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 4668,
"mutability": "mutable",
"name": "",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4671,
"src": "1369:13:18",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_string_memory_ptr",
"typeString": "string"
},
"typeName": {
"id": 4667,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "1369:6:18",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1353:30:18"
},
"returnParameterTypes": {
"id": 4670,
"nodeType": "ParameterList",
"parameters": [],
"src": "1383:0:18"
},
"src": "1345:39:18",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (string,string)"
},
"visibility": "internal"
},
"id": 4672,
"length": null,
"nodeType": "ArrayTypeName",
"src": "1345:40:18",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_function_internal_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$_$dyn_storage_ptr",
"typeString": "function (string,string)[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 4683,
"mutability": "mutable",
"name": "my_fun_staticarray",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4692,
"src": "1414:64:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_function_internal_nonpayable$_t_uint256_$returns$_t_address_$_$10_storage",
"typeString": "function (uint256) returns (address)[10]"
},
"typeName": {
"baseType": {
"id": 4680,
"nodeType": "FunctionTypeName",
"parameterTypes": {
"id": 4676,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 4675,
"mutability": "mutable",
"name": "",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4680,
"src": "1423:4:18",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 4674,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "1423:4:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1422:6:18"
},
"returnParameterTypes": {
"id": 4679,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 4678,
"mutability": "mutable",
"name": "",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4680,
"src": "1438:7:18",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 4677,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1438:7:18",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1437:9:18"
},
"src": "1414:33:18",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_uint256_$returns$_t_address_$",
"typeString": "function (uint256) returns (address)"
},
"visibility": "internal"
},
"id": 4682,
"length": {
"argumentTypes": null,
"hexValue": "3130",
"id": 4681,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1447:2:18",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_10_by_1",
"typeString": "int_const 10"
},
"value": "10"
},
"nodeType": "ArrayTypeName",
"src": "1414:36:18",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_function_internal_nonpayable$_t_uint256_$returns$_t_address_$_$10_storage_ptr",
"typeString": "function (uint256) returns (address)[10]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 4691,
"mutability": "mutable",
"name": "my_fun_mapping",
"nodeType": "VariableDeclaration",
"overrides": null,
"scope": 4692,
"src": "1482:58:18",
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_uint256_$_t_function_internal_nonpayable$_t_bool_$returns$__$_$",
"typeString": "mapping(uint256 => function (bool))"
},
"typeName": {
"id": 4690,
"keyType": {
"id": 4684,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1490:7:18",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString