mirror of
https://github.com/status-im/nim-dagger.git
synced 2025-02-25 12:55:34 +00:00
* perf: contract storage optimizations * Apply optimization changes * Apply optimizing parameters sizing * Update codex-contracts-eth * bump latest changes in contracts branch * Change requestDurationLimit to uint64 * fix tests * fix tests --------- Co-authored-by: Arnaud <arnaud@status.im> Co-authored-by: Eric <5089238+emizzle@users.noreply.github.com>
43 lines
1.1 KiB
Nim
43 lines
1.1 KiB
Nim
import pkg/questionable
|
|
import pkg/upraises
|
|
import ../errors
|
|
import ../utils/asyncstatemachine
|
|
import ../market
|
|
import ../clock
|
|
import ../contracts/requests
|
|
|
|
export market
|
|
export clock
|
|
export asyncstatemachine
|
|
|
|
type
|
|
SaleState* = ref object of State
|
|
SaleError* = ref object of CodexError
|
|
|
|
method onCancelled*(
|
|
state: SaleState, request: StorageRequest
|
|
): ?State {.base, upraises: [].} =
|
|
discard
|
|
|
|
method onFailed*(
|
|
state: SaleState, request: StorageRequest
|
|
): ?State {.base, upraises: [].} =
|
|
discard
|
|
|
|
method onSlotFilled*(
|
|
state: SaleState, requestId: RequestId, slotIndex: uint64
|
|
): ?State {.base, upraises: [].} =
|
|
discard
|
|
|
|
proc cancelledEvent*(request: StorageRequest): Event =
|
|
return proc(state: State): ?State =
|
|
SaleState(state).onCancelled(request)
|
|
|
|
proc failedEvent*(request: StorageRequest): Event =
|
|
return proc(state: State): ?State =
|
|
SaleState(state).onFailed(request)
|
|
|
|
proc slotFilledEvent*(requestId: RequestId, slotIndex: uint64): Event =
|
|
return proc(state: State): ?State =
|
|
SaleState(state).onSlotFilled(requestId, slotIndex)
|