SablierV2MerkleLockup
Inherits: ISablierV2MerkleLockup, Adminable
See the documentation in ISablierV2MerkleLockup.
State Variables
ASSET
The ERC-20 asset to distribute.
This is an immutable state variable.
IERC20 public immutable override ASSET;
CANCELABLE
A flag indicating whether the streams can be canceled.
This is an immutable state variable.
bool public immutable override CANCELABLE;
EXPIRATION
The cut-off point for the campaign, as a Unix timestamp. A value of zero means there is no expiration.
This is an immutable state variable.
uint40 public immutable override EXPIRATION;
MERKLE_ROOT
The root of the Merkle tree used to validate the proofs of inclusion.
This is an immutable state variable.
bytes32 public immutable override MERKLE_ROOT;
NAME
The name of the campaign stored as bytes32.
bytes32 internal immutable NAME;
TRANSFERABLE
A flag indicating whether the stream NFTs are transferable.
This is an immutable state variable.
bool public immutable override TRANSFERABLE;
ipfsCID
The content identifier for indexing the campaign on IPFS.
string public ipfsCID;
_claimedBitMap
Packed booleans that record the history of claims.
BitMaps.BitMap internal _claimedBitMap;
_firstClaimTime
The timestamp when the first claim is made.
uint40 internal _firstClaimTime;
Functions
constructor
Constructs the contract by initializing the immutable state variables.
constructor(MerkleLockup.ConstructorParams memory params);
getFirstClaimTime
Returns the timestamp when the first claim is made.
function getFirstClaimTime() external view override returns (uint40);
hasClaimed
Returns a flag indicating whether a claim has been made for a given index.
Uses a bitmap to save gas.
function hasClaimed(uint256 index) public view override returns (bool);
Parameters
Name | Type | Description |
---|---|---|
index | uint256 | The index of the recipient to check. |
hasExpired
Returns a flag indicating whether the campaign has expired.
function hasExpired() public view override returns (bool);