B Lending Token
Methods
DEFAULT_ADMIN_ROLE
function DEFAULT_ADMIN_ROLE() external view returns (bytes32)
Returns
_0
bytes32
undefined
MODERATOR_ROLE
function MODERATOR_ROLE() external view returns (bytes32)
Returns
_0
bytes32
undefined
_acceptAdmin
function _acceptAdmin() external nonpayable returns (uint256)
Accepts transfer of admin rights. msg.sender must be pendingAdmin
Admin function for pending admin to accept role and update admin
Returns
_0
uint256
uint 0=success, otherwise a failure (see ErrorReporter.sol for details)
_addReserves
function _addReserves(uint256 addAmount) external nonpayable returns (uint256)
The sender adds to reserves.
Parameters
addAmount
uint256
The amount fo underlying token to add as reserves
Returns
_0
uint256
uint 0=success, otherwise a failure (see ErrorReporter.sol for details)
_reduceReserves
function _reduceReserves(uint256 reduceAmount) external nonpayable returns (uint256)
Accrues interest and reduces reserves by transferring to admin
Parameters
reduceAmount
uint256
Amount of reduction to reserves
Returns
_0
uint256
uint 0=success, otherwise a failure (see ErrorReporter.sol for details)
_setBondtroller
function _setBondtroller(contract Bondtroller newBondtroller) external nonpayable returns (uint256)
Sets a new bondtroller for the market
Admin function to set a new bondtroller
Parameters
newBondtroller
contract Bondtroller
undefined
Returns
_0
uint256
uint 0=success, otherwise a failure (see ErrorReporter.sol for details)
_setInterestRateModel
function _setInterestRateModel(contract InterestRateModel newInterestRateModel) external nonpayable returns (uint256)
accrues interest and updates the interest rate model using _setInterestRateModelFresh
Admin function to accrue interest and update the interest rate model
Parameters
newInterestRateModel
contract InterestRateModel
the new interest rate model to use
Returns
_0
uint256
uint 0=success, otherwise a failure (see ErrorReporter.sol for details)
_setPendingAdmin
function _setPendingAdmin(address payable newPendingAdmin) external nonpayable returns (uint256)
Begins transfer of admin rights. The newPendingAdmin must call _acceptAdmin
to finalize the transfer.
Admin function to begin change of admin. The newPendingAdmin must call _acceptAdmin
to finalize the transfer.
Parameters
newPendingAdmin
address payable
New pending admin.
Returns
_0
uint256
uint 0=success, otherwise a failure (see ErrorReporter.sol for details)
_setReserveFactor
function _setReserveFactor(uint256 newReserveFactorMantissa) external nonpayable returns (uint256)
accrues interest and sets a new reserve factor for the protocol using _setReserveFactorFresh
Admin function to accrue interest and set a new reserve factor
Parameters
newReserveFactorMantissa
uint256
undefined
Returns
_0
uint256
uint 0=success, otherwise a failure (see ErrorReporter.sol for details)
accountTokens
function accountTokens(address) external view returns (uint256)
Official record of token balances for each account
Parameters
_0
address
undefined
Returns
_0
uint256
undefined
accrualBlockNumber
function accrualBlockNumber() external view returns (uint256)
Block number that interest was last accrued at
Returns
_0
uint256
undefined
accrueInterest
function accrueInterest() external nonpayable returns (uint256)
Applies accrued interest to total borrows and reserves
This calculates interest accrued from the last checkpointed block up to the current block and writes new checkpoint to storage.
Returns
_0
uint256
undefined
admin
function admin() external view returns (address payable)
Administrator for this contract
Returns
_0
address payable
undefined
allowance
function allowance(address owner, address spender) external view returns (uint256)
Get the current allowance from owner
for spender
Parameters
owner
address
The address of the account which owns the tokens to be spent
spender
address
The address of the account which may transfer tokens
Returns
_0
uint256
The number of tokens allowed to be spent (-1 means infinite)
approve
function approve(address spender, uint256 amount) external nonpayable returns (bool)
Approve spender
to transfer up to amount
from src
This will overwrite the approval amount for spender
and is subject to issues noted here
Parameters
spender
address
The address of the account which may transfer tokens
amount
uint256
The number of tokens that are approved (-1 means infinite)
Returns
_0
bool
Whether or not the approval succeeded
balanceOf
function balanceOf(address owner) external view returns (uint256)
Get the token balance of the owner
Parameters
owner
address
The address of the account to query
Returns
_0
uint256
The number of tokens owned by owner
balanceOfUnderlying
function balanceOfUnderlying(address owner) external nonpayable returns (uint256)
Get the underlying balance of the owner
This also accrues interest in a transaction
Parameters
owner
address
The address of the account to query
Returns
_0
uint256
The amount of underlying owned by owner
balanceOfUnderlyingView
function balanceOfUnderlyingView(address owner) external view returns (uint256)
Parameters
owner
address
undefined
Returns
_0
uint256
undefined
bondtroller
function bondtroller() external view returns (contract Bondtroller)
Contract which oversees inter-cToken operations
Returns
_0
contract Bondtroller
undefined
borrowBalanceCurrent
function borrowBalanceCurrent(address account) external nonpayable returns (uint256)
Accrue interest to updated borrowIndex and then calculate account's borrow balance using the updated borrowIndex
Parameters
account
address
The address whose balance should be calculated after updating borrowIndex
Returns
_0
uint256
The calculated balance
borrowBalanceStored
function borrowBalanceStored(address account) external view returns (uint256)
Return the borrow balance of account based on stored data
Parameters
account
address
The address whose balance should be calculated
Returns
_0
uint256
The calculated balance
borrowIndex
function borrowIndex() external view returns (uint256)
Accumulator of the total earned interest rate since the opening of the market
Returns
_0
uint256
undefined
borrowRatePerBlock
function borrowRatePerBlock() external view returns (uint256)
Returns the current per-block borrow interest rate for this cToken
Returns
_0
uint256
The borrow interest rate per block, scaled by 1e18
borrowTo
function borrowTo(address borrower, uint256 borrowAmount) external nonpayable returns (uint256 borrowError)
Parameters
borrower
address
undefined
borrowAmount
uint256
undefined
Returns
borrowError
uint256
undefined
decimals
function decimals() external view returns (uint8)
EIP-20 token decimals for this token
Returns
_0
uint8
undefined
exchangeRateCurrent
function exchangeRateCurrent() external nonpayable returns (uint256)
Accrue interest then return the up-to-date exchange rate
Returns
_0
uint256
Calculated exchange rate scaled by 1e18
exchangeRateStored
function exchangeRateStored() external view returns (uint256)
Calculates the exchange rate from the underlying to the CToken
This function does not accrue interest before calculating the exchange rate
Returns
_0
uint256
Calculated exchange rate scaled by 1e18
getAccountSnapshot
function getAccountSnapshot(address account) external view returns (uint256, uint256, uint256, uint256)
Get a snapshot of the account's balances, and the cached exchange rate
This is used by bondtroller to more efficiently perform liquidity checks.
Parameters
account
address
Address of the account to snapshot
Returns
_0
uint256
(possible error, token balance, borrow balance, exchange rate mantissa)
_1
uint256
undefined
_2
uint256
undefined
_3
uint256
undefined
getCash
function getCash() external view returns (uint256)
Get cash balance of this cToken in the underlying asset
Returns
_0
uint256
The quantity of underlying asset owned by this contract
getEstimatedBorrowBalanceStored
function getEstimatedBorrowBalanceStored(address account) external view returns (uint256 accrual)
Parameters
account
address
undefined
Returns
accrual
uint256
undefined
getEstimatedBorrowIndex
function getEstimatedBorrowIndex() external view returns (uint256)
Returns
_0
uint256
undefined
getRoleAdmin
function getRoleAdmin(bytes32 role) external view returns (bytes32)
Returns the admin role that controls role
. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.
Parameters
role
bytes32
undefined
Returns
_0
bytes32
undefined
grandModerator
function grandModerator(address newModerator) external nonpayable
Parameters
newModerator
address
undefined
grantRole
function grantRole(bytes32 role, address account) external nonpayable
Grants role
to account
. If account
had not been already granted role
, emits a {RoleGranted} event. Requirements: - the caller must have role
's admin role.
Parameters
role
bytes32
undefined
account
address
undefined
hasRole
function hasRole(bytes32 role, address account) external view returns (bool)
Returns true
if account
has been granted role
.
Parameters
role
bytes32
undefined
account
address
undefined
Returns
_0
bool
undefined
init
function init(address underlying_, contract Bondtroller bondtroller_, contract InterestRateModel interestRateModel_, uint256 initialExchangeRateMantissa_, string name_, string symbol_, uint8 decimals_, address admin_) external nonpayable
Parameters
underlying_
address
undefined
bondtroller_
contract Bondtroller
undefined
interestRateModel_
contract InterestRateModel
undefined
initialExchangeRateMantissa_
uint256
undefined
name_
string
undefined
symbol_
string
undefined
decimals_
uint8
undefined
admin_
address
undefined
initialize
function initialize(address underlying_, contract Bondtroller comptroller_, contract InterestRateModel interestRateModel_, uint256 initialExchangeRateMantissa_, string name_, string symbol_, uint8 decimals_) external nonpayable
Initialize the new money market
Parameters
underlying_
address
The address of the underlying asset
comptroller_
contract Bondtroller
The address of the Comptroller
interestRateModel_
contract InterestRateModel
The address of the interest rate model
initialExchangeRateMantissa_
uint256
The initial exchange rate, scaled by 1e18
name_
string
ERC-20 name of this token
symbol_
string
ERC-20 symbol of this token
decimals_
uint8
ERC-20 decimal precision of this token
initialize
function initialize(contract Bondtroller bondtroller_, contract InterestRateModel interestRateModel_, uint256 initialExchangeRateMantissa_, string name_, string symbol_, uint8 decimals_) external nonpayable
Initialize the money market
Parameters
bondtroller_
contract Bondtroller
The address of the Bondtroller
interestRateModel_
contract InterestRateModel
The address of the interest rate model
initialExchangeRateMantissa_
uint256
The initial exchange rate, scaled by 1e18
name_
string
EIP-20 name of this token
symbol_
string
EIP-20 symbol of this token
decimals_
uint8
EIP-20 decimal precision of this token
interestRateModel
function interestRateModel() external view returns (contract InterestRateModel)
Model which tells what the current interest rate should be
Returns
_0
contract InterestRateModel
undefined
isCToken
function isCToken() external view returns (bool)
Indicator that this is a CToken contract (for inspection)
Returns
_0
bool
undefined
mintTo
function mintTo(address minter, uint256 mintAmount) external nonpayable returns (uint256 err, uint256 mintedAmount)
Parameters
minter
address
undefined
mintAmount
uint256
undefined
Returns
err
uint256
undefined
mintedAmount
uint256
undefined
name
function name() external view returns (string)
EIP-20 token name for this token
Returns
_0
string
undefined
pendingAdmin
function pendingAdmin() external view returns (address payable)
Pending administrator for this contract
Returns
_0
address payable
undefined
primaryIndexToken
function primaryIndexToken() external view returns (address)
Returns
_0
address
undefined
protocolSeizeShareMantissa
function protocolSeizeShareMantissa() external view returns (uint256)
Share of seized collateral that is added to reserves
Returns
_0
uint256
undefined
redeemTo
function redeemTo(address redeemer, uint256 redeemTokens) external nonpayable returns (uint256 redeemErr)
Parameters
redeemer
address
undefined
redeemTokens
uint256
undefined
Returns
redeemErr
uint256
undefined
redeemUnderlyingTo
function redeemUnderlyingTo(address redeemer, uint256 redeemAmount) external nonpayable returns (uint256 redeemUnderlyingError)
Parameters
redeemer
address
undefined
redeemAmount
uint256
undefined
Returns
redeemUnderlyingError
uint256
undefined
renounceRole
function renounceRole(bytes32 role, address account) external nonpayable
Revokes role
from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been granted role
, emits a {RoleRevoked} event. Requirements: - the caller must be account
.
Parameters
role
bytes32
undefined
account
address
undefined
repayTo
function repayTo(address payer, address borrower, uint256 repayAmount) external nonpayable returns (uint256 repayBorrowError, uint256 amountRepayed)
Parameters
payer
address
undefined
borrower
address
undefined
repayAmount
uint256
undefined
Returns
repayBorrowError
uint256
undefined
amountRepayed
uint256
undefined
reserveFactorMantissa
function reserveFactorMantissa() external view returns (uint256)
Fraction of interest currently set aside for reserves
Returns
_0
uint256
undefined
revokeModerator
function revokeModerator(address moderator) external nonpayable
Parameters
moderator
address
undefined
revokeRole
function revokeRole(bytes32 role, address account) external nonpayable
Revokes role
from account
. If account
had been granted role
, emits a {RoleRevoked} event. Requirements: - the caller must have role
's admin role.
Parameters
role
bytes32
undefined
account
address
undefined
setPrimaryIndexToken
function setPrimaryIndexToken(address _primaryIndexToken) external nonpayable
Parameters
_primaryIndexToken
address
undefined
setReserveFactor
function setReserveFactor(uint256 reserveFactorMantissa) external nonpayable
Parameters
reserveFactorMantissa
uint256
undefined
supplyRatePerBlock
function supplyRatePerBlock() external view returns (uint256)
Returns the current per-block supply interest rate for this cToken
Returns
_0
uint256
The supply interest rate per block, scaled by 1e18
supportsInterface
function supportsInterface(bytes4 interfaceId) external view returns (bool)
See {IERC165-supportsInterface}.
Parameters
interfaceId
bytes4
undefined
Returns
_0
bool
undefined
sweepToken
function sweepToken(contract EIP20NonStandardInterface token) external nonpayable
A public function to sweep accidental ERC-20 transfers to this contract. Tokens are sent to admin (timelock)
Parameters
token
contract EIP20NonStandardInterface
The address of the ERC-20 token to sweep
symbol
function symbol() external view returns (string)
EIP-20 token symbol for this token
Returns
_0
string
undefined
totalBorrows
function totalBorrows() external view returns (uint256)
Total amount of outstanding borrows of the underlying in this market
Returns
_0
uint256
undefined
totalBorrowsCurrent
function totalBorrowsCurrent() external nonpayable returns (uint256)
Returns the current total borrows plus accrued interest
Returns
_0
uint256
The total borrows with interest
totalReserves
function totalReserves() external view returns (uint256)
Total amount of reserves of the underlying held in this market
Returns
_0
uint256
undefined
totalSupply
function totalSupply() external view returns (uint256)
Total number of tokens in circulation
Returns
_0
uint256
undefined
transfer
function transfer(address dst, uint256 amount) external nonpayable returns (bool)
Transfer amount
tokens from msg.sender
to dst
Parameters
dst
address
The address of the destination account
amount
uint256
The number of tokens to transfer
Returns
_0
bool
Whether or not the transfer succeeded
transferFrom
function transferFrom(address src, address dst, uint256 amount) external nonpayable returns (bool)
Transfer amount
tokens from src
to dst
Parameters
src
address
The address of the source account
dst
address
The address of the destination account
amount
uint256
The number of tokens to transfer
Returns
_0
bool
Whether or not the transfer succeeded
underlying
function underlying() external view returns (address)
Underlying asset for this CToken
Returns
_0
address
undefined
Events
AccrueInterest
event AccrueInterest(uint256 cashPrior, uint256 interestAccumulated, uint256 borrowIndex, uint256 totalBorrows)
Event emitted when interest is accrued
Parameters
cashPrior
uint256
undefined
interestAccumulated
uint256
undefined
borrowIndex
uint256
undefined
totalBorrows
uint256
undefined
Approval
event Approval(address indexed owner, address indexed spender, uint256 amount)
EIP20 Approval event
Parameters
owner indexed
address
undefined
spender indexed
address
undefined
amount
uint256
undefined
Borrow
event Borrow(address borrower, uint256 borrowAmount, uint256 accountBorrows, uint256 totalBorrows)
Event emitted when underlying is borrowed
Parameters
borrower
address
undefined
borrowAmount
uint256
undefined
accountBorrows
uint256
undefined
totalBorrows
uint256
undefined
Failure
event Failure(uint256 error, uint256 info, uint256 detail)
Parameters
error
uint256
undefined
info
uint256
undefined
detail
uint256
undefined
LiquidateBorrow
event LiquidateBorrow(address liquidator, address borrower, uint256 repayAmount, address cTokenCollateral, uint256 seizeTokens)
Event emitted when a borrow is liquidated
Parameters
liquidator
address
undefined
borrower
address
undefined
repayAmount
uint256
undefined
cTokenCollateral
address
undefined
seizeTokens
uint256
undefined
Mint
event Mint(address minter, uint256 mintAmount, uint256 mintTokens)
Event emitted when tokens are minted
Parameters
minter
address
undefined
mintAmount
uint256
undefined
mintTokens
uint256
undefined
NewAdmin
event NewAdmin(address oldAdmin, address newAdmin)
Event emitted when pendingAdmin is accepted, which means admin is updated
Parameters
oldAdmin
address
undefined
newAdmin
address
undefined
NewBondtroller
event NewBondtroller(contract Bondtroller oldBondtroller, contract Bondtroller newBondtroller)
Event emitted when bondtroller is changed
Parameters
oldBondtroller
contract Bondtroller
undefined
newBondtroller
contract Bondtroller
undefined
NewMarketInterestRateModel
event NewMarketInterestRateModel(contract InterestRateModel oldInterestRateModel, contract InterestRateModel newInterestRateModel)
Event emitted when interestRateModel is changed
Parameters
oldInterestRateModel
contract InterestRateModel
undefined
newInterestRateModel
contract InterestRateModel
undefined
NewPendingAdmin
event NewPendingAdmin(address oldPendingAdmin, address newPendingAdmin)
Event emitted when pendingAdmin is changed
Parameters
oldPendingAdmin
address
undefined
newPendingAdmin
address
undefined
NewReserveFactor
event NewReserveFactor(uint256 oldReserveFactorMantissa, uint256 newReserveFactorMantissa)
Event emitted when the reserve factor is changed
Parameters
oldReserveFactorMantissa
uint256
undefined
newReserveFactorMantissa
uint256
undefined
Redeem
event Redeem(address redeemer, uint256 redeemAmount, uint256 redeemTokens)
Event emitted when tokens are redeemed
Parameters
redeemer
address
undefined
redeemAmount
uint256
undefined
redeemTokens
uint256
undefined
RepayBorrow
event RepayBorrow(address payer, address borrower, uint256 repayAmount, uint256 accountBorrows, uint256 totalBorrows)
Event emitted when a borrow is repaid
Parameters
payer
address
undefined
borrower
address
undefined
repayAmount
uint256
undefined
accountBorrows
uint256
undefined
totalBorrows
uint256
undefined
ReservesAdded
event ReservesAdded(address benefactor, uint256 addAmount, uint256 newTotalReserves)
Event emitted when the reserves are added
Parameters
benefactor
address
undefined
addAmount
uint256
undefined
newTotalReserves
uint256
undefined
ReservesReduced
event ReservesReduced(address admin, uint256 reduceAmount, uint256 newTotalReserves)
Event emitted when the reserves are reduced
Parameters
admin
address
undefined
reduceAmount
uint256
undefined
newTotalReserves
uint256
undefined
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
Parameters
role indexed
bytes32
undefined
previousAdminRole indexed
bytes32
undefined
newAdminRole indexed
bytes32
undefined
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
Parameters
role indexed
bytes32
undefined
account indexed
address
undefined
sender indexed
address
undefined
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
Parameters
role indexed
bytes32
undefined
account indexed
address
undefined
sender indexed
address
undefined
SetPrimaryIndexToken
event SetPrimaryIndexToken(address indexed oldPrimaryIndexToken, address indexed newPrimaryIndexToken)
Parameters
oldPrimaryIndexToken indexed
address
undefined
newPrimaryIndexToken indexed
address
undefined
Transfer
event Transfer(address indexed from, address indexed to, uint256 amount)
EIP20 Transfer event
Parameters
from indexed
address
undefined
to indexed
address
undefined
amount
uint256
undefined
Last updated