7 个版本
0.1.7 | 2024年7月18日 |
---|---|
0.1.6 |
|
0.1.5 | 2023年12月14日 |
0.1.2 | 2023年4月7日 |
0.1.1 | 2023年3月23日 |
#1069 in 编码
每月256 次下载
19KB
424 行
Tora
一个轻量级的基于字节的序列化和反序列化库
*零-serde 解决方案*
示例
网络数据传输
主机
use std::io;
use std::net::TcpListener;
use tora::write::ToraWrite;
use tora::WriteStruct;
#[derive(WriteStruct)]
struct Message {
sender: String,
content: String,
}
fn main() -> io::Result<()> {
let listener = TcpListener::bind("127.0.0.1:12345")?;
let (mut conn, _) = listener.accept()?;
let message = Message {
sender: "John".to_string(),
content: "Hello, world!".to_string(),
};
conn.writes(&message)
}
客户端
use std::io;
use std::net::TcpStream;
use tora::read::ToraRead;
use tora::ReadStruct;
#[derive(ReadStruct)]
struct Message {
sender: String,
content: String,
}
fn main() -> io::Result<()> {
let mut stream = TcpStream::connect("127.0.0.1:12345")?;
let Message { sender, content } = stream.reads()?;
println!("{}: {}", sender, content);
Ok(())
}
依赖项
~295–750KB
~18K SLoC