Skip to main content

Split

Methods​

DEFAULT_ADMIN_ROLE​

function DEFAULT_ADMIN_ROLE() external view returns (bytes32)

Returns​

NameTypeDescription
_0bytes32undefined

contractType​

function contractType() external pure returns (bytes32)

Returns the module type of the contract.

Returns​

NameTypeDescription
_0bytes32undefined

contractURI​

function contractURI() external view returns (string)

Contract level metadata.

Returns​

NameTypeDescription
_0stringundefined

contractVersion​

function contractVersion() external pure returns (uint8)

Returns the version of the contract.

Returns​

NameTypeDescription
_0uint8undefined

distribute​

function distribute(contract IERC20Upgradeable token) external nonpayable

Release owed amount of the token to all of the payees.

Parameters​

NameTypeDescription
tokencontract IERC20Upgradeableundefined

distribute​

function distribute() external nonpayable

Release the owed amount of token to all of the payees.

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​

NameTypeDescription
rolebytes32undefined

Returns​

NameTypeDescription
_0bytes32undefined

getRoleMember​

function getRoleMember(bytes32 role, uint256 index) external view returns (address)

Returns one of the accounts that have role. index must be a value between 0 and {getRoleMemberCount}, non-inclusive. Role bearers are not sorted in any particular way, and their ordering may change at any point. WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure you perform all queries on the same block. See the following https://forum.openzeppelin.com/t/iterating-over-elements-on-enumerableset-in-openzeppelin-contracts/2296 for more information.

Parameters​

NameTypeDescription
rolebytes32undefined
indexuint256undefined

Returns​

NameTypeDescription
_0addressundefined

getRoleMemberCount​

function getRoleMemberCount(bytes32 role) external view returns (uint256)

Returns the number of accounts that have role. Can be used together with {getRoleMember} to enumerate all bearers of a role.

Parameters​

NameTypeDescription
rolebytes32undefined

Returns​

NameTypeDescription
_0uint256undefined

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. May emit a {RoleGranted} event.

Parameters​

NameTypeDescription
rolebytes32undefined
accountaddressundefined

hasRole​

function hasRole(bytes32 role, address account) external view returns (bool)

Returns true if account has been granted role.

Parameters​

NameTypeDescription
rolebytes32undefined
accountaddressundefined

Returns​

NameTypeDescription
_0boolundefined

initialize​

function initialize(address _defaultAdmin, string _contractURI, address[] _trustedForwarders, address[] _payees, uint256[] _shares) external nonpayable

Performs the job of the constructor.shares_ are scaled by 10,000 to prevent precision loss when including fees

Parameters​

NameTypeDescription
_defaultAdminaddressundefined
_contractURIstringundefined
_trustedForwardersaddress[]undefined
_payeesaddress[]undefined
_sharesuint256[]undefined

isTrustedForwarder​

function isTrustedForwarder(address forwarder) external view returns (bool)

Parameters​

NameTypeDescription
forwarderaddressundefined

Returns​

NameTypeDescription
_0boolundefined

multicall​

function multicall(bytes[] data) external nonpayable returns (bytes[] results)

Receives and executes a batch of function calls on this contract.

Parameters​

NameTypeDescription
databytes[]undefined

Returns​

NameTypeDescription
resultsbytes[]undefined

payee​

function payee(uint256 index) external view returns (address)

Getter for the address of the payee number index.

Parameters​

NameTypeDescription
indexuint256undefined

Returns​

NameTypeDescription
_0addressundefined

payeeCount​

function payeeCount() external view returns (uint256)

Get the number of payees

Returns​

NameTypeDescription
_0uint256undefined

releasable​

function releasable(address account) external view returns (uint256)

Getter for the amount of payee's releasable Ether.

Parameters​

NameTypeDescription
accountaddressundefined

Returns​

NameTypeDescription
_0uint256undefined

releasable​

function releasable(contract IERC20Upgradeable token, address account) external view returns (uint256)

Getter for the amount of payee's releasable token tokens. token should be the address of an IERC20 contract.

Parameters​

NameTypeDescription
tokencontract IERC20Upgradeableundefined
accountaddressundefined

Returns​

NameTypeDescription
_0uint256undefined

release​

function release(address payable account) external nonpayable

Triggers a transfer to account of the amount of Ether they are owed, according to their percentage of the total shares and their previous withdrawals.

Parameters​

NameTypeDescription
accountaddress payableundefined

release​

function release(contract IERC20Upgradeable token, address account) external nonpayable

Triggers a transfer to account of the amount of token tokens they are owed, according to their percentage of the total shares and their previous withdrawals. token must be the address of an IERC20 contract.

Parameters​

NameTypeDescription
tokencontract IERC20Upgradeableundefined
accountaddressundefined

released​

function released(contract IERC20Upgradeable token, address account) external view returns (uint256)

Getter for the amount of token tokens already released to a payee. token should be the address of an IERC20 contract.

Parameters​

NameTypeDescription
tokencontract IERC20Upgradeableundefined
accountaddressundefined

Returns​

NameTypeDescription
_0uint256undefined

released​

function released(address account) external view returns (uint256)

Getter for the amount of Ether already released to a payee.

Parameters​

NameTypeDescription
accountaddressundefined

Returns​

NameTypeDescription
_0uint256undefined

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 revoked role, emits a {RoleRevoked} event. Requirements: - the caller must be account. May emit a {RoleRevoked} event.

Parameters​

NameTypeDescription
rolebytes32undefined
accountaddressundefined

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. May emit a {RoleRevoked} event.

Parameters​

NameTypeDescription
rolebytes32undefined
accountaddressundefined

setContractURI​

function setContractURI(string _uri) external nonpayable

Sets contract URI for the contract-level metadata of the contract.

Parameters​

NameTypeDescription
_uristringundefined

shares​

function shares(address account) external view returns (uint256)

Getter for the amount of shares held by an account.

Parameters​

NameTypeDescription
accountaddressundefined

Returns​

NameTypeDescription
_0uint256undefined

supportsInterface​

function supportsInterface(bytes4 interfaceId) external view returns (bool)

See {IERC165-supportsInterface}.

Parameters​

NameTypeDescription
interfaceIdbytes4undefined

Returns​

NameTypeDescription
_0boolundefined

totalReleased​

function totalReleased(contract IERC20Upgradeable token) external view returns (uint256)

Getter for the total amount of token already released. token should be the address of an IERC20 contract.

Parameters​

NameTypeDescription
tokencontract IERC20Upgradeableundefined

Returns​

NameTypeDescription
_0uint256undefined

totalReleased​

function totalReleased() external view returns (uint256)

Getter for the total amount of Ether already released.

Returns​

NameTypeDescription
_0uint256undefined

totalShares​

function totalShares() external view returns (uint256)

Getter for the total shares held by payees.

Returns​

NameTypeDescription
_0uint256undefined

Events​

ERC20PaymentReleased​

event ERC20PaymentReleased(contract IERC20Upgradeable indexed token, address to, uint256 amount)

Parameters​

NameTypeDescription
token indexedcontract IERC20Upgradeableundefined
toaddressundefined
amountuint256undefined

Initialized​

event Initialized(uint8 version)

Parameters​

NameTypeDescription
versionuint8undefined

PayeeAdded​

event PayeeAdded(address account, uint256 shares)

Parameters​

NameTypeDescription
accountaddressundefined
sharesuint256undefined

PaymentReceived​

event PaymentReceived(address from, uint256 amount)

Parameters​

NameTypeDescription
fromaddressundefined
amountuint256undefined

PaymentReleased​

event PaymentReleased(address to, uint256 amount)

Parameters​

NameTypeDescription
toaddressundefined
amountuint256undefined

RoleAdminChanged​

event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)

Parameters​

NameTypeDescription
role indexedbytes32undefined
previousAdminRole indexedbytes32undefined
newAdminRole indexedbytes32undefined

RoleGranted​

event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)

Parameters​

NameTypeDescription
role indexedbytes32undefined
account indexedaddressundefined
sender indexedaddressundefined

RoleRevoked​

event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)

Parameters​

NameTypeDescription
role indexedbytes32undefined
account indexedaddressundefined
sender indexedaddressundefined