Singleton Architecture
Contract Architecture
The Tenor MarketManager contract follows a singleton design pattern, allowing all Tenor markets to be listed under a single contract instance. Despite being instantiated under the same contract, each market operates independently, ensuring that markets are isolated from each other.
Roles
The Market Manager contract implements a role-based access control system.
Market Manager Initializer
- Initialize new markets
- Initialize new pools of different maturities
- Can be set to permissionless market creation (address(0))
Pauser
Emergency control role with ability to:
- Pause the minting of new Fixed Tokens (withdrawFixed)
Owner
The owner sets the following roles:
- Set Pauser
- Set Rewards Recipient
- Set Initializer