19个版本

使用旧的Rust 2015

0.9.8 2020年5月13日
0.9.7 2019年10月21日
0.9.5 2019年9月16日
0.9.1 2018年11月16日
0.6.0 2017年2月27日

1085 in 编码

Download history 2985/week @ 2024-03-14 2708/week @ 2024-03-21 2103/week @ 2024-03-28 1317/week @ 2024-04-04 1475/week @ 2024-04-11 1232/week @ 2024-04-18 1976/week @ 2024-04-25 1973/week @ 2024-05-02 1340/week @ 2024-05-09 1863/week @ 2024-05-16 1782/week @ 2024-05-23 1637/week @ 2024-05-30 1193/week @ 2024-06-06 2599/week @ 2024-06-13 1776/week @ 2024-06-20 1602/week @ 2024-06-27

每月下载量7,297

Apache-2.0 OR MIT

53KB
518

encoding_c

docs.rs Apache 2 / MIT dual-licensed

encoding_c是encoding_rs的FFI包装器。

encoding_rs::mem提供绑定

有关对encoding_rs::mem的绑定,请参阅encoding_c_mem

许可

请参阅名为COPYRIGHT的文件。

不支持异常恢复!

该包旨在用于使用panic = 'abort'编译的二进制文件,这是必需的!在FFI之间进行异常恢复是未定义行为,且此包不会尝试防止在启用异常恢复的情况下编译时进行异常恢复。

C/C++头文件

需要include/encoding_rs.hinclude/encoding_rs_statics.h用于C语言使用。

include/encoding_rs_cpp.h是基于C API、使用GSL和C++标准库构建的示例C++ API。由于C++项目通常使用自己的字符串类等,因此C++项目可能需要手动将头文件适配到它们的标准库类型替换。

有关C++包装器的说明

发行说明

0.9.8

  • 从版权声明中删除年份。

0.9.7

  • 在Cargo清单中指定一个links值。
  • 从构建脚本中生成一个include_dir变量,以便依赖此包的其他构建脚本可以依赖于它。

0.9.6

  • 修复C++头文件中的错误。

0.9.5

  • 调整编码_rs 0.8.20的文档。

0.9.4

  • 修复虚假的C头文件。

0.9.3

  • 修复虚假的C++头文件。

0.9.2

  • 包装Decoder::latin1_byte_compatible_up_to

0.9.1

  • 包装Encoding::is_single_byte()
  • 通过编码_rs 0.8.11 中引入的新功能标志。

0.9.0

  • 更新到 encoding_rs 0.8.0。

0.8.0

  • 更新到 encoding_rs 0.7.0。
  • 删除 encoding_for_name()
  • 正确处理返回 nullptrdata() 方法 gsl::span

0.7.6

  • ENCODING_RS_NON_NULL_CONST_ENCODING_PTR 重命名为 ENCODING_RS_NOT_NULL_CONST_ENCODING_PTR。 (这不是一个破坏性的变更,因为之前定义该宏会破坏构建,所以该宏无法使用。)
  • 仅对静态使用宏,而不是对返回值。

0.7.5

  • 将需要用相同表示的非空类型包裹的编码指针注释为 ENCODING_RS_NON_NULL_CONST_ENCODING_PTR

0.7.4

  • 包裹 has_pending_state()

0.7.3

  • 使用 C 预处理器定义进行编码常量声明。

0.7.2

  • 将 C 预处理器定义背后的结构类型名称参数化。
  • 由用户提供 char16_t。避免包含其头文件。

0.7.1

  • 修复在 std::slice::from_raw_parts() 中使用的指针的文档。

0.7.0

  • 在最大长度计算函数中将 None 映射到 SIZE_MAX

0.6.0

  • cheddar 生成的头文件中检查,并在 cheddar 使用的 build.rs 中注释。

0.5.0

  • encoding_c 的首次发布。(即第一个具有独立存储库的 FFI 的发布。)

依赖关系

~3MB
~118K SLoC