ERC-5615: ERC-1155 Supply Extension

A simple mechanism to fetch token supply data from ERC-1155 tokens


Metadata
Status: FinalStandards Track: ERCCreated: 2023-05-25
Authors
Gavin John (@Pandapip1)
Requires

Abstract


This ERC standardizes an existing mechanism to fetch token supply data from ERC-1155 tokens. It adds a totalSupply function, which fetches the number of tokens with a given id, and an exists function, which checks for the existence of a given id.

Specification


The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be interpreted as described in RFC 2119.


Implementations MAY support ERC-165 interface discovery, but consumers MUST NOT rely on it.

Rationale


This ERC does not implement ERC-165, as this interface is simple enough that the extra complexity is unnecessary and would cause incompatibilities with pre-existing implementations.

The totalSupply and exists functions were modeled after ERC-721 and ERC-20.

totalSupply does not revert if the token ID does not exist, since contracts that care about that case should use exists instead (which might return false even if totalSupply is zero).

exists is included to differentiate between the two ways that totalSupply could equal zero (either no tokens with the given ID have been minted yet, or no tokens with the given ID will ever be minted).

Backwards Compatibility


This ERC is designed to be backward compatible with the OpenZeppelin ERC1155Supply.

Security Considerations


None.

Copyright


Copyright and related rights waived via CC0.