commit
fc735e4b08
3 changed files with 35 additions and 1 deletions
|
|
@ -327,7 +327,10 @@ proc setPointer*(x: Any, y: pointer) =
|
|||
## ``akString``, ``akCString``, ``akProc``, ``akRef``, ``akPtr``,
|
||||
## ``akPointer``, ``akSequence``.
|
||||
assert x.rawType.kind in pointerLike
|
||||
if y != nil:
|
||||
genericAssign(x.value, y, x.rawType)
|
||||
else:
|
||||
cast[ppointer](x.value)[] = nil
|
||||
|
||||
proc fieldsAux(p: pointer, n: ptr TNimNode,
|
||||
ret: var seq[tuple[name: cstring, any: Any]]) =
|
||||
|
|
|
|||
6
tests/stdlib/t9754.nim
Normal file
6
tests/stdlib/t9754.nim
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
discard """
|
||||
joinable: false
|
||||
"""
|
||||
|
||||
import tmarshal
|
||||
import tparsesql
|
||||
|
|
@ -4,6 +4,9 @@ true
|
|||
true
|
||||
alpha 100
|
||||
omega 200
|
||||
Some(null)
|
||||
None[JsonNode]
|
||||
(numeric: "")
|
||||
'''
|
||||
joinable: false
|
||||
"""
|
||||
|
|
@ -123,3 +126,25 @@ var foo = Foo(a2: "", a4: @[], a6: @[1])
|
|||
foo.a6.setLen 0
|
||||
doAssert $$foo == """{"a1": "", "a2": "", "a3": [], "a4": [], "a5": [], "a6": []}"""
|
||||
testit(foo)
|
||||
|
||||
import options, json
|
||||
|
||||
# bug #15934
|
||||
block:
|
||||
let
|
||||
a1 = some(newJNull())
|
||||
a2 = none(JsonNode)
|
||||
echo ($$a1).to[:Option[JsonNode]]
|
||||
echo ($$a2).to[:Option[JsonNode]]
|
||||
|
||||
|
||||
# bug #15620
|
||||
block:
|
||||
let str = """{"numeric": null}"""
|
||||
|
||||
type
|
||||
LegacyEntry = object
|
||||
numeric: string
|
||||
|
||||
let test = to[LegacyEntry](str)
|
||||
echo test
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue