diff options
author | Andrea Ferretti <ferrettiandrea@gmail.com> | 2016-09-22 11:39:24 +0200 |
---|---|---|
committer | Andrea Ferretti <ferrettiandrea@gmail.com> | 2016-09-22 11:39:24 +0200 |
commit | 25ee55adfc94f3a71a4764f7e8ee86b2a97bccf9 (patch) | |
tree | 5c7762737d60390f1e47511e672d974775121ce6 | |
parent | 693b2b0f5d809570d684fc2a93c9f25ac7f6467d (diff) | |
download | Nim-25ee55adfc94f3a71a4764f7e8ee86b2a97bccf9.tar.gz |
Update to allow varargs in js console logging
-rw-r--r-- | lib/js/jsconsole.nim | 9 |
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)) |