summary refs log tree commit diff stats
path: root/lib/pure/json.nim
diff options
context:
space:
mode:
Diffstat (limited to 'lib/pure/json.nim')
-rw-r--r--lib/pure/json.nim5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/pure/json.nim b/lib/pure/json.nim
index 1d2b20176..b556f7ccf 100644
--- a/lib/pure/json.nim
+++ b/lib/pure/json.nim
@@ -908,14 +908,13 @@ proc parseJson*(s: Stream, filename: string = ""; rawIntegers = false, rawFloats
 
 when defined(js):
   from std/math import `mod`
-  import std/jsffi
+  from std/jsffi import JSObject, `[]`, to
+  from std/private/jsutils import getProtoName
 
   proc parseNativeJson(x: cstring): JSObject {.importjs: "JSON.parse(#)".}
 
   proc getVarType(x: JSObject): JsonNodeKind =
     result = JNull
-    proc getProtoName(y: JSObject): cstring
-      {.importjs: "Object.prototype.toString.call(#)".}
     case $getProtoName(x) # TODO: Implicit returns fail here.
     of "[object Array]": return JArray
     of "[object Object]": return JObject