PosManager
Position manager is responsible for managing individual positions, including debt shares and collaterals.
View Functions
nextNonces
Get a user's next nonce for calculating the creation of position id.
function nextNonces(address _user) external view returns (uint256 nonce);
core
InitCore contract address.
function core() external view returns (address initCore);
maxCollCount
Max collateral count allowed.
function maxCollCount() external view returns (uint8 count);
pendingRewards
Position's pending reward token amounts.
function pendingRewards(uint256 _posId, address _rewardToken) external view returns (uint256 rewardAmount);
isCollateralized
Get whether the wrapped LP token id is already collateralized to the position.
function isCollateralized(address _wLp, uint _tokenId) external view returns (bool collateralized);
getPosBorrInfo
Get a position's borrow information.
function getPosBorrInfo(uint _posId) external view returns (address[] memory pools, uint[] memory debtShares);
Parameters:
_posId
uint256
position id to get borrow info
Returns:
pools
address[]
array of lending pool addresses that the position borrows from
debtShares
uint256[]
array of debt shares of each borrow token
getPosBorrExtraInfo
Get a position's borrow extra information.
totalInterest
may not be exact. Use with caution.
function getPosBorrExtraInfo(uint _posId, address _pool) external view returns (uint totalInterest, uint lastDebtAmt);
Parameters:
_posId
uint256
position id to get borrow extra info
_pool
address
lending pool address to get borrow extra info
Returns:
totalInterest
uint256
total interest that the lending pool has accrued borrow interest
lastDebtAmt
uint256
the last known debt amount
getPosCollInfo
Get a position's collateral information.
function getPosCollInfo(uint _posId) external view returns (address[] memory pools, uint[] memory amts, address[] memory wLps, uint[][] memory ids, uint[][] memory wLpAmts);
Parameters:
_posId
uint256
position id to get collateral info
Returns:
pools
address[]
array of lending addresses that the position puts as collateral
amts
uint256[]
array of lending pool collateralization amounts
wLps
address[]
array of wrapped LP addresses
ids
uint256[][]
array of array of wrapped LP's token ids
wLpAmts
uint256[][]
array of array of wrapped LP's token amount for each token id
getCollAmt
Get a position's collateral amount of the specified lending pool.
function getCollAmt(uint _posId, address _pool) external view returns (uint amt);
Parameters:
_posId
uint256
position id to get collateral amount
_pool
address
lending pool to get collateral amount
Returns:
amt
uint256
collateral amount
getCollWLpAmt
Get a position's collateral amount of the specified wrapped LP.
function getCollWLpAmt(uint _posId, address _wLp, uint _tokenId) external view returns (uint amt);
Parameters:
_posId
uint256
position id to get collateral wLp amount
_wLp
address
wrapped LP contract address to get collateral amount
_tokenId
uint256
wrapped LP token id to get collateral amount
Returns:
amt
uint256
collateral amount
getPosCollCount
Get a position's collateral count of a given position id.
function getPosCollCount(uint _posId) external view returns (uint8 count);
Parameters:
_posId
uint256
position id to get collateral count
Returns:
count
uint8
collateral count
getPosCollWLpCount
Get a position's wrapped LP collateral count of a given position id.
function getPosCollWLpCount(uint _posId) external view returns (uint8 count);
Parameters:
_posId
uint256
position id to get wLp collateral count
Returns:
count
uint8
collateral count
getPosInfo
Get a position's general information.
function getPosInfo(uint _posId) external view returns (address viewer, uint16 mode);
Parameters:
_posId
uint256
position id to get information
Returns:
viewer
address
viewer address of the position
mode
uint16
position's current mode
getPosMode
Get a position's mode.
function getPosMode(uint _posId) external view returns (uint16 mode);
Parameters:
_posId
uint256
position id to get mode
Returns:
mode
uint16
position mode
getPosDebtShares
Get a position's debt shares (without borrow interest accrual).
function getPosDebtShares(uint _posId, address _pool) external view returns (uint debtShares);
Parameters:
_posId
uint256
position id to get debt shares information
_pool
address
lending pool address to get debt shares of
Returns:
debtShares
uint256
lending pool debt shares of the position
getViewerPosIdsAt
Get a reverse-mapping lookup for the specified viewer address and the array index.
function getViewerPosIdsAt(address _viewer, uint _index) external view returns (uint posId);
Parameters:
_viewer
address
viewer address to get position id
_index
uint256
array index to query
Returns:
posId
uint256
position id
getViewerPosIdsLength
Get a reverse-mapping lookup array length for the specified viewer address.
function getViewerPosIdsLength(address _viewer) external view returns (uint length);
Parameters:
_viewer
address
viewer address to get position id count
Returns:
length
uint256
position id count corresponding to the viewer
isAuthorized
Check whether the account is authorized for modifying the position.
function isAuthorized(address _account, uint _posId) external view returns (bool);
Parameters:
_account
address
address to check authorization
_posId
uint256
position id to check authorization
Returns:
isAuthorized
bool
whether the account is authorized to modify the position id
External Functions
harvestTo
Harvest reward tokens of the specified wrapped LP to the target address.
function harvestTo(uint _posId, address _wLp, uint _tokenId, address _to) external returns (address[] memory tokens, uint[] memory amts);
Parameters:
_posId
uint256
position id to harvest rewards from
_wLp
address
wrapped LP contract address to harvest rewards
_tokenId
uint256
wrapped LP token id to harvest rewards
_to
address
address to receive the reward tokens
Returns:
tokens
address[]
array of reward token addresses
amts
uint256[]
array of reward token amounts transferred
claimPendingRewards
Claim pending reward tokens from the position.
function claimPendingRewards(uint _posId, address[] calldata _tokens, address _to) external returns (uint[] memory amts);
Parameters:
_posId
uint256
position id to claim pending rewards
_tokens
address[]
array of reward tokens to claim
_to
address
address to receive the reward tokens
Returns:
amts
uint256[]
array of reward token amounts
setPosViewer
Set a new viewer to the position.
function setPosViewer(uint _posId, address _viewer) external;
Parameters:
_posId
uint256
position id to set new viewer address
_viewer
address
new viewer address to set
Last updated