summary refs log tree commit diff stats
path: root/lib/js/jsconsole.nim
diff options
context:
space:
mode:
Diffstat (limited to 'lib/js/jsconsole.nim')
-rw-r--r--lib/js/jsconsole.nim9
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/js/jsconsole.nim b/lib/js/jsconsole.nim
index 7bdc8922e..2e3eda8b8 100644
--- a/lib/js/jsconsole.nim
+++ b/lib/js/jsconsole.nim
@@ -15,6 +15,14 @@ when not defined(js) and not defined(Nimdoc):
 
 type Console* {.importc.} = ref object of RootObj
 
+proc convertToConsoleLoggable*[T](v: T): RootRef {.importcpp: "#".}
+template convertToConsoleLoggable*(v: string): RootRef = cast[RootRef](cstring(v))
+
+proc log*(console: Console, args: varargs[RootRef, convertToConsoleLoggable]) {.importcpp: "#.log(#)".}
+proc debug*(console: Console, args: varargs[RootRef, convertToConsoleLoggable]) {.importcpp: "#.debug(#)".}
+proc info*(console: Console, args: varargs[RootRef, convertToConsoleLoggable]) {.importcpp: "#.info(#)".}
+proc error*(console: Console, args: varargs[RootRef, convertToConsoleLoggable]) {.importcpp: "#.error(#)".}
+
 {.push importcpp .}
 
 proc log*[A](console: Console, a: A)
@@ -23,7 +31,6 @@ proc info*[A](console: Console, a: A)
 proc error*[A](console: Console, a: A)
 
 {.pop.}
-
 proc log*(console: Console, a: string) = console.log(cstring(a))
 proc debug*(console: Console, a: string) = console.log(cstring(a))
 proc info*(console: Console, a: string) = console.log(cstring(a))