Skip to main content

VohmVault

Git Source

Inherits: Policy

Policy to mint and burn VOTES to arbitrary addresses

Constants​

VESTING_PERIOD​

uint256 public constant VESTING_PERIOD = 1 hours;

State Variables​

gOHM​

ERC20 public gOHM;

VOTES​

VOTESv1 public VOTES;

Functions​

constructor​

constructor(Kernel kernel_) Policy(kernel_);

Parameters

NameTypeDescription
kernel_Kernel

configureDependencies​

Define module dependencies for this policy.

function configureDependencies() external override returns (Keycode[] memory dependencies);

Returns

NameTypeDescription
dependenciesKeycode[]- Keycode array of module dependencies.

requestPermissions​

Function called by kernel to set module function permissions.

function requestPermissions()
external
view
override
returns (Permissions[] memory permissions);

Returns

NameTypeDescription
permissionsPermissions[]- Array of keycodes and function selectors for requested permissions.

onlyVested​

modifier onlyVested();

deposit​

function deposit(uint256 assets_) public;

Parameters

NameTypeDescription
assets_uint256

mint​

function mint(uint256 shares_) public;

Parameters

NameTypeDescription
shares_uint256

withdraw​

function withdraw(uint256 assets_) public onlyVested;

Parameters

NameTypeDescription
assets_uint256

redeem​

function redeem(uint256 shares_) public onlyVested;

Parameters

NameTypeDescription
shares_uint256