UNPKG

@etherisc/gif-contracts

Version:

This repository holds the GIF core contracts and tools to develop, test and deploy GIF instances.

170 lines 6.61 kB
{ "abi": [ { "inputs": [], "name": "proxiableUUID", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" } ], "allSourcePaths": { "5": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/interfaces/draft-IERC1822.sol" }, "ast": { "absolutePath": "/home/vscode/.brownie/packages/OpenZeppelin/openzeppelin-contracts@4.7.3/contracts/interfaces/draft-IERC1822.sol", "exportedSymbols": { "IERC1822Proxiable": [ 28636 ] }, "id": 28637, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { "id": 28628, "literals": [ "solidity", "^", "0.8", ".0" ], "nodeType": "PragmaDirective", "src": "113:23:5" }, { "abstract": false, "baseContracts": [], "contractDependencies": [], "contractKind": "interface", "documentation": { "id": 28629, "nodeType": "StructuredDocumentation", "src": "138:203:5", "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": 28636, "linearizedBaseContracts": [ 28636 ], "name": "IERC1822Proxiable", "nameLocation": "352:17:5", "nodeType": "ContractDefinition", "nodes": [ { "documentation": { "id": 28630, "nodeType": "StructuredDocumentation", "src": "376:438:5", "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": 28635, "implemented": false, "kind": "function", "modifiers": [], "name": "proxiableUUID", "nameLocation": "828:13:5", "nodeType": "FunctionDefinition", "parameters": { "id": 28631, "nodeType": "ParameterList", "parameters": [], "src": "841:2:5" }, "returnParameters": { "id": 28634, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 28633, "mutability": "mutable", "name": "", "nameLocation": "-1:-1:-1", "nodeType": "VariableDeclaration", "scope": 28635, "src": "867:7:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, "typeName": { "id": 28632, "name": "bytes32", "nodeType": "ElementaryTypeName", "src": "867:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "visibility": "internal" } ], "src": "866:9:5" }, "scope": 28636, "src": "819:57:5", "stateMutability": "view", "virtual": false, "visibility": "external" } ], "scope": 28637, "src": "342:536:5" } ], "src": "113:766:5" }, "bytecode": "", "bytecodeSha1": "da39a3ee5e6b4b0d3255bfef95601890afd80709", "compiler": { "evm_version": "istanbul", "optimizer": { "enabled": true, "runs": 200 }, "version": "0.8.2+commit.661d1103" }, "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.7.3/contracts/interfaces/draft-IERC1822.sol", "type": "interface" }