Overview

The token smart contracts consist of two primary contracts:

  • TokenProxy

    Responsible for the following:

    1. Managing token roles.
    2. Managing the current token logic implementation contract.
  • TokenLogic

The primary smart contract used by all implementations in the repo is the ExtendableTokenProxy which adds support for extensions and is responsible for:

  1. Managing token extensions.
  2. Routing calls to either the token logic contract or extensions (based on function selector).