1 个不稳定版本
0.1.0 | 2020年9月17日 |
---|
#18 in #variadic
在 drogue-tls-sys 中使用
18KB
441 行代码(不包括注释)
drogue-ffi-compat
一个小型实用库,包括 C 兼容代码,简化在非 libc 平台(如 Cortex-M)上的 FFI 集成。
变长参数
通过一个 VaList
结构提供对 C 风格变长参数函数的支持,它知道如何像 C 一样操作内存,以便剥离变长参数列表。它不支持直接实现变长参数函数。为了与真正的变长参数函数一起使用,需要一个真正的 C 兼容层来构造 va_list
,使用常规的 va_start(...)
和 va_end(...)
宏。
*printf(...)
此crate导出两个与printf兼容的函数
snprintf()
,由真正的 C 实现vsnprintf()
,由 Rust 实现。
此外,还略微支持一组 C 风格的 printf 格式说明符。
- '%c'
- '%s'
- '%d'
- '%x' 和 '%X'
宽度修饰符和精度修饰符被消耗,但当前不尊重。目标是支持这些函数足够好,以供简单集成使用。
依赖项
~0.7–1MB
~19K SLoC