⬅️ Contracts
FEI stablecoin
Author: Fei Protocol
Mainnet implementations
Core, CErc20Delegator, FeiDAOTimelock, CollateralizationOracleKeeper, PCVDripController, PriceBoundPSM, MintRedeemPausePSM, FeiSkimmer, AavePCVDeposit, AngleUniswapPCVDeposit, UniswapPCVDeposit, ERC20CompoundPCVDeposit, RestrictedPermissions, LinearTokenTimelock, REPTbRedeemer
Events
Approval
event Approval(address,address,uint256)
Params
Param |
Type |
Notes |
owner |
address indexed |
|
spender |
address indexed |
|
value |
uint256 |
|
Burning
event Burning(address,address,uint256)
Params
Param |
Type |
Notes |
_to |
address indexed |
|
_burner |
address indexed |
|
_amount |
uint256 |
|
ContractAdminRoleUpdate
event ContractAdminRoleUpdate(bytes32,bytes32)
Params
Param |
Type |
Notes |
oldContractAdminRole |
bytes32 indexed |
|
newContractAdminRole |
bytes32 indexed |
|
CoreUpdate
event CoreUpdate(address,address)
Params
Param |
Type |
Notes |
oldCore |
address indexed |
|
newCore |
address indexed |
|
IncentiveContractUpdate
event IncentiveContractUpdate(address,address)
Params
Param |
Type |
Notes |
_incentivized |
address indexed |
|
_incentiveContract |
address indexed |
|
Minting
event Minting(address,address,uint256)
Params
Param |
Type |
Notes |
_to |
address indexed |
|
_minter |
address indexed |
|
_amount |
uint256 |
|
Paused
event Paused(address)
Params
Param |
Type |
Notes |
account |
address |
|
Transfer
event Transfer(address,address,uint256)
Params
Param |
Type |
Notes |
from |
address indexed |
|
to |
address indexed |
|
value |
uint256 |
|
Unpaused
event Unpaused(address)
Params
Param |
Type |
Notes |
account |
address |
|
Methods
CONTRACT_ADMIN_ROLE
function CONTRACT_ADMIN_ROLE() view returns(bytes32)
a role used with a subset of governor permissions for this contract only
Returns
DOMAIN_SEPARATOR
function DOMAIN_SEPARATOR() view returns(bytes32)
Returns
PERMIT_TYPEHASH
function PERMIT_TYPEHASH() view returns(bytes32)
Returns
allowance
function allowance(address,address) view returns(uint256)
See {IERC20-allowance}.
Params
Param |
Type |
Notes |
owner |
address |
|
spender |
address |
|
Returns
approve
function approve(address,uint256) nonpayable returns(bool)
See {IERC20-approve}. Requirements: - spender
cannot be the zero address.
Params
Param |
Type |
Notes |
spender |
address |
|
amount |
uint256 |
|
Returns
balanceOf
function balanceOf(address) view returns(uint256)
See {IERC20-balanceOf}.
Params
Param |
Type |
Notes |
account |
address |
|
Returns
burn
function burn(uint256) nonpayable
burn FEI tokens from caller
Params
Param |
Type |
Notes |
amount |
uint256 |
the amount to burn |
burnFrom
function burnFrom(address,uint256) nonpayable
burn FEI tokens from specified account
Params
Param |
Type |
Notes |
account |
address |
the account to burn from |
amount |
uint256 |
the amount to burn |
core
function core() view returns(address)
address of the Core contract referenced
Returns
Param |
Type |
Notes |
|
address |
ICore implementation address |
decimals
function decimals() view returns(uint8)
Returns the number of decimals used to get its user representation. For example, if decimals
equals 2
, a balance of 505
tokens should be displayed to a user as 5.05
(505 / 10 ** 2
). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless this function is overridden; NOTE: This information is only used for display purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.
Returns
decreaseAllowance
function decreaseAllowance(address,uint256) nonpayable returns(bool)
Atomically decreases the allowance granted to spender
by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - spender
cannot be the zero address. - spender
must have allowance for the caller of at least subtractedValue
.
Params
Param |
Type |
Notes |
spender |
address |
|
subtractedValue |
uint256 |
|
Returns
fei
function fei() view returns(address)
address of the Fei contract referenced by Core
Returns
Param |
Type |
Notes |
|
address |
IFei implementation address |
feiBalance
function feiBalance() view returns(uint256)
fei balance of contract
Returns
Param |
Type |
Notes |
|
uint256 |
fei amount held |
incentiveContract
function incentiveContract(address) view returns(address)
get associated incentive contract, 0 address if N/A
Params
Returns
increaseAllowance
function increaseAllowance(address,uint256) nonpayable returns(bool)
Atomically increases the allowance granted to spender
by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - spender
cannot be the zero address.
Params
Param |
Type |
Notes |
spender |
address |
|
addedValue |
uint256 |
|
Returns
isContractAdmin
function isContractAdmin(address) view returns(bool)
returns whether a given address has the admin role for this contract
Params
Param |
Type |
Notes |
_admin |
address |
|
Returns
mint
function mint(address,uint256) nonpayable
mint FEI tokens
Params
Param |
Type |
Notes |
account |
address |
the account to mint to |
amount |
uint256 |
the amount to mint |
name
function name() view returns(string)
Returns the name of the token.
Returns
nonces
function nonces(address) view returns(uint256)
Params
Returns
pause
function pause() nonpayable
set pausable methods to paused
paused
function paused() view returns(bool)
Returns true if the contract is paused, and false otherwise.
Returns
permit
function permit(address,address,uint256,uint256,uint8,bytes32,bytes32) nonpayable
permit spending of FEI
Params
Param |
Type |
Notes |
owner |
address |
the FEI holder |
spender |
address |
the approved operator |
value |
uint256 |
the amount approved |
deadline |
uint256 |
the deadline after which the approval is no longer valid |
v |
uint8 |
|
r |
bytes32 |
|
s |
bytes32 |
|
setContractAdminRole
function setContractAdminRole(bytes32) nonpayable
sets a new admin role for this contract
Params
Param |
Type |
Notes |
newContractAdminRole |
bytes32 |
|
setCore
function setCore(address) nonpayable
set new Core reference address
Params
Param |
Type |
Notes |
newCore |
address |
the new core address |
setIncentiveContract
function setIncentiveContract(address,address) nonpayable
Params
Param |
Type |
Notes |
account |
address |
the account to incentivize |
incentive |
address |
the associated incentive contract |
symbol
function symbol() view returns(string)
Returns the symbol of the token, usually a shorter version of the name.
Returns
totalSupply
function totalSupply() view returns(uint256)
See {IERC20-totalSupply}.
Returns
transfer
function transfer(address,uint256) nonpayable returns(bool)
See {IERC20-transfer}. Requirements: - recipient
cannot be the zero address. - the caller must have a balance of at least amount
.
Params
Param |
Type |
Notes |
recipient |
address |
|
amount |
uint256 |
|
Returns
transferFrom
function transferFrom(address,address,uint256) nonpayable returns(bool)
See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. Requirements: - sender
and recipient
cannot be the zero address. - sender
must have a balance of at least amount
. - the caller must have allowance for sender
's tokens of at least amount
.
Params
Param |
Type |
Notes |
sender |
address |
|
recipient |
address |
|
amount |
uint256 |
|
Returns
tribe
function tribe() view returns(address)
address of the Tribe contract referenced by Core
Returns
Param |
Type |
Notes |
|
address |
IERC20 implementation address |
tribeBalance
function tribeBalance() view returns(uint256)
tribe balance of contract
Returns
Param |
Type |
Notes |
|
uint256 |
tribe amount held |
unpause
function unpause() nonpayable
set pausable methods to unpaused
⬅️ Contracts