UNPKG

@etherisc/registry-contracts

Version:

Etherisc's smart contracts for the registry.

172 lines 6.68 kB
{ "abi": [ { "inputs": [], "name": "proxiableUUID", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" } ], "allSourcePaths": { "7": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/interfaces/draft-IERC1822.sol" }, "ast": { "absolutePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/interfaces/draft-IERC1822.sol", "exportedSymbols": { "IERC1822Proxiable": [ 18376 ] }, "id": 18377, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { "id": 18368, "literals": [ "solidity", "^", "0.8", ".0" ], "nodeType": "PragmaDirective", "src": "113:23:7" }, { "abstract": false, "baseContracts": [], "canonicalName": "IERC1822Proxiable", "contractDependencies": [], "contractKind": "interface", "documentation": { "id": 18369, "nodeType": "StructuredDocumentation", "src": "138:203:7", "text": " @dev ERC1822: Universal Upgradeable Proxy Standard (UUPS) documents a method for upgradeability through a simplified\n proxy whose upgrades are fully controlled by the current implementation." }, "fullyImplemented": false, "id": 18376, "linearizedBaseContracts": [ 18376 ], "name": "IERC1822Proxiable", "nameLocation": "352:17:7", "nodeType": "ContractDefinition", "nodes": [ { "documentation": { "id": 18370, "nodeType": "StructuredDocumentation", "src": "376:438:7", "text": " @dev Returns the storage slot that the proxiable contract assumes is being used to store the implementation\n address.\n IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks\n bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this\n function revert if invoked through a proxy." }, "functionSelector": "52d1902d", "id": 18375, "implemented": false, "kind": "function", "modifiers": [], "name": "proxiableUUID", "nameLocation": "828:13:7", "nodeType": "FunctionDefinition", "parameters": { "id": 18371, "nodeType": "ParameterList", "parameters": [], "src": "841:2:7" }, "returnParameters": { "id": 18374, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 18373, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 18375, "src": "867:7:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 18372, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "867:7:7", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "866:9:7" }, "scope": 18376, "src": "819:57:7", "stateMutability": "view", "virtual": false, "visibility": "external" } ], "scope": 18377, "src": "342:536:7", "usedErrors": [] } ], "src": "113:766:7" }, "bytecode": "", "bytecodeSha1": "da39a3ee5e6b4b0d3255bfef95601890afd80709", "compiler": { "evm_version": "istanbul", "optimizer": { "enabled": true, "runs": 200 }, "version": "0.8.19+commit.7dd6d404" }, "contractName": "IERC1822Proxiable", "coverageMap": { "branches": {}, "statements": {} }, "dependencies": [], "deployedBytecode": "", "deployedSourceMap": "", "language": "Solidity", "natspec": { "details": "ERC1822: Universal Upgradeable Proxy Standard (UUPS) documents a method for upgradeability through a simplified proxy whose upgrades are fully controlled by the current implementation.", "kind": "dev", "methods": { "proxiableUUID()": { "details": "Returns the storage slot that the proxiable contract assumes is being used to store the implementation address. IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this function revert if invoked through a proxy." } }, "version": 1 }, "offset": [ 342, 878 ], "opcodes": "", "pcMap": {}, "sha1": "0e71888b4d73c39dd01be5e05c7f7fd658431f07", "source": "// SPDX-License-Identifier: MIT\n// OpenZeppelin Contracts (last updated v4.5.0) (interfaces/draft-IERC1822.sol)\n\npragma solidity ^0.8.0;\n\n/**\n * @dev ERC1822: Universal Upgradeable Proxy Standard (UUPS) documents a method for upgradeability through a simplified\n * proxy whose upgrades are fully controlled by the current implementation.\n */\ninterface IERC1822Proxiable {\n /**\n * @dev Returns the storage slot that the proxiable contract assumes is being used to store the implementation\n * address.\n *\n * IMPORTANT: A proxy pointing at a proxiable contract should not be considered proxiable itself, because this risks\n * bricking a proxy that upgrades to it, by delegating to itself until out of gas. Thus it is critical that this\n * function revert if invoked through a proxy.\n */\n function proxiableUUID() external view returns (bytes32);\n}\n", "sourceMap": "", "sourcePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.8.2/contracts/interfaces/draft-IERC1822.sol", "type": "interface" }