OCY_Convex_A.sol
OCY -> On-Chain Yield
Introduction
This contract allocates stablecoins to the alUSD/FRAXBP meta-pool and stakes the LP tokens on Convex.
State Variables
address
GBL
The ZivoeGlobals contract.
address
OCT_YDL
The OCT_YDL contract.
address
FRAX
Index 0, BasePool
address
USDC
Index 1, BasePool
address
alUSD
Index 0, MetaPool
address
CRV
Native Reward #1
address
CVX
Native Reward #2
address
convexDeposit
Convex information.
address
convexRewards
Convex information.
address
convexPoolToken
Convex information.
uint256
convexPoolID
Convex information.
address
curveBasePool
Curve information.
address
curveBasePoolToken
Index 1, MetaPool
address
curveMetaPool
MetaPool & Token
Sections
canPush() - Permission for owner to call
pushToLocker()
. See ZivoeLocker.solcanPull() - Permission for owner to call
pullFromLocker()
. See ZivoeLocker.solcanPullMulti() - Permission for owner to call
pullFromLockerMulti()
. See ZivoeLocker.solcanPullPartial() - Permission for owner to call
pullFromLockerPartial()
. See ZivoeLocker.sol
pushToLocker() - Migrates specific amount of ERC20 from owner() to locker.
pullFromLocker() - Migrates entire ERC20 balance from locker to
owner()
.pullFromLockerPartial() - Migrates specific amount of ERC20 from locker to
owner()
.claimRewards() - Claims rewards and forward them to the OCT_YDL.
updateOCTYDL() - Updates the OCT_YDL endpoint.
Read Functions
canPush()
canPush()
Permission for owner to call pushToLocker()
. See ZivoeLocker.sol
function canPush() public override pure returns (bool) { return true; }
canPull()
canPull()
Permission for owner to call pullFromLocker()
. See ZivoeLocker.sol
function canPull() public override pure returns (bool) { return true; }
canPullMulti()
canPullMulti()
Permission for owner to call pullFromLockerMulti()
. See ZivoeLocker.sol
function canPullMulti() public override pure returns (bool) { return true; }
canPullPartial()
canPullPartial()
Permission for owner to call pullFromLockerPartial()
. See ZivoeLocker.sol
function canPullPartial() public override pure returns (bool) { return true; }
Write Functions
pushToLocker()
pushToLocker()
Migrates specific amount of ERC20 from owner() to locker.
function pushToLocker(
address asset,
uint256 amount,
bytes calldata data
) external override onlyOwner;
address
asset
The asset to migrate.
uint256
amount
The amount of "asset" to migrate.
bytes
data
Accompanying transaction data.
pullFromLocker()
pullFromLocker()
Migrates entire ERC20 balance from locker to owner()
.
function pullFromLocker(address asset, bytes calldata data) external;
address
asset
The asset to migrate.
bytes
data
Accompanying transaction data.
pullFromLockerPartial()
pullFromLockerPartial()
Migrates specific amount of ERC20 from locker to owner()
.
function pullFromLockerPartial(
address asset,
uint256 amount,
bytes calldata data
) external;
address
asset
The asset to migrate.
uint256
amount
The amount of "asset" to migrate.
bytes
data
Accompanying transaction data.
claimRewards()
claimRewards()
Claims rewards and forward them to the OCT_YDL.
function claimRewards(bool extra) public nonReentrant;
bool
extra
Flag for claiming extra rewards.
updateOCTYDL()
updateOCTYDL()
Updates the OCT_YDL endpoint.
function updateOCTYDL(address _OCT_YDL) external;
address
_OCT_YDL
The new address for OCT_YDL.
Emits the UpdatedOCTYDL() event
Events
UpdatedOCTYDL()
UpdatedOCTYDL()
Emitted during updateOCTYDL()
event UpdatedOCTYDL(address indexed newOCT, address indexed oldOCT);
address
True
newOCT
The new OCT_YDL contract.
address
True
oldOCT
The old OCT_YDL contract.
Last updated