LRC-721 Enumerable Extension
LRC-721 Enumerable Extension for Lux Network
Abstract
LRC-721 Enumerable extension for iterating over all tokens and owner tokens.
Specification
Implements totalSupply(), tokenByIndex(), and tokenOfOwnerByIndex().
Motivation
This standard ensures compatibility with the broader EVM ecosystem while enabling Lux-specific optimizations.
Rationale
Mirrors the corresponding Ethereum standard for maximum compatibility.
Backwards Compatibility
Fully compatible with existing ERC implementations.
Reference Implementation
Repository: https://github.com/luxfi/standard
Local Path: /Users/z/work/lux/standard/
Contracts
| Contract | Description |
|---|---|
lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Enumerable.sol | OpenZeppelin Enumerable |
Interfaces
Upgradeable Variants
For proxy-based upgradeable contracts:
| Contract | Description |
|---|---|
ERC721EnumerableUpgradeable.sol | Upgradeable enumerable |
Usage: Initialize in initialize() instead of constructor. See OpenZeppelin Upgrades.
Build and Test
cd /Users/z/work/lux/standard
# Build all contracts
forge build
# Run tests
forge test -vvv
# Gas report
forge test --gas-report
Security Considerations
Implementations should follow established security best practices for the corresponding ERC.
Copyright
Copyright and related rights waived via CC0.