1个不稳定版本
使用旧的Rust 2015
0.1.0 | 2019年2月3日 |
---|
#1896 在 编码
每月 22次下载
60KB
1.5K SLoC
LLSD for Rust
LLSD是一种结构化数据的编码方案。这个crate提供了一个纯Rust实现的LLSD序列化和反序列化器。
格式
规范
在实现此crate时没有遵循正式规范,然而在2010年试图标准化LLSD(IETF链接),这应该在未来进行更深入的分析。
此实现基于第二人生虚拟世界 LLSD维基页面 和对 LibOpenMetaverse 实现的检查,以解决一些歧义。
概述
任何值要么是标量或容器类型的实例。
两种容器类型是 Map
和 Array
,每个实例都包含一组值。标量类型有:Boolean
,Integer
,Real
(浮点数),UUID
,Date
,Uri
,Binary
,Undefined
(值的缺失)。
许多标量类型之间的转换定义良好,但某些转换是无效的。
实现说明
- XML:二进制编码仅BASE64,解码仅BASE16和BASE64,但没有BASE85。
- 此API尚不稳定。
法律信息
许可证
Copyright (C) 2017-2018 Leonardo Schwarz <[email protected]>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
免责声明
第二人生是Linden Research,Inc.的商标。
Teleport Lab和LLSD for Rust与Linden Research无关,也不受其赞助。
依赖关系
~12MB
~288K SLoC