nim-datastore/datastore/datastore.nim

45 lines
1.3 KiB
Nim
Raw Normal View History

import pkg/chronos
2022-05-11 10:50:05 -05:00
import pkg/questionable/results
import pkg/upraises
import ./key
2022-07-15 15:28:42 -05:00
import ./query
import ./types
2022-05-11 10:50:05 -05:00
export key, query, types
2022-05-11 10:50:05 -05:00
push: {.upraises: [].}
type
BatchEntry* = tuple[key: Key, data: seq[byte]]
2022-12-02 16:25:44 -06:00
method has*(self: Datastore, key: Key): Future[?!bool] {.base, locks: "unknown".} =
2022-05-11 10:50:05 -05:00
raiseAssert("Not implemented!")
2022-09-19 15:52:34 -06:00
method delete*(self: Datastore, key: Key): Future[?!void] {.base, locks: "unknown".} =
2022-05-11 10:50:05 -05:00
raiseAssert("Not implemented!")
method delete*(self: Datastore, keys: seq[Key]): Future[?!void] {.base, locks: "unknown".} =
raiseAssert("Not implemented!")
2022-09-19 15:52:34 -06:00
method get*(self: Datastore, key: Key): Future[?!seq[byte]] {.base, locks: "unknown".} =
2022-05-11 10:50:05 -05:00
raiseAssert("Not implemented!")
2022-09-19 15:52:34 -06:00
method put*(self: Datastore, key: Key, data: seq[byte]): Future[?!void] {.base, locks: "unknown".} =
raiseAssert("Not implemented!")
2022-05-11 10:50:05 -05:00
method put*(self: Datastore, batch: seq[BatchEntry]): Future[?!void] {.base, locks: "unknown".} =
raiseAssert("Not implemented!")
2022-09-19 17:12:16 -06:00
method close*(self: Datastore): Future[?!void] {.base, async, locks: "unknown".} =
raiseAssert("Not implemented!")
2022-05-11 10:50:05 -05:00
2022-09-19 15:52:34 -06:00
method query*(
2022-07-15 15:28:42 -05:00
self: Datastore,
query: Query): Future[?!QueryIter] {.base, gcsafe.} =
2022-07-15 15:28:42 -05:00
raiseAssert("Not implemented!")
2022-12-02 16:25:44 -06:00
proc contains*(self: Datastore, key: Key): Future[bool] {.async.} =
return (await self.has(key)) |? false