mirror of https://github.com/status-im/EIPs.git
Automatically merged updates to draft EIP(s) 998
Hi, I'm a bot! This change was automatically merged because: - It only modifies existing Draft or Last Call EIP(s) - The PR was approved or written by at least one author of each modified EIP - The build is passing
This commit is contained in:
parent
5ca0e7d86d
commit
4315fe97bb
|
@ -118,7 +118,7 @@ pragma solidity ^0.4.24;
|
|||
|
||||
/// @title ERC998ERC721 Top-Down Composable Non-Fungible Token
|
||||
/// @dev See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-998.md
|
||||
/// Note: the ERC-165 identifier for this interface is 0x1bc995e4
|
||||
/// Note: the ERC-165 identifier for this interface is 0xe85c4c41
|
||||
interface ERC998ERC721TopDown {
|
||||
|
||||
/// @dev This emits when a token receives a child token.
|
||||
|
@ -172,11 +172,10 @@ interface ERC998ERC721TopDown {
|
|||
returns(bytes4);
|
||||
|
||||
/// @notice Let's an owning contract know that a specified token is transferred out
|
||||
/// @param The address that caused the transfer.
|
||||
/// @param _operator The address that caused the transfer.
|
||||
/// @param _toContract The contract that receives the child token
|
||||
/// @param _childTokenId The child tokenId that is being removed.
|
||||
/// @param _data Additional data with no specified format
|
||||
function onERC998Removed(address _operator, address _toContract, uint256 _childTokenId, bytes _data) external;
|
||||
/// @param _childTokenId The child tokenId that is being removed.
|
||||
function onERC998Removed(address _operator, address _toContract, uint256 _childTokenId) external;
|
||||
|
||||
/// @notice Transfer child token from top-down composable to address.
|
||||
/// @param _to The address that receives the child token
|
||||
|
@ -285,8 +284,7 @@ The return value for `onERC721Received` is the magic value `0x150b7a02` which is
|
|||
/// @param The address that caused the transfer.
|
||||
/// @param _toContract The contract that receives the child token
|
||||
/// @param _childTokenId The child tokenId that is being removed.
|
||||
/// @param _data Additional data with no specified format
|
||||
function onERC998Removed(address _operator, address _toContract, uint256 _childTokenId, bytes _data) external;
|
||||
function onERC998Removed(address _operator, address _toContract, uint256 _childTokenId) external;
|
||||
```
|
||||
|
||||
Any composable or "composable aware" contract must call the `onERC998Removed` function within all `transferFrom/safeTransferFrom` functions on the contract that is losing ownership of an ERC721 token. It is used to notify top-down composables that they no longer have a child token and to remove it from any internal bookkeeping/tracking.
|
||||
|
|
Loading…
Reference in New Issue