ERC721Burnable
Inherits: IERC721Burnable
Title: ERC721Burnable
Author: Modified from OpenZeppelin (https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC721/extensions/ERC721Burnable.sol)
Stateless Diamond facet adding burn(tokenId) to ERC-721. Pure delegator to ERC721BurnableLib.
Additive: cut it next to the base ERC721 facet. burn(uint256) is also the ERC20Burnable selector,
so the two cannot share a diamond. It burns through ERC721Lib, so it must not share a diamond with
ERC721Enumerable or ERC721Votes, and ERC721Pausable does not pause it (D25).
Notes:
- lattice-version: 0.5.0
- lattice-source: OpenZeppelin v5.6.1
Functions
burn
Destroys tokenId. The caller must own it, be its approved address, or be an approved operator.
function burn(uint256 tokenId) public virtual;Parameters
| Name | Type | Description |
|---|---|---|
| tokenId | uint256 |
exportSelectors
ERC-8153 selector export: this facet's cuttable selectors, tightly packed (4 bytes each).
Excludes exportSelectors() itself (0x0ef22643) - it is never cut into a diamond. Order matches
forge inspect ERC721Burnable methodIdentifiers (alphabetical by signature); kept in exact parity by
ExportSelectorsParityTest. Chunks:
burn(uint256) 0x42966c68
function exportSelectors() external pure virtual returns (bytes memory selectors);Returns
| Name | Type | Description |
|---|---|---|
| selectors | bytes |