lua-resty-zstd

使用 FFI 为 LuaJIT 提供 Facebook Zstandard 的 Lua 绑定

$ opm get sjnam/lua-resty-zstd

名称

lua-resty-zstd - 使用 FFI 为 LuaJIT 提供 Facebook Zstandard 的 Lua 绑定。

状态

该库仍处于实验阶段,并处于早期开发阶段。

安装

要安装 lua-resty-zstd,您需要先安装具有共享库的 Zstandard。 然后,您可以通过将 lib/resty/zstd.lua 放置到您的 lua 库路径来安装 lua-resty-zstd

示例

`` lua local zstandard = require "resty.zstd" local zstd = zstandard:new() local txt = string.rep("ABCD", 1000) print("Uncompressed size:", #txt) local c, err = zstd:compress(txt) print("Compressed size:", #c) local txt2, err = zstd:decompress(c) assert(txt == txt2) zstd:free() ``

方法

new

语法:zstd = zstandard:new()

创建 cstream 和 dstream。

free

语法:zstd:free()

释放 cstream 和 dstream。

compress

语法:encoded_buffer, err = zstd:compress(input_buffer, clvl)

将 input_buffer 中的数据压缩到 encoded_buffer 中。

decompress

语法:decoded_buffer, err = zstd:decompress(encoded_buffer)

将 encoded_buffer 中的数据解压缩到 decoded_buffer 中。

compressFile

语法:ok, err = zstd:compressFile(path, clvl?)

使用 clvl 压缩级别压缩输入文件。

decompressFile

语法:ok, err = zstd:decompressFile(fname, outname?)

解压缩输入文件 fname。

作者

Soojin Nam (sjnam)

许可

mit

依赖

luajit

版本