@ethsub/sol
Version:
ethsub contracts
1,192 lines (1,191 loc) • 60 kB
JSON
{
"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": {