33010bd20c
* feat(slot-reservations): Allow slots to be reserved Closes #175. Allows reservation of slots, without an implementation of the expanding window. - Add a function called `reserveSlot(address, SlotId)`, that allows three unique addresses per slot to be reserved, that returns bool if successful. - Use `mapping(SlotId => EnumerableSet.AddressSet)` - Return false if the address could not be added to the set (if `EnumerableSet.add` returns false) - Add `canReserveSlot(address, SlotId)` - Return `true` if set of reservations is less than 3 and the set doesn't already contain the address - Return `true` otherwise (for now, later add in logic for checking the address is inside the expanding window) - Call `canReserveSlot` from `reserveSlot` as a `require` or invariant - Add `SlotReservations` configuration struct to the network-level config, with `maxReservations` |
||
---|---|---|
.. | ||
Configuration.sol | ||
Endian.sol | ||
FuzzMarketplace.sol | ||
Groth16.sol | ||
Groth16Verifier.sol | ||
Marketplace.sol | ||
Periods.sol | ||
Proofs.sol | ||
Requests.sol | ||
SlotReservations.sol | ||
StateRetrieval.sol | ||
TestEndian.sol | ||
TestMarketplace.sol | ||
TestProofs.sol | ||
TestSlotReservations.sol | ||
TestToken.sol | ||
TestVerifier.sol |