setting up wrappers

This commit is contained in:
Jaremy Creechley 2024-02-13 22:43:26 -07:00
parent fd323de9b7
commit 14392e838f
No known key found for this signature in database
GPG Key ID: 4E66FB67B21D3300

View File

@ -39,8 +39,12 @@ macro asyncTask*(p: untyped): untyped =
for paramId, paramType in paramsIter(params):
echo "param: ", paramId, " tp: ", paramType.treeRepr
tcall.add newCall("checkParamType", paramId)
asyncBody.add quote do:
let res = `tcall`
# asyncBody.add nnkLetSection.newTree(
# nnkIdentDefs.newTree(ident"res", newEmptyNode(), tcall))
asyncBody = quote do:
let res {.inject.} = `tcall`
discard jobResult.queue.send((jobResult.id, res,))
var asyncParams = params.copyNimTree()
let retType = if not hasReturnType(params): ident"void"
else: params.getReturnType()
@ -72,6 +76,7 @@ proc doHashes2*(data: openArray[byte],
opts: HashOptions): float {.asyncTask.} =
echo "hashing"
# proc doHashesRes*(data: openArray[byte],
# opts: HashOptions): int {.asyncTask.} =
# # echo "args: ", args.len()