{ "absolutePath": "a", "exportedSymbols": { "C": [ 19 ], "X": [ 2 ], "f": [ 9 ] }, "id": 20, "nodeType": "SourceUnit", "nodes": [ { "errorSelector": "c1599bd9", "id": 2, "name": "X", "nameLocation": "6:1:1", "nodeType": "ErrorDefinition", "parameters": { "id": 1, "nodeType": "ParameterList", "parameters": [], "src": "7:2:1" }, "src": "0:10:1" }, { "body": { "id": 8, "nodeType": "Block", "src": "29:15:1", "statements": [ { "errorCall": { "arguments": [], "expression": { "argumentTypes": [], "id": 5, "name": "X", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 2, "src": "38:1:1", "typeDescriptions": { "typeIdentifier": "t_function_error_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 6, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "38:3:1", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 7, "nodeType": "RevertStatement", "src": "31:10:1" } ] }, "id": 9, "implemented": true, "kind": "freeFunction", "modifiers": [], "name": "f", "nameLocation": "20:1:1", "nodeType": "FunctionDefinition", "parameters": { "id": 3, "nodeType": "ParameterList", "parameters": [], "src": "21:2:1" }, "returnParameters": { "id": 4, "nodeType": "ParameterList", "parameters": [], "src": "29:0:1" }, "scope": 20, "src": "11:33:1", "stateMutability": "pure", "virtual": false, "visibility": "internal" }, { "abstract": false, "baseContracts": [], "canonicalName": "C", "contractDependencies": [], "contractKind": "contract", "fullyImplemented": true, "id": 19, "linearizedBaseContracts": [ 19 ], "name": "C", "nameLocation": "54:1:1", "nodeType": "ContractDefinition", "nodes": [ { "errorSelector": "2bc80f3a", "id": 11, "name": "T", "nameLocation": "68:1:1", "nodeType": "ErrorDefinition", "parameters": { "id": 10, "nodeType": "ParameterList", "parameters": [], "src": "69:2:1" }, "src": "62:10:1" }, { "body": { "id": 17, "nodeType": "Block", "src": "97:8:1", "statements": [ { "expression": { "arguments": [], "expression": { "argumentTypes": [], "id": 14, "name": "f", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": 9, "src": "99:1:1", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$__$returns$__$", "typeString": "function () pure" } }, "id": 15, "isConstant": false, "isLValue": false, "isPure": false, "kind": "functionCall", "lValueRequested": false, "nameLocations": [], "names": [], "nodeType": "FunctionCall", "src": "99:3:1", "tryCall": false, "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, "id": 16, "nodeType": "ExpressionStatement", "src": "99:3:1" } ] }, "functionSelector": "b8c9d365", "id": 18, "implemented": true, "kind": "function", "modifiers": [], "name": "h", "nameLocation": "86:1:1", "nodeType": "FunctionDefinition", "parameters": { "id": 12, "nodeType": "ParameterList", "parameters": [], "src": "87:2:1" }, "returnParameters": { "id": 13, "nodeType": "ParameterList", "parameters": [], "src": "97:0:1" }, "scope": 19, "src": "77:28:1", "stateMutability": "nonpayable", "virtual": false, "visibility": "public" } ], "scope": 20, "src": "45:62:1", "usedErrors": [ 2, 11 ] } ], "src": "0:108:1" }