1个不稳定版本
0.1.0 | 2021年12月14日 |
---|
#139 在 #encode-decode
每月177 次下载
在 10 个crate中使用了(通过 jcers)
7KB
123 行
Jcers
为Jce提供的编码/解码库。
特性
derive
: derive宏支持
使用方法
use jcers::{JceGet, JcePut};
#[derive(Debug, Default, JceGet, JcePut)]
pub struct YouJceStruct { // only support NamedStruct
#[jce(0)] // jce tag
pub a_named_field: u8, // a field
}
let s: YouJceStruct = jcers::from_buf(&mut buf).unwrap(); // buf should impl bytes::Buf
JceType
JceCode | JceType | RustType |
---|---|---|
0 | u8 | u8 |
1 | i16 | i16 |
2 | i32 | i32 |
3 | i64 | i64 |
4 | f32 | f32 |
5 | f64 | f64 |
6 | ShortString | String |
7 | LongString | String |
8 | Map | HashMap<K, V> |
9 | List | Vec<V> |
10 | Struct | T |
11 | StructEnd | - |
12 | Empty | T::default() |
13 | bytes | bytes::Bytes |
依赖
~1.5MB
~36K SLoC