Skip to main content

Module tempo

Module tempo 

Expand description

Tempo precompile and contract initialization for Foundry.

This module provides the core initialization logic for Tempo-specific precompiles, fee tokens (PathUSD, AlphaUSD, BetaUSD, ThetaUSD), and standard contracts.

It includes the shared genesis initialization function used by both anvil and forge.

Modules§

IAddressRegistry
TIP-1022 virtual address registry interface.
IFeeManager
FeeManager interface for managing gas fee collection and distribution.
ISignatureVerifier
Module containing a contract’s types and functions.
IStablecoinDEX
StablecoinDEX interface for managing orderbook based trading of stablecoins.
ITIP20ChannelReserve
TIP-20 channel reserve ABI.

Structs§

AddressRegistry
SignatureVerifier
StablecoinDEX
TIP20ChannelReserve
TipFeeManager

Constants§

ADDRESS_REGISTRY_ADDRESS
ALPHA_USD_ADDRESS
Reserved Tempo TIP20 fee-token addresses created during Foundry genesis.
BETA_USD_ADDRESS
IMPLICIT_APPROVAL_LIST
TIP-1035 Implicit Approval List.
PATH_USD_ADDRESS
RECEIVE_POLICY_GUARD_ADDRESS
SIGNATURE_VERIFIER_ADDRESS
STABLECOIN_DEX_ADDRESS
TEMPO_PRECOMPILE_ADDRESSES
All well-known Tempo precompile addresses.
TEMPO_TIP20_TOKENS
All well-known TIP20 fee token addresses on Tempo networks.
THETA_USD_ADDRESS
TIP20_CHANNEL_RESERVE_ADDRESS
Native TIP-1034 channel reserve precompile address.
TIP20_FACTORY_ADDRESS
TIP_FEE_MANAGER_ADDRESS

Functions§

active_tempo_precompile_addresses
Returns the well-known Tempo precompile addresses active at hardfork.
initialize_tempo_genesis
Initialize Tempo precompiles and contracts using a storage provider.
initialize_tempo_genesis_at_hardfork
Initialize Tempo precompiles and contracts for a specific active hardfork.
initialize_tempo_genesis_inner
Inner genesis initialization logic. Must be called within a [StorageCtx] scope (either via [StorageCtx::enter] or [StorageCtx::enter_evm]).
initialize_tempo_test_genesis_inner
Inner genesis initialization for Forge’s local test EVM.
is_implicitly_approved
Returns true iff addr is on the IMPLICIT_APPROVAL_LIST for the given hardfork.
is_tempo_precompile_active_at
Returns whether a well-known Tempo precompile address is active at hardfork.
is_tip20_prefix
Returns true if addr has the TIP-20 token prefix.