Bencode 是 BitTorrent (BT 种子) 协议中使用的一种极为成熟的数据序列化和编码格式。本项目旨在为 MoonBit 语言生态提供一个高性能、严格遵循规范的 Bencode 原生编解码器。它的实现不仅填补了 MoonBit 在该特定二进制文本序列化领域的生态空白,还为未来使用 MoonBit 开发 Web3、P2P 协议和高性能网络工具奠定了坚实的基础
版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9
京公网安备 11010802047560号
MoonBencode (基于 MoonBit 的 Bencode 库)
MoonBencode 是一个高性能且成熟的 Bencode 序列化与反序列化库,完全使用 MoonBit 编写。Bencode 是 BitTorrent 点对点文件共享协议所使用的数据编码格式。
特性
i...e,<len>:<string>,l...e和d...e并转换为 MoonBit AST 抽象语法树。Bytes,保证字节级别的保真度。安装
在你的
moon.pkg.json依赖中添加:快速使用
数据类型
本库使用 MoonBit Enum 表示标准 Bencode 类型:
BInt(Int64): 整数类型。BStr(Bytes): 字节串(因 Bencode 的特性,字符串均由字节流表示,未强制使用 UTF-8)。BList(Array[BValue]): 列表类型。BDict(Array[(Bytes, BValue)]): 字典类型。开源协议
Apache-2.0