lst rewards splitter contracts
LSTRewardsSplitterController: Manage Rewards Splitters
The LSTRewardsSplitterController manages multiple LSTRewardsSplitter contracts.
View Functions
Section titled “View Functions”splitters
Section titled “splitters”Returns the splitter corresponding to an account
function splitters(address _account) external view returns (address)Parameters
Section titled “Parameters”| Name | Type | Description |
|---|---|---|
| account | address | address of account |
Return Values
Section titled “Return Values”| Name | Type | Description |
|---|---|---|
| splitter | address | address of splitter corresponding to account |
Returns the min amount of new rewards required to split
function lst() external view returns (address)Return Values
Section titled “Return Values”| Name | Type | Description |
|---|---|---|
| lst | address | address of LST |
rewardThreshold
Section titled “rewardThreshold”Returns the address of the liquid staking token handled by this contract
function rewardThreshold() external view returns (uint256)Return Values
Section titled “Return Values”| Name | Type | Description |
|---|---|---|
| rewardThreshold | uint256 | reward threshold |
getAccounts
Section titled “getAccounts”Returns a list of all accounts that have splitters
function getAccounts() external view returns (address[])Return Values
Section titled “Return Values”| Name | Type | Description |
|---|---|---|
| accounts | address[] | list of accounts |
checkUpkeep
Section titled “checkUpkeep”Returns whether a call should be made to performUpkeep to split new rewards
function checkUpkeep(bytes) external view returns (bool, bytes)Return Values
Section titled “Return Values”| Name | Type | Description |
|---|---|---|
| upkeepNeeded | bool | true if performUpkeep should be called, false otherwise |
| performData | bytes | abi encoded list of splitters to call |
Write Functions
Section titled “Write Functions”onTokenTransfer
Section titled “onTokenTransfer”ERC677 implementation to receive an LST deposit
function onTokenTransfer(address _sender, uint256 _value, bytes) externalParameters
Section titled “Parameters”| Name | Type | Description |
|---|---|---|
| _sender | address | address of sender |
| _value | uint256 | value of transfer |
withdraw
Section titled “withdraw”Withdraws tokens
function withdraw(uint256 _amount) externalParameters
Section titled “Parameters”| Name | Type | Description |
|---|---|---|
| _amount | uint256 | amount to withdraw |
performUpkeep
Section titled “performUpkeep”Splits new rewards between receivers
function performUpkeep(bytes _performData) externalParameters
Section titled “Parameters”| Name | Type | Description |
|---|---|---|
| _performData | bytes | abi encoded list of splitters to call |
addSplitter
Section titled “addSplitter”Deploys a new splitter
function addSplitter(address _account, struct LSTRewardsSplitter.Fee[] _fees) externalParameters
Section titled “Parameters”| Name | Type | Description |
|---|---|---|
| _account | address | address of account to deploy splitter for |
| _fees | struct LSTRewardsSplitter.Fee[] | list of splitter fees |
removeSplitter
Section titled “removeSplitter”Removes an account’s splitter
function removeSplitter(address _account) externalParameters
Section titled “Parameters”| Name | Type | Description |
|---|---|---|
| _account | address | address of account |
setRewardThreshold
Section titled “setRewardThreshold”Sets the min amount of new rewards required to split
function setRewardThreshold(uint256 _rewardThreshold) externalParameters
Section titled “Parameters”| Name | Type | Description |
|---|---|---|
| _rewardThreshold | uint256 | min amount of new rewards required to split |