OlympusVotes
Inherits: VOTESv1
Votes module is the ERC20 token that represents voting power in the network.
Functions
constructor
constructor(
Kernel kernel_,
ERC20 gOhm_
) Module(kernel_) ERC4626(gOhm_, "Olympus Votes", "vOHM");
Parameters
| Name | Type | Description |
|---|---|---|
| kernel_ | Kernel | |
| gOhm_ | ERC20 |
KEYCODE
5 byte identifier for a module.
function KEYCODE() public pure override returns (Keycode);
Returns
| Name | Type | Description |
|---|---|---|
| <none> | Keycode |
VERSION
Returns which semantic version of a module is being implemented.
function VERSION() external pure override returns (uint8 major, uint8 minor);
Returns
| Name | Type | Description |
|---|---|---|
| major | uint8 | - Major version upgrade indicates breaking change to the interface. |
| minor | uint8 | - Minor version change retains backward-compatible interface. |
deposit
function deposit(
uint256 assets_,
address receiver_
) public override permissioned returns (uint256);
Parameters
| Name | Type | Description |
|---|---|---|
| assets_ | uint256 | |
| receiver_ | address |
Returns
| Name | Type | Description |
|---|---|---|
| <none> | uint256 |
mint
function mint(
uint256 shares_,
address receiver_
) public override permissioned returns (uint256);
Parameters
| Name | Type | Description |
|---|---|---|
| shares_ | uint256 | |
| receiver_ | address |
Returns
| Name | Type | Description |
|---|---|---|
| <none> | uint256 |
withdraw
function withdraw(
uint256 assets_,
address receiver_,
address owner_
) public override permissioned returns (uint256);
Parameters
| Name | Type | Description |
|---|---|---|
| assets_ | uint256 | |
| receiver_ | address | |
| owner_ | address |
Returns
| Name | Type | Description |
|---|---|---|
| <none> | uint256 |
redeem
function redeem(
uint256 shares_,
address receiver_,
address owner_
) public override permissioned returns (uint256);
Parameters
| Name | Type | Description |
|---|---|---|
| shares_ | uint256 | |
| receiver_ | address | |
| owner_ | address |
Returns
| Name | Type | Description |
|---|---|---|
| <none> | uint256 |
transfer
Transfers are locked for this token.
function transfer(address to_, uint256 amt_) public override permissioned returns (bool);
Parameters
| Name | Type | Description |
|---|---|---|
| to_ | address | |
| amt_ | uint256 |
Returns
| Name | Type | Description |
|---|---|---|
| <none> | bool |
transferFrom
TransferFrom is only allowed by permissioned policies.
function transferFrom(
address from_,
address to_,
uint256 amount_
) public override permissioned returns (bool);
Parameters
| Name | Type | Description |
|---|---|---|
| from_ | address | |
| to_ | address | |
| amount_ | uint256 |
Returns
| Name | Type | Description |
|---|---|---|
| <none> | bool |
resetActionTimestamp
function resetActionTimestamp(address _wallet) external override permissioned;
Parameters
| Name | Type | Description |
|---|---|---|
| _wallet | address |
totalAssets
function totalAssets() public view override returns (uint256);
Returns
| Name | Type | Description |
|---|---|---|
| <none> | uint256 |