Skip to content

Commit

Permalink
Merge pull request #4 from malik672/cache_state_vars
Browse files Browse the repository at this point in the history
get_all_state_vars
  • Loading branch information
malik672 authored Nov 18, 2023
2 parents 1f92fdd + cbff44c commit 30a5baa
Show file tree
Hide file tree
Showing 10 changed files with 543 additions and 464 deletions.
372 changes: 372 additions & 0 deletions artifacts/contract.sol/Counter1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,372 @@
{
"abi": [
{
"inputs": [],
"name": "increment",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "number",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
}
],
"bytecode": {
"object": "0x608060405234801561001057600080fd5b5061017e806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80638381f58a1461003b578063d09de08a14610059575b600080fd5b610043610063565b60405161005091906100a8565b60405180910390f35b610061610069565b005b60005481565b600a6000541061007857600080fd5b600160005461008791906100f2565b600081905550565b6000819050919050565b6100a28161008f565b82525050565b60006020820190506100bd6000830184610099565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006100fd8261008f565b91506101088361008f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561013d5761013c6100c3565b5b82820190509291505056fea2646970667358221220ad4f8bcd003a65ca54686b6174a57128aa9ce6e487bc3378c35935a5930a7e9664736f6c634300080c0033",
"sourceMap": "57:202:0:-:0;;;;;;;;;;;;;;;;;;;",
"linkReferences": {}
},
"deployedBytecode": {
"object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80638381f58a1461003b578063d09de08a14610059575b600080fd5b610043610063565b60405161005091906100a8565b60405180910390f35b610061610069565b005b60005481565b600a6000541061007857600080fd5b600160005461008791906100f2565b600081905550565b6000819050919050565b6100a28161008f565b82525050565b60006020820190506100bd6000830184610099565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006100fd8261008f565b91506101088361008f565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561013d5761013c6100c3565b5b82820190509291505056fea2646970667358221220ad4f8bcd003a65ca54686b6174a57128aa9ce6e487bc3378c35935a5930a7e9664736f6c634300080c0033",
"sourceMap": "57:202:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;81:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;163:94;;;:::i;:::-;;81:21;;;;:::o;163:94::-;218:2;209:6;;:11;201:20;;;;;;249:1;240:6;;:10;;;;:::i;:::-;231:6;:19;;;;163:94::o;7:77:1:-;44:7;73:5;62:16;;7:77;;;:::o;90:118::-;177:24;195:5;177:24;:::i;:::-;172:3;165:37;90:118;;:::o;214:222::-;307:4;345:2;334:9;330:18;322:26;;358:71;426:1;415:9;411:17;402:6;358:71;:::i;:::-;214:222;;;;:::o;442:180::-;490:77;487:1;480:88;587:4;584:1;577:15;611:4;608:1;601:15;628:305;668:3;687:20;705:1;687:20;:::i;:::-;682:25;;721:20;739:1;721:20;:::i;:::-;716:25;;875:1;807:66;803:74;800:1;797:81;794:107;;;881:18;;:::i;:::-;794:107;925:1;922;918:9;911:16;;628:305;;;;:::o",
"linkReferences": {}
},
"methodIdentifiers": {
"increment()": "d09de08a",
"number()": "8381f58a"
},
"ast": {
"absolutePath": "src/contract.sol",
"id": 25,
"exportedSymbols": {
"Counter1": [
24
]
},
"nodeType": "SourceUnit",
"src": "32:229:0",
"nodes": [
{
"id": 1,
"nodeType": "PragmaDirective",
"src": "32:23:0",
"nodes": [],
"literals": [
"solidity",
"0.8",
".12"
]
},
{
"id": 24,
"nodeType": "ContractDefinition",
"src": "57:202:0",
"nodes": [
{
"id": 3,
"nodeType": "VariableDeclaration",
"src": "81:21:0",
"nodes": [],
"constant": false,
"functionSelector": "8381f58a",
"mutability": "mutable",
"name": "number",
"nameLocation": "96:6:0",
"scope": 24,
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "81:7:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"visibility": "public"
},
{
"id": 5,
"nodeType": "VariableDeclaration",
"src": "108:21:0",
"nodes": [],
"constant": false,
"mutability": "mutable",
"name": "ionize",
"nameLocation": "123:6:0",
"scope": 24,
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_string_storage",
"typeString": "string"
},
"typeName": {
"id": 4,
"name": "string",
"nodeType": "ElementaryTypeName",
"src": "108:6:0",
"typeDescriptions": {
"typeIdentifier": "t_string_storage_ptr",
"typeString": "string"
}
},
"visibility": "private"
},
{
"id": 7,
"nodeType": "VariableDeclaration",
"src": "135:21:0",
"nodes": [],
"constant": false,
"mutability": "mutable",
"name": "localize",
"nameLocation": "148:8:0",
"scope": 24,
"stateVariable": true,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 6,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "135:4:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"visibility": "private"
},
{
"id": 23,
"nodeType": "FunctionDefinition",
"src": "163:94:0",
"nodes": [],
"body": {
"id": 22,
"nodeType": "Block",
"src": "191:66:0",
"nodes": [],
"statements": [
{
"expression": {
"arguments": [
{
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 13,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"id": 11,
"name": "number",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3,
"src": "209:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<",
"rightExpression": {
"hexValue": "3130",
"id": 12,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "218:2:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_10_by_1",
"typeString": "int_const 10"
},
"value": "10"
},
"src": "209:11:0",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
}
],
"id": 10,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
-18,
-18
],
"referencedDeclaration": -18,
"src": "201:7:0",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$",
"typeString": "function (bool) pure"
}
},
"id": 14,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "201:20:0",
"tryCall": false,
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 15,
"nodeType": "ExpressionStatement",
"src": "201:20:0"
},
{
"expression": {
"id": 20,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"id": 16,
"name": "number",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3,
"src": "231:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 19,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"id": 17,
"name": "number",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3,
"src": "240:6:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "+",
"rightExpression": {
"hexValue": "31",
"id": 18,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "249:1:0",
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
},
"src": "240:10:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "231:19:0",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 21,
"nodeType": "ExpressionStatement",
"src": "231:19:0"
}
]
},
"functionSelector": "d09de08a",
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "increment",
"nameLocation": "172:9:0",
"parameters": {
"id": 8,
"nodeType": "ParameterList",
"parameters": [],
"src": "181:2:0"
},
"returnParameters": {
"id": 9,
"nodeType": "ParameterList",
"parameters": [],
"src": "191:0:0"
},
"scope": 24,
"stateMutability": "nonpayable",
"virtual": false,
"visibility": "public"
}
],
"abstract": false,
"baseContracts": [],
"canonicalName": "Counter1",
"contractDependencies": [],
"contractKind": "contract",
"fullyImplemented": true,
"linearizedBaseContracts": [
24
],
"name": "Counter1",
"nameLocation": "66:8:0",
"scope": 25,
"usedErrors": []
}
],
"license": "MIT"
},
"id": 0
}
Loading

0 comments on commit 30a5baa

Please sign in to comment.