mirror of
https://github.com/logos-storage/apatheia.git
synced 2026-01-04 05:53:11 +00:00
updates
This commit is contained in:
parent
586582a7c7
commit
4beb2f4d40
@ -6,7 +6,6 @@ description = "Async support for threading primitives"
|
|||||||
license = "MIT"
|
license = "MIT"
|
||||||
srcDir = "src"
|
srcDir = "src"
|
||||||
|
|
||||||
|
|
||||||
# Dependencies
|
# Dependencies
|
||||||
|
|
||||||
requires "chronos >= 4.0.0"
|
requires "chronos >= 4.0.0"
|
||||||
|
|||||||
@ -89,6 +89,15 @@ proc mkParamsVars*(paramsIdent, paramsType, params: NimNode): NimNode =
|
|||||||
result.add varList
|
result.add varList
|
||||||
# echo "paramsSetup return:\n", treeRepr result
|
# echo "paramsSetup return:\n", treeRepr result
|
||||||
|
|
||||||
|
proc mkCall*(callName, params: NimNode): NimNode =
|
||||||
|
## Create local variables for each parameter in the actual RPC call proc
|
||||||
|
if params.isNil: return
|
||||||
|
var argList = newSeq[NimNode]()
|
||||||
|
for paramId, paramType in paramsIter(params):
|
||||||
|
argList.add paramId
|
||||||
|
result = newCall(callName, argList)
|
||||||
|
# echo "mkCall return:\n", treeRepr result
|
||||||
|
|
||||||
proc mkParamsType*(paramsIdent, paramsType, params, genericParams: NimNode): NimNode =
|
proc mkParamsType*(paramsIdent, paramsType, params, genericParams: NimNode): NimNode =
|
||||||
## Create a type that represents the arguments for this rpc call
|
## Create a type that represents the arguments for this rpc call
|
||||||
##
|
##
|
||||||
|
|||||||
@ -1,6 +1,8 @@
|
|||||||
|
|
||||||
import std/[macros, strutils]
|
import std/[macros, strutils]
|
||||||
|
|
||||||
|
import macroutils
|
||||||
|
|
||||||
macro asyncTask*(p: untyped): untyped =
|
macro asyncTask*(p: untyped): untyped =
|
||||||
|
|
||||||
let
|
let
|
||||||
@ -14,8 +16,14 @@ macro asyncTask*(p: untyped): untyped =
|
|||||||
|
|
||||||
echo "ASYNC_TASK: name: ", name
|
echo "ASYNC_TASK: name: ", name
|
||||||
echo "ASYNC_TASK: params: \n", params.treeRepr
|
echo "ASYNC_TASK: params: \n", params.treeRepr
|
||||||
|
let tcall = mkCall(ident"test", params)
|
||||||
|
echo "ASYNC_TASK: call: \n", tcall.treeRepr
|
||||||
|
|
||||||
proc doHashes*(args: openArray[byte]) {.asyncTask.} =
|
type
|
||||||
|
HashOptions* = object
|
||||||
|
striped*: bool
|
||||||
|
|
||||||
|
proc doHashes*(data: openArray[byte], opts: HashOptions) {.asyncTask.} =
|
||||||
|
|
||||||
echo "args: ", args.len()
|
echo "args: ", args.len()
|
||||||
|
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
switch("path", "$projectDir/../src")
|
switch("path", "$projectDir/../src")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user