UNPKG

@etherisc/gif-interface

Version:

This repository holds the necessary interfaces and base contracts to interact with an existing GIF instance. The repository is not intended to be used on its own.

1,470 lines 48.9 kB
{ "abi": [ { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "release", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "contractName", "type": "bytes32" } ], "name": "LogContractDeregistered", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "release", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "contractName", "type": "bytes32" }, { "indexed": false, "internalType": "address", "name": "contractAddress", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "isNew", "type": "bool" } ], "name": "LogContractRegistered", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "release", "type": "bytes32" } ], "name": "LogReleasePrepared", "type": "event" }, { "inputs": [ { "internalType": "uint256", "name": "idx", "type": "uint256" } ], "name": "contractName", "outputs": [ { "internalType": "bytes32", "name": "_contractName", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "contracts", "outputs": [ { "internalType": "uint256", "name": "_numberOfContracts", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_contractName", "type": "bytes32" } ], "name": "deregister", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_release", "type": "bytes32" }, { "internalType": "bytes32", "name": "_contractName", "type": "bytes32" } ], "name": "deregisterInRelease", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "bytes32", "name": "_contractName", "type": "bytes32" } ], "name": "ensureSender", "outputs": [ { "internalType": "bool", "name": "_senderMatches", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_contractName", "type": "bytes32" } ], "name": "getContract", "outputs": [ { "internalType": "address", "name": "_contractAddress", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_release", "type": "bytes32" }, { "internalType": "bytes32", "name": "_contractName", "type": "bytes32" } ], "name": "getContractInRelease", "outputs": [ { "internalType": "address", "name": "_contractAddress", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getRelease", "outputs": [ { "internalType": "bytes32", "name": "_release", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_newRelease", "type": "bytes32" } ], "name": "prepareRelease", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_contractName", "type": "bytes32" }, { "internalType": "address", "name": "_contractAddress", "type": "address" } ], "name": "register", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "_release", "type": "bytes32" }, { "internalType": "bytes32", "name": "_contractName", "type": "bytes32" }, { "internalType": "address", "name": "_contractAddress", "type": "address" } ], "name": "registerInRelease", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ], "allSourcePaths": { "21": "contracts/modules/IRegistry.sol" }, "ast": { "absolutePath": "contracts/modules/IRegistry.sol", "exportedSymbols": { "IRegistry": [ 3538 ] }, "id": 3539, "license": "Apache-2.0", "nodeType": "SourceUnit", "nodes": [ { "id": 3442, "literals": [ "solidity", "0.8", ".2" ], "nodeType": "PragmaDirective", "src": "39:22:21" }, { "abstract": false, "baseContracts": [], "contractDependencies": [], "contractKind": "interface", "fullyImplemented": false, "id": 3538, "linearizedBaseContracts": [ 3538 ], "name": "IRegistry", "nameLocation": "73:9:21", "nodeType": "ContractDefinition", "nodes": [ { "anonymous": false, "id": 3452, "name": "LogContractRegistered", "nameLocation": "96:21:21", "nodeType": "EventDefinition", "parameters": { "id": 3451, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3444, "indexed": false, "mutability": "mutable", "name": "release", "nameLocation": "135:7:21", "nodeType": "VariableDeclaration", "scope": 3452, "src": "127:15:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3443, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "127:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 3446, "indexed": false, "mutability": "mutable", "name": "contractName", "nameLocation": "160:12:21", "nodeType": "VariableDeclaration", "scope": 3452, "src": "152:20:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3445, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "152:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 3448, "indexed": false, "mutability": "mutable", "name": "contractAddress", "nameLocation": "190:15:21", "nodeType": "VariableDeclaration", "scope": 3452, "src": "182:23:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3447, "name": "address", "nodeType": "ElementaryTypeName", "src": "182:7:21", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 3450, "indexed": false, "mutability": "mutable", "name": "isNew", "nameLocation": "220:5:21", "nodeType": "VariableDeclaration", "scope": 3452, "src": "215:10:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 3449, "name": "bool", "nodeType": "ElementaryTypeName", "src": "215:4:21", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "117:114:21" }, "src": "90:142:21" }, { "anonymous": false, "id": 3458, "name": "LogContractDeregistered", "nameLocation": "244:23:21", "nodeType": "EventDefinition", "parameters": { "id": 3457, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3454, "indexed": false, "mutability": "mutable", "name": "release", "nameLocation": "276:7:21", "nodeType": "VariableDeclaration", "scope": 3458, "src": "268:15:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3453, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "268:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 3456, "indexed": false, "mutability": "mutable", "name": "contractName", "nameLocation": "293:12:21", "nodeType": "VariableDeclaration", "scope": 3458, "src": "285:20:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3455, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "285:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "267:39:21" }, "src": "238:69:21" }, { "anonymous": false, "id": 3462, "name": "LogReleasePrepared", "nameLocation": "319:18:21", "nodeType": "EventDefinition", "parameters": { "id": 3461, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3460, "indexed": false, "mutability": "mutable", "name": "release", "nameLocation": "346:7:21", "nodeType": "VariableDeclaration", "scope": 3462, "src": "338:15:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3459, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "338:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "337:17:21" }, "src": "313:42:21" }, { "functionSelector": "1d5e7314", "id": 3471, "implemented": false, "kind": "function", "modifiers": [], "name": "registerInRelease", "nameLocation": "370:17:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3469, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3464, "mutability": "mutable", "name": "_release", "nameLocation": "405:8:21", "nodeType": "VariableDeclaration", "scope": 3471, "src": "397:16:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3463, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "397:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 3466, "mutability": "mutable", "name": "_contractName", "nameLocation": "431:13:21", "nodeType": "VariableDeclaration", "scope": 3471, "src": "423:21:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3465, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "423:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 3468, "mutability": "mutable", "name": "_contractAddress", "nameLocation": "462:16:21", "nodeType": "VariableDeclaration", "scope": 3471, "src": "454:24:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3467, "name": "address", "nodeType": "ElementaryTypeName", "src": "454:7:21", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "387:97:21" }, "returnParameters": { "id": 3470, "nodeType": "ParameterList", "parameters": [], "src": "493:0:21" }, "scope": 3538, "src": "361:133:21", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "d22057a9", "id": 3478, "implemented": false, "kind": "function", "modifiers": [], "name": "register", "nameLocation": "509:8:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3476, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3473, "mutability": "mutable", "name": "_contractName", "nameLocation": "526:13:21", "nodeType": "VariableDeclaration", "scope": 3478, "src": "518:21:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3472, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "518:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 3475, "mutability": "mutable", "name": "_contractAddress", "nameLocation": "549:16:21", "nodeType": "VariableDeclaration", "scope": 3478, "src": "541:24:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3474, "name": "address", "nodeType": "ElementaryTypeName", "src": "541:7:21", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "517:49:21" }, "returnParameters": { "id": 3477, "nodeType": "ParameterList", "parameters": [], "src": "575:0:21" }, "scope": 3538, "src": "500:76:21", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "dc527b08", "id": 3485, "implemented": false, "kind": "function", "modifiers": [], "name": "deregisterInRelease", "nameLocation": "591:19:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3483, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3480, "mutability": "mutable", "name": "_release", "nameLocation": "619:8:21", "nodeType": "VariableDeclaration", "scope": 3485, "src": "611:16:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3479, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "611:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 3482, "mutability": "mutable", "name": "_contractName", "nameLocation": "637:13:21", "nodeType": "VariableDeclaration", "scope": 3485, "src": "629:21:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3481, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "629:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "610:41:21" }, "returnParameters": { "id": 3484, "nodeType": "ParameterList", "parameters": [], "src": "668:0:21" }, "scope": 3538, "src": "582:87:21", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "20813154", "id": 3490, "implemented": false, "kind": "function", "modifiers": [], "name": "deregister", "nameLocation": "684:10:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3488, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3487, "mutability": "mutable", "name": "_contractName", "nameLocation": "703:13:21", "nodeType": "VariableDeclaration", "scope": 3490, "src": "695:21:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3486, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "695:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "694:23:21" }, "returnParameters": { "id": 3489, "nodeType": "ParameterList", "parameters": [], "src": "726:0:21" }, "scope": 3538, "src": "675:52:21", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "893917ea", "id": 3495, "implemented": false, "kind": "function", "modifiers": [], "name": "prepareRelease", "nameLocation": "742:14:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3493, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3492, "mutability": "mutable", "name": "_newRelease", "nameLocation": "765:11:21", "nodeType": "VariableDeclaration", "scope": 3495, "src": "757:19:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3491, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "757:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "756:21:21" }, "returnParameters": { "id": 3494, "nodeType": "ParameterList", "parameters": [], "src": "786:0:21" }, "scope": 3538, "src": "733:54:21", "stateMutability": "nonpayable", "virtual": false, "visibility": "external" }, { "functionSelector": "b0ef18a0", "id": 3504, "implemented": false, "kind": "function", "modifiers": [], "name": "getContractInRelease", "nameLocation": "802:20:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3500, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3497, "mutability": "mutable", "name": "_release", "nameLocation": "831:8:21", "nodeType": "VariableDeclaration", "scope": 3504, "src": "823:16:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3496, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "823:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" }, { "constant": false, "id": 3499, "mutability": "mutable", "name": "_contractName", "nameLocation": "849:13:21", "nodeType": "VariableDeclaration", "scope": 3504, "src": "841:21:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3498, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "841:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "822:41:21" }, "returnParameters": { "id": 3503, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3502, "mutability": "mutable", "name": "_contractAddress", "nameLocation": "919:16:21", "nodeType": "VariableDeclaration", "scope": 3504, "src": "911:24:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3501, "name": "address", "nodeType": "ElementaryTypeName", "src": "911:7:21", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "910:26:21" }, "scope": 3538, "src": "793:144:21", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "e16c7d98", "id": 3511, "implemented": false, "kind": "function", "modifiers": [], "name": "getContract", "nameLocation": "952:11:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3507, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3506, "mutability": "mutable", "name": "_contractName", "nameLocation": "972:13:21", "nodeType": "VariableDeclaration", "scope": 3511, "src": "964:21:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3505, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "964:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "963:23:21" }, "returnParameters": { "id": 3510, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3509, "mutability": "mutable", "name": "_contractAddress", "nameLocation": "1042:16:21", "nodeType": "VariableDeclaration", "scope": 3511, "src": "1034:24:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3508, "name": "address", "nodeType": "ElementaryTypeName", "src": "1034:7:21", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" } ], "src": "1033:26:21" }, "scope": 3538, "src": "943:117:21", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "76b707b7", "id": 3516, "implemented": false, "kind": "function", "modifiers": [], "name": "getRelease", "nameLocation": "1075:10:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3512, "nodeType": "ParameterList", "parameters": [], "src": "1085:2:21" }, "returnParameters": { "id": 3515, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3514, "mutability": "mutable", "name": "_release", "nameLocation": "1119:8:21", "nodeType": "VariableDeclaration", "scope": 3516, "src": "1111:16:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3513, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1111:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "1110:18:21" }, "scope": 3538, "src": "1066:63:21", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "2ca65a79", "id": 3525, "implemented": false, "kind": "function", "modifiers": [], "name": "ensureSender", "nameLocation": "1144:12:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3521, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3518, "mutability": "mutable", "name": "sender", "nameLocation": "1165:6:21", "nodeType": "VariableDeclaration", "scope": 3525, "src": "1157:14:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 3517, "name": "address", "nodeType": "ElementaryTypeName", "src": "1157:7:21", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "visibility": "internal" }, { "constant": false, "id": 3520, "mutability": "mutable", "name": "_contractName", "nameLocation": "1181:13:21", "nodeType": "VariableDeclaration", "scope": 3525, "src": "1173:21:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3519, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1173:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "1156:39:21" }, "returnParameters": { "id": 3524, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3523, "mutability": "mutable", "name": "_senderMatches", "nameLocation": "1223:14:21", "nodeType": "VariableDeclaration", "scope": 3525, "src": "1218:19:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" }, "typeName": { "id": 3522, "name": "bool", "nodeType": "ElementaryTypeName", "src": "1218:4:21", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "visibility": "internal" } ], "src": "1217:21:21" }, "scope": 3538, "src": "1135:104:21", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "6c0f79b6", "id": 3530, "implemented": false, "kind": "function", "modifiers": [], "name": "contracts", "nameLocation": "1254:9:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3526, "nodeType": "ParameterList", "parameters": [], "src": "1263:2:21" }, "returnParameters": { "id": 3529, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3528, "mutability": "mutable", "name": "_numberOfContracts", "nameLocation": "1297:18:21", "nodeType": "VariableDeclaration", "scope": 3530, "src": "1289:26:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3527, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1289:7:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1288:28:21" }, "scope": 3538, "src": "1245:72:21", "stateMutability": "view", "virtual": false, "visibility": "external" }, { "functionSelector": "f6b3e7d0", "id": 3537, "implemented": false, "kind": "function", "modifiers": [], "name": "contractName", "nameLocation": "1332:12:21", "nodeType": "FunctionDefinition", "parameters": { "id": 3533, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3532, "mutability": "mutable", "name": "idx", "nameLocation": "1353:3:21", "nodeType": "VariableDeclaration", "scope": 3537, "src": "1345:11:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 3531, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "1345:7:21", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "visibility": "internal" } ], "src": "1344:13:21" }, "returnParameters": { "id": 3536, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 3535, "mutability": "mutable", "name": "_contractName", "nameLocation": "1389:13:21", "nodeType": "VariableDeclaration", "scope": 3537, "src": "1381:21:21", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 3534, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "1381:7:21", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "1380:23:21" }, "scope": 3538, "src": "1323:81:21", "stateMutability": "view", "virtual": false, "visibility": "external" } ], "scope": 3539, "src": "63:1344:21" } ], "src": "39:1369:21" }, "bytecode": "", "bytecodeSha1": "da39a3ee5e6b4b0d3255bfef95601890afd80709", "compiler": { "evm_version": "istanbul", "optimizer": { "enabled": true, "runs": 200 }, "version": "0.8.2+commit.661d1103" }, "contractName": "IRegistry", "coverageMap": { "branches": {}, "statements": {} }, "dependencies": [], "deployedBytecode": "", "deployedSourceMap": "", "language": "Solidity", "natspec": { "kind": "dev", "methods": {}, "version": 1 }, "offset": [ 63, 1407 ], "opcodes": "", "pcMap": {}, "sha1": "ca3c0112cfc6cba765d5f2014fc36aee8385a4e3", "source": "// SPDX-License-Identifier: Apache-2.0\npragma solidity 0.8.2;\n\ninterface IRegistry {\n\n event LogContractRegistered(\n bytes32 release,\n bytes32 contractName,\n address contractAddress,\n bool isNew\n );\n\n event LogContractDeregistered(bytes32 release, bytes32 contractName);\n\n event LogReleasePrepared(bytes32 release);\n\n function registerInRelease(\n bytes32 _release,\n bytes32 _contractName,\n address _contractAddress\n ) external;\n\n function register(bytes32 _contractName, address _contractAddress) external;\n\n function deregisterInRelease(bytes32 _release, bytes32 _contractName)\n external;\n\n function deregister(bytes32 _contractName) external;\n\n function prepareRelease(bytes32 _newRelease) external;\n\n function getContractInRelease(bytes32 _release, bytes32 _contractName)\n external\n view\n returns (address _contractAddress);\n\n function getContract(bytes32 _contractName)\n external\n view\n returns (address _contractAddress);\n\n function getRelease() external view returns (bytes32 _release);\n\n function ensureSender(address sender, bytes32 _contractName) external view returns(bool _senderMatches);\n\n function contracts() external view returns (uint256 _numberOfContracts);\n\n function contractName(uint256 idx) external view returns (bytes32 _contractName);\n\n}\n", "sourceMap": "", "sourcePath": "contracts/modules/IRegistry.sol", "type": "interface" }