Files
Nim/tests/js/tasyncjs_pragma.nim
Timothee Cour a66637bda4 followup #16871 asyncjs.then: allow pipelining procs returning futures (#17189)
* followup #16871 asyncjs.then: allow pipelining procs returning futures
* rename test files where they belong
* fix tests
* tests for then with `onReject` callback
* rename test file containing fail to avoid messing with grep
* address comments
* cleanup
* un-disable 1 test
2021-03-04 14:00:04 +01:00

30 lines
469 B
Nim

discard """
output: '''
0
t
'''
"""
# xxx merge into tasyncjs.nim
import asyncjs, macros
macro f*(a: untyped): untyped =
assert a.kind == nnkProcDef
result = nnkProcDef.newTree(a.name, a[1], a[2], a.params, a.pragma, a[5], nnkStmtList.newTree())
let call = quote:
echo 0
result.body.add(call)
for child in a.body:
result.body.add(child)
#echo result.body.repr
proc t* {.async, f.} =
echo "t"
proc t0* {.async.} =
await t()
discard t0()