diff options
author | Dominik Picheta <dominikpicheta@gmail.com> | 2017-11-29 20:47:56 +0000 |
---|---|---|
committer | Dominik Picheta <dominikpicheta@googlemail.com> | 2017-11-30 21:34:30 +0000 |
commit | 8d6126237226a80ca4c78206c625009ce285c348 (patch) | |
tree | 9bee2ce26f225f3fae2d510e8be957a8efb1f011 /lib | |
parent | 8187e83645bbc9d536eebfab2af3b2437c3485fb (diff) | |
download | Nim-8d6126237226a80ca4c78206c625009ce285c348.tar.gz |
Implement support for JsonNode in json.to.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pure/json.nim | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/pure/json.nim b/lib/pure/json.nim index 6153e2f03..1d2f480c4 100644 --- a/lib/pure/json.nim +++ b/lib/pure/json.nim @@ -1744,6 +1744,11 @@ proc createConstructor(typeSym, jsonNode: NimNode): NimNode = let obj = getType(typeSym) result = processType(typeSym, obj, jsonNode, false) of nnkSym: + # Handle JsonNode. + if ($typeSym).cmpIgnoreStyle("jsonnode") == 0: + return jsonNode + + # Handle all other types. let obj = getType(typeSym) if obj.kind == nnkBracketExpr: # When `Sym "Foo"` turns out to be a `ref object`. |