UNPKG

@ethsub/sol

Version:
1,192 lines (1,191 loc) 60 kB
{ "contractName": "ERC1155Holder", "abi": [ { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "name": "onERC1155Received", "outputs": [ { "internalType": "bytes4", "name": "", "type": "bytes4" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256[]", "name": "", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "", "type": "uint256[]" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "name": "onERC1155BatchReceived", "outputs": [ { "internalType": "bytes4", "name": "", "type": "bytes4" } ], "stateMutability": "nonpayable", "type": "function" } ], "metadata": "{\"compiler\":{\"version\":\"0.6.12+commit.27d51765\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"},{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"onERC1155BatchReceived\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"onERC1155Received\",\"outputs\":[{\"internalType\":\"bytes4\",\"name\":\"\",\"type\":\"bytes4\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"_Available since v3.1._\",\"kind\":\"dev\",\"methods\":{\"supportsInterface(bytes4)\":{\"details\":\"See {IERC165-supportsInterface}. Time complexity O(1), guaranteed to always use less than 30 000 gas.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"@openzeppelin/contracts/token/ERC1155/ERC1155Holder.sol\":\"ERC1155Holder\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"@openzeppelin/contracts/introspection/ERC165.sol\":{\"keccak256\":\"0x24141d2f6b98d4cb77a8936eae8cbaad2e261d9062bdc08036096f4550092501\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b710eb003944777135f027500a5a57b479fe857849f5f467c1ef9687401e3c95\",\"dweb:/ipfs/QmcELzi6KRzAs3DXwxdsoKWRJ13KSeipKQsJgD3unctdZM\"]},\"@openzeppelin/contracts/introspection/IERC165.sol\":{\"keccak256\":\"0xf70bc25d981e4ec9673a995ad2995d5d493ea188d3d8f388bba9c227ce09fb82\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd970f51e3a77790c2f02b5b1759827c3b897c3d98c407b3631e8af32e3dc93c\",\"dweb:/ipfs/QmPF85Amgbqjk3SNZKsPCsqCw8JfwYEPMnnhvMJUyX58je\"]},\"@openzeppelin/contracts/token/ERC1155/ERC1155Holder.sol\":{\"keccak256\":\"0x21428ca879b2437107322dfc1e214d25ecd6b966344961025ee412c3acfd5fc0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9747c875899d05823aede28b60ca8d3719b8c28018f397521c4ffb05041e1ac5\",\"dweb:/ipfs/QmQEQ4jJYEGFNfcngfZ3gPkcrcWYWKbo1Bq2F57scJxbmE\"]},\"@openzeppelin/contracts/token/ERC1155/ERC1155Receiver.sol\":{\"keccak256\":\"0x57a0e246fb1c8f9cccf91c508eafe474e40260a31de3a39019ba8312cfdf9b2d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://652f100749edfc17c4afeecb9fc0941414e2cb30c57fa713736064b71f2462a8\",\"dweb:/ipfs/QmUw4AbnrnANMBDRs92CHL9rBNBYAYCT8EQxmaNZ3nkcdf\"]},\"@openzeppelin/contracts/token/ERC1155/IERC1155Receiver.sol\":{\"keccak256\":\"0x2690a9b7f4f7489b8d25a4fc6bffc02ec3971fb41ed6c8b59adef2833bdab07c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8148c99452b6793ac9599abdc8bdaf4eeb47f34590beea8aa01089be14e2990c\",\"dweb:/ipfs/QmNdenmZ4EDfH9TuBas3pHeGuZvDNo2rsfgUj6ka8vuH37\"]}},\"version\":1}", "bytecode": "0x608060405234801561001057600080fd5b506100216301ffc9a760e01b610036565b610031630271189760e51b610036565b6100ba565b6001600160e01b03198082161415610095576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b61039f806100c96000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a714610046578063bc197c8114610081578063f23a6e611461025f575b600080fd5b61006d6004803603602081101561005c57600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b610242600480360360a081101561009757600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156100ca57600080fd5b8201836020820111156100dc57600080fd5b803590602001918460208302840111600160201b831117156100fd57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561014c57600080fd5b82018360208201111561015e57600080fd5b803590602001918460208302840111600160201b8311171561017f57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b8111156101ce57600080fd5b8201836020820111156101e057600080fd5b803590602001918460018302840111600160201b8311171561020157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610347945050505050565b604080516001600160e01b03199092168252519081900360200190f35b610242600480360360a081101561027557600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a081016080820135600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610358945050505050565b6001600160e01b03191660009081526020819052604090205460ff1690565b63bc197c8160e01b95945050505050565b63f23a6e6160e01b9594505050505056fea26469706673582212201e3cfc86dfd3a5f310794c76dd8c752267a581ca86c2839ea6915a946081bc2164736f6c634300060c0033", "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c806301ffc9a714610046578063bc197c8114610081578063f23a6e611461025f575b600080fd5b61006d6004803603602081101561005c57600080fd5b50356001600160e01b031916610328565b604080519115158252519081900360200190f35b610242600480360360a081101561009757600080fd5b6001600160a01b038235811692602081013590911691810190606081016040820135600160201b8111156100ca57600080fd5b8201836020820111156100dc57600080fd5b803590602001918460208302840111600160201b831117156100fd57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b81111561014c57600080fd5b82018360208201111561015e57600080fd5b803590602001918460208302840111600160201b8311171561017f57600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295949360208101935035915050600160201b8111156101ce57600080fd5b8201836020820111156101e057600080fd5b803590602001918460018302840111600160201b8311171561020157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610347945050505050565b604080516001600160e01b03199092168252519081900360200190f35b610242600480360360a081101561027557600080fd5b6001600160a01b03823581169260208101359091169160408201359160608101359181019060a081016080820135600160201b8111156102b457600080fd5b8201836020820111156102c657600080fd5b803590602001918460018302840111600160201b831117156102e757600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610358945050505050565b6001600160e01b03191660009081526020819052604090205460ff1690565b63bc197c8160e01b95945050505050565b63f23a6e6160e01b9594505050505056fea26469706673582212201e3cfc86dfd3a5f310794c76dd8c752267a581ca86c2839ea6915a946081bc2164736f6c634300060c0033", "immutableReferences": {}, "sourceMap": "139:430:10:-:0;;;;;;;;;;;;-1:-1:-1;768:40:2;-1:-1:-1;;;768:18:2;:40::i;:::-;282:170:12;-1:-1:-1;;;282:18:12;:170::i;:::-;139:430:10;;1507:198:2;-1:-1:-1;;;;;;1590:25:2;;;;;1582:66;;;;;-1:-1:-1;;;1582:66:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1658:33:2;:20;:33;;;;;;;;;;:40;;-1:-1:-1;;1658:40:2;1694:4;1658:40;;;1507:198::o;139:430:10:-;;;;;;;", "deployedSourceMap": "139:430:10:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;965:148:2;;;;;;;;;;;;;;;;-1:-1:-1;965:148:2;-1:-1:-1;;;;;;965:148:2;;:::i;:::-;;;;;;;;;;;;;;;;;;366:201:10;;;;;;;;;;;;;;;;-1:-1:-1;;;;;366:201:10;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;366:201:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;366:201:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;366:201:10;;;;;;;;-1:-1:-1;366:201:10;;-1:-1:-1;;;;;366:201:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;366:201:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;366:201:10;;;;;;;;-1:-1:-1;366:201:10;;-1:-1:-1;;;;;366:201:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;366:201:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;366:201:10;;-1:-1:-1;366:201:10;;-1:-1:-1;;;;;366:201:10:i;:::-;;;;-1:-1:-1;;;;;;366:201:10;;;;;;;;;;;;;;187:173;;;;;;;;;;;;;;;;-1:-1:-1;;;;;187:173:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;187:173:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;187:173:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;187:173:10;;-1:-1:-1;187:173:10;;-1:-1:-1;;;;;187:173:10:i;965:148:2:-;-1:-1:-1;;;;;;1073:33:2;1050:4;1073:33;;;;;;;;;;;;;;965:148::o;366:201:10:-;-1:-1:-1;;;366:201:10;;;;;;;:::o;187:173::-;-1:-1:-1;;;187:173:10;;;;;;;:::o", "source": "// SPDX-License-Identifier: MIT\n\npragma solidity >=0.6.0 <0.8.0;\n\nimport \"./ERC1155Receiver.sol\";\n\n/**\n * @dev _Available since v3.1._\n */\ncontract ERC1155Holder is ERC1155Receiver {\n function onERC1155Received(address, address, uint256, uint256, bytes memory) public virtual override returns (bytes4) {\n return this.onERC1155Received.selector;\n }\n\n function onERC1155BatchReceived(address, address, uint256[] memory, uint256[] memory, bytes memory) public virtual override returns (bytes4) {\n return this.onERC1155BatchReceived.selector;\n }\n}\n", "sourcePath": "@openzeppelin/contracts/token/ERC1155/ERC1155Holder.sol", "ast": { "absolutePath": "@openzeppelin/contracts/token/ERC1155/ERC1155Holder.sol", "exportedSymbols": { "ERC1155Holder": [ 2382 ] }, "id": 2383, "license": "MIT", "nodeType": "SourceUnit", "nodes": [ { "id": 2333, "literals": [ "solidity", ">=", "0.6", ".0", "<", "0.8", ".0" ], "nodeType": "PragmaDirective", "src": "33:31:10" }, { "absolutePath": "@openzeppelin/contracts/token/ERC1155/ERC1155Receiver.sol", "file": "./ERC1155Receiver.sol", "id": 2334, "nodeType": "ImportDirective", "scope": 2383, "sourceUnit": 2465, "src": "66:31:10", "symbolAliases": [], "unitAlias": "" }, { "abstract": false, "baseContracts": [ { "arguments": null, "baseName": { "contractScope": null, "id": 2336, "name": "ERC1155Receiver", "nodeType": "UserDefinedTypeName", "referencedDeclaration": 2464, "src": "165:15:10", "typeDescriptions": { "typeIdentifier": "t_contract$_ERC1155Receiver_$2464", "typeString": "contract ERC1155Receiver" } }, "id": 2337, "nodeType": "InheritanceSpecifier", "src": "165:15:10" } ], "contractDependencies": [ 342, 582, 2464, 2642 ], "contractKind": "contract", "documentation": { "id": 2335, "nodeType": "StructuredDocumentation", "src": "99:39:10", "text": " @dev _Available since v3.1._" }, "fullyImplemented": true, "id": 2382, "linearizedBaseContracts": [ 2382, 2464, 2642, 342, 582 ], "name": "ERC1155Holder", "nodeType": "ContractDefinition", "nodes": [ { "baseFunctions": [ 2623 ], "body": { "id": 2357, "nodeType": "Block", "src": "305:55:10", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, "id": 2353, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, "src": "322:4:10", "typeDescriptions": { "typeIdentifier": "t_contract$_ERC1155Holder_$2382", "typeString": "contract ERC1155Holder" } }, "id": 2354, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "onERC1155Received", "nodeType": "MemberAccess", "referencedDeclaration": 2358, "src": "322:22:10", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", "typeString": "function (address,address,uint256,uint256,bytes memory) external returns (bytes4)" } }, "id": 2355, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "referencedDeclaration": null, "src": "322:31:10", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "functionReturnParameters": 2352, "id": 2356, "nodeType": "Return", "src": "315:38:10" } ] }, "documentation": null, "functionSelector": "f23a6e61", "id": 2358, "implemented": true, "kind": "function", "modifiers": [], "name": "onERC1155Received", "nodeType": "FunctionDefinition", "overrides": { "id": 2349, "nodeType": "OverrideSpecifier", "overrides": [], "src": "279:8:10" }, "parameters": { "id": 2348, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2339, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2358, "src": "214:7:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 2338, "name": "address", "nodeType": "ElementaryTypeName", "src": "214:7:10", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2341, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2358, "src": "223:7:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 2340, "name": "address", "nodeType": "ElementaryTypeName", "src": "223:7:10", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2343, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2358, "src": "232:7:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2342, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "232:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2345, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2358, "src": "241:7:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, "typeName": { "id": 2344, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "241:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2347, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2358, "src": "250:12:10", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 2346, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "250:5:10", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "value": null, "visibility": "internal" } ], "src": "213:50:10" }, "returnParameters": { "id": 2352, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2351, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2358, "src": "297:6:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "typeName": { "id": 2350, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "297:6:10", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "value": null, "visibility": "internal" } ], "src": "296:8:10" }, "scope": 2382, "src": "187:173:10", "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, { "baseFunctions": [ 2641 ], "body": { "id": 2380, "nodeType": "Block", "src": "507:60:10", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, "id": 2376, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], "referencedDeclaration": -28, "src": "524:4:10", "typeDescriptions": { "typeIdentifier": "t_contract$_ERC1155Holder_$2382", "typeString": "contract ERC1155Holder" } }, "id": 2377, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "onERC1155BatchReceived", "nodeType": "MemberAccess", "referencedDeclaration": 2381, "src": "524:27:10", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_bytes_memory_ptr_$returns$_t_bytes4_$", "typeString": "function (address,address,uint256[] memory,uint256[] memory,bytes memory) external returns (bytes4)" } }, "id": 2378, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "memberName": "selector", "nodeType": "MemberAccess", "referencedDeclaration": null, "src": "524:36:10", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "functionReturnParameters": 2375, "id": 2379, "nodeType": "Return", "src": "517:43:10" } ] }, "documentation": null, "functionSelector": "bc197c81", "id": 2381, "implemented": true, "kind": "function", "modifiers": [], "name": "onERC1155BatchReceived", "nodeType": "FunctionDefinition", "overrides": { "id": 2372, "nodeType": "OverrideSpecifier", "overrides": [], "src": "481:8:10" }, "parameters": { "id": 2371, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2360, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2381, "src": "398:7:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 2359, "name": "address", "nodeType": "ElementaryTypeName", "src": "398:7:10", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2362, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2381, "src": "407:7:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" }, "typeName": { "id": 2361, "name": "address", "nodeType": "ElementaryTypeName", "src": "407:7:10", "stateMutability": "nonpayable", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2365, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2381, "src": "416:16:10", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 2363, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "416:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 2364, "length": null, "nodeType": "ArrayTypeName", "src": "416:9:10", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2368, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2381, "src": "434:16:10", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr", "typeString": "uint256[]" }, "typeName": { "baseType": { "id": 2366, "name": "uint256", "nodeType": "ElementaryTypeName", "src": "434:7:10", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "id": 2367, "length": null, "nodeType": "ArrayTypeName", "src": "434:9:10", "typeDescriptions": { "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr", "typeString": "uint256[]" } }, "value": null, "visibility": "internal" }, { "constant": false, "id": 2370, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2381, "src": "452:12:10", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { "typeIdentifier": "t_bytes_memory_ptr", "typeString": "bytes" }, "typeName": { "id": 2369, "name": "bytes", "nodeType": "ElementaryTypeName", "src": "452:5:10", "typeDescriptions": { "typeIdentifier": "t_bytes_storage_ptr", "typeString": "bytes" } }, "value": null, "visibility": "internal" } ], "src": "397:68:10" }, "returnParameters": { "id": 2375, "nodeType": "ParameterList", "parameters": [ { "constant": false, "id": 2374, "mutability": "mutable", "name": "", "nodeType": "VariableDeclaration", "overrides": null, "scope": 2381, "src": "499:6:10", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" }, "typeName": { "id": 2373, "name": "bytes4", "nodeType": "ElementaryTypeName", "src": "499:6:10", "typeDescriptions": { "typeIdentifier": "t_bytes4", "typeString": "bytes4" } }, "value": null, "visibility": "internal" } ], "src": "498:8:10" }, "scope": 2382, "src": "366:201:10", "stateMutability": "nonpayable", "virtual": true, "visibility": "public" } ], "scope": 2383, "src": "139:430:10" } ], "src": "33:537:10" }, "legacyAST": { "attributes": { "absolutePath": "@openzeppelin/contracts/token/ERC1155/ERC1155Holder.sol", "exportedSymbols": { "ERC1155Holder": [ 2382 ] }, "license": "MIT" }, "children": [ { "attributes": { "literals": [ "solidity", ">=", "0.6", ".0", "<", "0.8", ".0" ] }, "id": 2333, "name": "PragmaDirective", "src": "33:31:10" }, { "attributes": { "SourceUnit": 2465, "absolutePath": "@openzeppelin/contracts/token/ERC1155/ERC1155Receiver.sol", "file": "./ERC1155Receiver.sol", "scope": 2383, "symbolAliases": [ null ], "unitAlias": "" }, "id": 2334, "name": "ImportDirective", "src": "66:31:10" }, { "attributes": { "abstract": false, "contractDependencies": [ 342, 582, 2464, 2642 ], "contractKind": "contract", "fullyImplemented": true, "linearizedBaseContracts": [ 2382, 2464, 2642, 342, 582 ], "name": "ERC1155Holder", "scope": 2383 }, "children": [ { "attributes": { "text": " @dev _Available since v3.1._" }, "id": 2335, "name": "StructuredDocumentation", "src": "99:39:10" }, { "attributes": { "arguments": null }, "children": [ { "attributes": { "contractScope": null, "name": "ERC1155Receiver", "referencedDeclaration": 2464, "type": "contract ERC1155Receiver" }, "id": 2336, "name": "UserDefinedTypeName", "src": "165:15:10" } ], "id": 2337, "name": "InheritanceSpecifier", "src": "165:15:10" }, { "attributes": { "baseFunctions": [ 2623 ], "documentation": null, "functionSelector": "f23a6e61", "implemented": true, "isConstructor": false, "kind": "function", "modifiers": [ null ], "name": "onERC1155Received", "scope": 2382, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, "children": [ { "attributes": { "overrides": [ null ] }, "id": 2349, "name": "OverrideSpecifier", "src": "279:8:10" }, { "children": [ { "attributes": { "constant": false, "mutability": "mutable", "name": "", "overrides": null, "scope": 2358, "stateVariable": false, "storageLocation": "default", "type": "address", "value": null, "visibility": "internal" }, "children": [ { "attributes": { "name": "address", "stateMutability": "nonpayable", "type": "address" }, "id": 2338, "name": "ElementaryTypeName", "src": "214:7:10" } ], "id": 2339, "name": "VariableDeclaration", "src": "214:7:10" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "", "overrides": null, "scope": 2358, "stateVariable": false, "storageLocation": "default", "type": "address", "value": null, "visibility": "internal" }, "children": [ { "attributes": { "name": "address", "stateMutability": "nonpayable", "type": "address" }, "id": 2340, "name": "ElementaryTypeName", "src": "223:7:10" } ], "id": 2341, "name": "VariableDeclaration", "src": "223:7:10" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "", "overrides": null, "scope": 2358, "stateVariable": false, "storageLocation": "default", "type": "uint256", "value": null, "visibility": "internal" }, "children": [ { "attributes": { "name": "uint256", "type": "uint256" }, "id": 2342, "name": "ElementaryTypeName", "src": "232:7:10" } ], "id": 2343, "name": "VariableDeclaration", "src": "232:7:10" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "", "overrides": null, "scope": 2358, "stateVariable": false, "storageLocation": "default", "type": "uint256", "value": null, "visibility": "internal" }, "children": [ { "attributes": { "name": "uint256", "type": "uint256" }, "id": 2344, "name": "ElementaryTypeName", "src": "241:7:10" } ], "id": 2345, "name": "VariableDeclaration", "src": "241:7:10" }, { "attributes": { "constant": false, "mutability": "mutable", "name": "", "overrides": null, "scope": 2358, "stateVariable": false, "storageLocation": "memory", "type": "bytes", "value": null, "visibility": "internal" }, "children": [ { "attributes": { "name": "bytes", "type": "bytes" }, "id": 2346, "name": "ElementaryTypeName", "src": "250:5:10" } ], "id": 2347, "name": "VariableDeclaration", "src": "250:12:10" } ], "id": 2348, "name": "ParameterList", "src": "213:50:10" }, { "children": [ { "attributes": { "constant": false, "mutability": "mutable", "name": "", "overrides": null, "scope": 2358, "stateVariable": false, "storageLocation": "default", "type": "bytes4", "value": null, "visibility": "internal" }, "children": [ { "attributes": { "name": "bytes4", "type": "bytes4" }, "id": 2350, "name": "ElementaryTypeName", "src": "297:6:10" } ], "id": 2351, "name": "VariableDeclaration", "src": "297:6:10" } ], "id": 2352, "name": "ParameterList", "src": "296:8:10" }, { "children": [ { "attributes": { "functionReturnParameters": 2352 }, "children": [ { "attributes": { "argumentTypes": null, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "member_name": "selector", "referencedDeclaration": null, "type": "bytes4" }, "children": [ { "attributes": { "argumentTypes": null, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "member_name": "onERC1155Received", "referencedDeclaration": 2358, "type": "function (address,address,uint256,uint256,bytes memory) external returns (bytes4)" }, "children": [ { "attributes": { "argumentTypes": null, "overloadedDeclarations": [ null ], "referencedDeclaration": -28, "type": "contract ERC1155Holder", "value": "this" }, "id": 2353, "name": "Identifier", "src": "322:4:10" } ], "id": 2354, "name": "MemberAccess", "src": "322:22:10" } ], "id": 2355, "name": "MemberAccess", "src": "322:31:10" } ], "id": 2356, "name": "Return", "src": "315:38:10" } ], "id": 2357, "name": "Block", "src": "305:55:10" } ], "id": 2358, "name": "FunctionDefinition", "src": "187:173:10" }, { "attributes": { "baseFunctions": [ 2641 ], "documentation": null, "functionSelector": "bc197c81", "implemented": true, "isConstructor": false, "kind": "function", "modifiers": [ null ], "name": "onERC1155BatchReceived", "scope": 2382, "stateMutability": "nonpayable", "virtual": true, "visibility": "public" }, "children": [ { "attributes": { "overrides": [ null ] }, "id": 2372, "name": "OverrideSpecifier", "src": "481:8:10" }, { "children": [ { "attributes": { "constant": false, "mutability": "mutable", "name": "", "overrides": null, "scope": 2381, "stateVariable": false, "storageLocation": "default", "type": "address", "value": null, "visibility": "internal" }, "children": [ { "attributes": { "name": "address", "stateMutability": "nonpayable", "type": "address" }, "id": 2359, "name": "ElementaryTypeName", "src": "398:7:10" } ], "id": 2360, "name": "VariableDeclaration", "src": "398:7:10" }, { "attributes": {