-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
It seems that it is not possible to resuse buffer with current API , how about this?
proc myCompress*(src: sink openArray[byte], dst : var seq[byte], level: int = 3): seq[byte] =
let src_ptr = unsafeAddr(src[0])
let src_cap = cast[csize_t](src.len)
let dst_cap = ZSTD_compressBound(src_cap)
dst.setLen(dst_cap)
let res: uint = ZSTD_compress(addr(dst[0]), dst_cap, src_ptr, src_cap, level.cint)
if ZSTD_isError(res):
assert(false, $ZSTD_getErrorName(res))
dst.setLen(res)
return dstReactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels