Checkpoint module for issuing ERC20 dividends (ERC20DividendCheckpoint.sol)
View Source: contracts/modules/Checkpoint/Dividend/ERC20/ERC20DividendCheckpoint.sol
↗ Extends: ERC20DividendCheckpointStorage, DividendCheckpoint
ERC20DividendCheckpoint
Events
Functions
Constructor
Arguments
Name | Type | Description |
_securityToken | address | Address of the security token |
_polyToken | address |
createDividend
Creates a dividend and checkpoint for the dividend
Arguments
Name | Type | Description |
_maturity | uint256 | Time from which dividend can be paid |
_expiry | uint256 | Time until dividend can no longer be paid, and can be reclaimed by issuer |
_token | address | Address of ERC20 token in which dividend is to be denominated |
_amount | uint256 | Amount of specified token for dividend |
_name | bytes32 | Name/Title for identification |
createDividendWithCheckpoint
Creates a dividend with a provided checkpoint
Arguments
Name | Type | Description |
_maturity | uint256 | Time from which dividend can be paid |
_expiry | uint256 | Time until dividend can no longer be paid, and can be reclaimed by issuer |
_token | address | Address of ERC20 token in which dividend is to be denominated |
_amount | uint256 | Amount of specified token for dividend |
_checkpointId | uint256 | Checkpoint id from which to create dividends |
_name | bytes32 | Name/Title for identification |
createDividendWithExclusions
Creates a dividend and checkpoint for the dividend
Arguments
Name | Type | Description |
_maturity | uint256 | Time from which dividend can be paid |
_expiry | uint256 | Time until dividend can no longer be paid, and can be reclaimed by issuer |
_token | address | Address of ERC20 token in which dividend is to be denominated |
_amount | uint256 | Amount of specified token for dividend |
_excluded | address[] | List of addresses to exclude |
_name | bytes32 | Name/Title for identification |
createDividendWithCheckpointAndExclusions
Creates a dividend with a provided checkpoint
Arguments
Name | Type | Description |
_maturity | uint256 | Time from which dividend can be paid |
_expiry | uint256 | Time until dividend can no longer be paid, and can be reclaimed by issuer |
_token | address | Address of ERC20 token in which dividend is to be denominated |
_amount | uint256 | Amount of specified token for dividend |
_checkpointId | uint256 | Checkpoint id from which to create dividends |
_excluded | address[] | List of addresses to exclude |
_name | bytes32 | Name/Title for identification |
_createDividendWithCheckpointAndExclusions
Creates a dividend with a provided checkpoint
Arguments
Name | Type | Description |
_maturity | uint256 | Time from which dividend can be paid |
_expiry | uint256 | Time until dividend can no longer be paid, and can be reclaimed by issuer |
_token | address | Address of ERC20 token in which dividend is to be denominated |
_amount | uint256 | Amount of specified token for dividend |
_checkpointId | uint256 | Checkpoint id from which to create dividends |
_excluded | address[] | List of addresses to exclude |
_name | bytes32 | Name/Title for identification |
_emitERC20DividendDepositedEvent
Emits the ERC20DividendDeposited event. Seperated into a different function as a workaround for stack too deep error
Arguments
Name | Type | Description |
_checkpointId | uint256 | |
_maturity | uint256 | |
_expiry | uint256 | |
_token | address | |
_amount | uint256 | |
currentSupply | uint256 | |
dividendIndex | uint256 | |
_name | bytes32 |
_payDividend
⤾ overrides DividendCheckpoint._payDividend
Internal function for paying dividends
Arguments
Name | Type | Description |
_payee | address payable | Address of investor |
_dividend | struct DividendCheckpointStorage.Dividend | Storage with previously issued dividends |
_dividendIndex | uint256 | Dividend to pay |
reclaimDividend
⤾ overrides DividendCheckpoint.reclaimDividend
Issuer can reclaim remaining unclaimed dividend amounts, for expired dividends
Arguments
Name | Type | Description |
_dividendIndex | uint256 | Dividend to reclaim |
withdrawWithholding
⤾ overrides DividendCheckpoint.withdrawWithholding
Allows issuer to withdraw withheld tax
Arguments
Name | Type | Description |
_dividendIndex | uint256 | Dividend to withdraw from |
Last updated