Skip to main content
Reference · Isolated Pools

RewardsDistributor.

Manages incentive-token distribution to suppliers and borrowers within an isolated pool. Multiple distributor instances can run in parallel — one per reward token.

Overview

Isolated pools support multiple reward tokens through independent RewardsDistributor contracts. Each distributor is configured with per-market emission speeds for both supply-side and borrow-side rewards, enabling fine-grained incentive alignment for each market.

Rewards accrue automatically as users interact with the pool. Users can claim accumulated rewards at any time.

Key functions

setRewardTokenSpeeds​

Configures the emission rate of the reward token for specified markets. Separate speeds can be set for supply and borrow sides.

function setRewardTokenSpeeds(
IRToken[] calldata rTokens,
uint256[] calldata supplySpeeds,
uint256[] calldata borrowSpeeds
) external;

claimRewardToken​

Claims all accumulated reward tokens for the caller across specified markets.

function claimRewardToken(address holder, IRToken[] calldata rTokens) external;

setLastRewardingBlock​

Sets the block number after which rewards will no longer accrue for a market.

function setLastRewardingBlock(
IRToken[] calldata rTokens,
uint32[] calldata supplyLastRewardingBlocks,
uint32[] calldata borrowLastRewardingBlocks
) external;
Access control

Emission speed configuration and administrative functions are restricted to governance via the AccessControlManager.