From 38e2fea1b3e3434a4ae7371532cb0d5bae1712dd Mon Sep 17 00:00:00 2001 From: Tomasz Bekas Date: Thu, 9 May 2024 13:34:45 +0200 Subject: [PATCH] Fix docs --- datastore/typedds.nim | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/datastore/typedds.nim b/datastore/typedds.nim index d9a8fcc..dca1b9a 100644 --- a/datastore/typedds.nim +++ b/datastore/typedds.nim @@ -17,26 +17,27 @@ import ./datastore ## ================== ## .. code-block:: Nim ## import pkg/stew/byteutils -## import pkg/questionable +## import pkg/questionable/results ## ## let ## tds = TypeDatastore.init(ds) ## key = Key.init("p").tryGet() ## ## type Person = object +## age: int ## name: string -## proc encode(t: Person): seq[byte] = -## t.name.toBytes() +## +## proc encode(p: Person): seq[byte] = +## ($p.age & ":" & p.name).toBytes() ## proc decode(T: type Person, bytes: seq[byte]): ?!T = -## success(Person(name: string.fromBytes(bytes))) +## let values = string.fromBytes(bytes).split(':', maxsplit = 1) +## success(Person(age: parseInt(values[0]), name: values[1])) ## -## discard await tds.put(key, Person(name: "John")) +## let p1 = Person(name: "john", age: 21) +## (await tds.put(key, p1)).tryGet() +## let p2 = (await get[Person](tds, key)).tryGet() ## -## let result = (await get[Person](tds, key)).tryGet() -## -## assert: -## result == Person(name: "John") - +## assert p1 == p2 type TypedDatastore* = ref object of RootObj