1 ! Copyright (C) 2021 Doug Coleman.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: alien alien.c-types alien.libraries alien.syntax
5 IN: compression.zstd.ffi
8 { [ os windows? ] [ "libzstd.dll" ] }
9 { [ os macosx? ] [ "libzstd.dylib" ] }
10 { [ os unix? ] [ "libzstd.so" ] }
11 } cond cdecl add-library >>
15 FUNCTION: size_t ZSTD_compress ( void* dst, size_t dstCapacity,
16 void* src, size_t srcSize,
17 int compressionLevel )
19 FUNCTION: size_t ZSTD_decompress ( void* dst, size_t dstCapacity,
20 void* src, size_t compressedSize )
22 FUNCTION: ulonglong ZSTD_getFrameContentSize ( void *src, size_t srcSize )
24 FUNCTION: uint ZSTD_isError ( size_t code )
26 FUNCTION: c-string ZSTD_getErrorName ( size_t code )
28 ! There are many more api calls but this is enough for basic payloads