Skip to content
Lattice

ProposalCore

Git Source

Core proposal data stored for each proposal.

Packed tightly: proposer (20 bytes) + voteStart (6 bytes) + voteDuration (4 bytes)

  • executed (1 byte) + canceled (1 byte) + etaSeconds (6 bytes) = 38 bytes (fits in 2 slots).
struct ProposalCore {
    /// @dev The address that submitted the proposal.
    address proposer;
    /// @dev The clock value at which voting begins (voteStart = creation clock + votingDelay).
    uint48 voteStart;
    /// @dev Duration of the voting period (in clock units).
    uint32 voteDuration;
    /// @dev Whether the proposal has been executed.
    bool executed;
    /// @dev Whether the proposal has been canceled.
    bool canceled;
    /// @dev Timelock ETA in seconds (0 if not queued).
    uint48 etaSeconds;
}

Properties

NameTypeDescription
proposeraddress
voteStartuint48
voteDurationuint32
executedbool
canceledbool
etaSecondsuint48