2 个版本

使用旧的 Rust 2015

0.1.1 2017 年 1 月 7 日
0.1.0 2017 年 1 月 7 日

Rust 模式 中排名第 2343

Download history • Rust 包仓库 186/week @ 2024-04-04 • Rust 包仓库 156/week @ 2024-04-11 • Rust 包仓库 127/week @ 2024-04-18 • Rust 包仓库 134/week @ 2024-04-25 • Rust 包仓库 166/week @ 2024-05-02 • Rust 包仓库 213/week @ 2024-05-09 • Rust 包仓库 192/week @ 2024-05-16 • Rust 包仓库 178/week @ 2024-05-23 • Rust 包仓库 225/week @ 2024-05-30 • Rust 包仓库 193/week @ 2024-06-06 • Rust 包仓库 165/week @ 2024-06-13 • Rust 包仓库 138/week @ 2024-06-20 • Rust 包仓库 132/week @ 2024-06-27 • Rust 包仓库 105/week @ 2024-07-04 • Rust 包仓库 98/week @ 2024-07-11 • Rust 包仓库 60/week @ 2024-07-18 • Rust 包仓库

每月下载量 412
4 个包中使用(直接使用 3 个)4 个包

MIT 许可证

5KB
64

#6 ioctl-gen

文档

在没有宏的情况下制作这些神奇的 ioctl 号码真的很烦人,所以这里有一些宏。如果你好奇的话,是的,它们可以在常量中使用。

示例

#[macro_use]
extern crate ioctlify;

// Taken from <linux/videodev2.h>
const VIDIOC_RESERVED:   u32 = io!(b'V', 1);
const VIDIOC_STREAMON:   u32 = iow!(b'V', 18, 4);
const VIDIOC_LOG_STATUS: u32 = io!(b'V', 70);

assert_eq!(ioc_type!(VIDIOC_RESERVED), b'V' as u32);
assert_eq!(VIDIOC_STREAMON, 1074026002);
assert_eq!(ioc_nr!(VIDIOC_LOG_STATUS), 70);

安装

Cargo.toml

[dependencies]
ioctl-gen = "0.1.0"

许可证

MIT 许可证。


lib.rs:

这个包允许你编码和解码 ioctl 号码。基本上就是 ioctl.h 的移植。

以下是一些示例

#[macro_use]
extern crate ioctlify;

// Taken from <linux/videodev2.h>
const VIDIOC_RESERVED:   u32 = io!(b'V', 1);
const VIDIOC_STREAMON:   u32 = iow!(b'V', 18, 4);
const VIDIOC_LOG_STATUS: u32 = io!(b'V', 70);

assert_eq!(ioc_type!(VIDIOC_RESERVED), b'V' as u32);
assert_eq!(VIDIOC_STREAMON, 1074026002);
assert_eq!(ioc_nr!(VIDIOC_LOG_STATUS), 70);

无运行时依赖