123456789101112131415161718192021222324252627282930313233343536373839404142 |
- pragma solidity ^0.4.24;
- import "../token/ERC721/ERC721Receiver.sol";
- contract ERC721ReceiverMock is ERC721Receiver {
- bytes4 retval;
- bool reverts;
- event Received(
- address _operator,
- address _from,
- uint256 _tokenId,
- bytes _data,
- uint256 _gas
- );
- constructor(bytes4 _retval, bool _reverts) public {
- retval = _retval;
- reverts = _reverts;
- }
- function onERC721Received(
- address _operator,
- address _from,
- uint256 _tokenId,
- bytes _data
- )
- public
- returns(bytes4)
- {
- require(!reverts);
- emit Received(
- _operator,
- _from,
- _tokenId,
- _data,
- gasleft() // msg.gas was deprecated in solidityv0.4.21
- );
- return retval;
- }
- }
|