1️⃣TokenRegistry.sol
The TokenRegistry contract is the core contract that manages the registration and approval of tokens.
Key Features
Maintains a list of tokens and their statuses (Pending, Approved, Rejected)
Validates token contracts by checking ERC20 compliance
Stores and updates token metadata
Provides query functions for token information
Events
event TokenAdded(address indexed contractAddress, address indexed submitter);
event TokenApproved(address indexed contractAddress);
event TokenRejected(address indexed contractAddress, string reason);
event TokenUpdated(address indexed contractAddress);
event TokentrollerUpdated(address indexed newTokentroller);
Relevant functions
// For Token Management
function addToken(address contractAddress, MetadataInput[] calldata metadata) external
function approveToken(address contractAddress) external
function rejectToken(address contractAddress, string calldata reason) external
// For Query Functions
function getToken(address contractAddress) external view returns (Token memory)
function getToken(address contractAddress, bool includeMetadata) external view returns (Token memory)
function getTokens(address[] calldata contractAddresses) external view returns (Token[] memory)
function listTokens(
uint256 offset,
uint256 limit,
TokenStatus status
) external view returns (Token[] memory tokens, uint256 total)
function tokenStatus(address contractAddress) external view returns (TokenStatus)
function getTokenCounts() external view returns (uint256 pending, uint256 approved, uint256 rejected)
Last updated