#unsafe #c

va_list

为少量 ABIs 提供了 'va_list' 类型的 Rust 实现。允许 Rust 实现如 vprintf 等函数。

9 个版本

使用旧的 Rust 2015

0.2.0 2024年7月4日
0.1.4 2022年4月3日
0.1.3 2018年11月18日
0.1.1 2018年10月21日
0.0.1 2015年6月7日

FFI 中排名 #30

Download history 2797/week @ 2024-04-29 3462/week @ 2024-05-06 3869/week @ 2024-05-13 3643/week @ 2024-05-20 5219/week @ 2024-05-27 5433/week @ 2024-06-03 4663/week @ 2024-06-10 5301/week @ 2024-06-17 6037/week @ 2024-06-24 6848/week @ 2024-07-01 6665/week @ 2024-07-08 6136/week @ 2024-07-15 8216/week @ 2024-07-22 8386/week @ 2024-07-29 10227/week @ 2024-08-05 8403/week @ 2024-08-12

每月下载量 35,540
16 Crates 中使用(7 直接使用)

MIT/Apache

13KB
303

Rust 对 C 的 va_list 类型的实现

概述

此 crate 提供了一个与 C 的 va_list 类型二进制兼容的 Rust VaList 类型。它旨在允许 Rust 代码提供可变参数函数的复杂逻辑。

示例

extern crate va_list;
use va_list::VaList;

extern "C" print_ints_va(count: u32, mut args: VaList)
{
	for i in (0 .. count) {
		println!("{}: {}", i, args.get::<i32>());
	}
}

状态

  • x86-64 linux/ELF ABI(即 System-V): 已在野外测试,表现相对良好
  • x86 linux/ELF ABI(sys-v): 仅进行单元测试

许可

许可如下

任选其一。

贡献

除非您明确表示,否则根据 Apache-2.0 许可证定义的,您有意提交的任何贡献,都应按上述方式双重许可,不附加任何额外条款或条件。

无运行时依赖