mirror of
https://github.com/logos-storage/apatheia.git
synced 2026-01-04 05:53:11 +00:00
reworking seq holder
This commit is contained in:
parent
2bcc3e62d1
commit
62db65e47c
@ -80,14 +80,13 @@ template checkJobArgs*[T](exp: seq[T], fut: untyped): OpenArrayHolder[T] =
|
|||||||
# static:
|
# static:
|
||||||
# echo "checkJobArgs::SEQ: ", $typeof(exp)
|
# echo "checkJobArgs::SEQ: ", $typeof(exp)
|
||||||
let rval = SeqHolder[T](data: exp)
|
let rval = SeqHolder[T](data: exp)
|
||||||
GC_ref(rval)
|
|
||||||
let expPtr = OpenArrayHolder[T](data: cast[ptr UncheckedArray[T]](unsafeAddr(rval.data[0])), size: rval.data.len())
|
let expPtr = OpenArrayHolder[T](data: cast[ptr UncheckedArray[T]](unsafeAddr(rval.data[0])), size: rval.data.len())
|
||||||
# defer:
|
# defer:
|
||||||
# ## try and keep the value type
|
# ## try and keep the value type
|
||||||
# discard val.len()
|
# discard val.len()
|
||||||
fut.addCallback proc(data: pointer) =
|
fut.addCallback proc(data: pointer) =
|
||||||
GC_unref(rval)
|
discard rval.data.len()
|
||||||
echo "FREE RVaL: "
|
echo "FREE RVaL: ", rval.data.len()
|
||||||
## TODO: how to handle cancellations?
|
## TODO: how to handle cancellations?
|
||||||
expPtr
|
expPtr
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user