#janet #embedding

sys no-std evil-janet

对 Janet 语言 C API 的低级绑定

38 个稳定版本

1.33.0 2024年2月3日
1.32.1 2023年12月9日
1.30.1 2023年9月9日
1.29.1 2023年7月13日
1.11.0 2020年7月19日

#115FFI

每月 36 次下载
用于 3 Crates(2 个直接使用)

自定义许可证

3MB
46K SLoC

C 46K SLoC // 0.1% comments Rust 120 SLoC // 0.1% comments

evil-janet

这是一个提供对 janet C API 的低级绑定的 Rust Crates。

版本控制方案

该软件包的主版本号和次要版本号遵循捆绑头文件兼容的 Janet 发布版本。补丁版本可能与 Janet 发布版本匹配,也可能不匹配。

功能标志

  • link-amalg: 该 Crates 将链接编译的 Janet 汇合
  • link-system: 从系统链接到 libjanet 库(通常不推荐)
  • system: 使用系统中的 Janet 头文件
  • debug-symbols: 编译时包含最大调试符号

如果启用了功能 link-amalg,则 Crates 将链接编译的 Janet 汇合,否则此 Crates 仅包含头文件,这对于构建独立的 Janet 模块很有用。

环境变量

这些变量仅在使用功能 link-amalg

此 Crates 使用环境变量来覆盖一些 Janet 定义。

  • JANET_RECURSION_GUARD=<整数>
  • JANET_MAX_PROTO_DEPTH=<整数>
  • JANET_MAX_MACRO_EXPAND=<整数>
  • JANET_STACK_MAX=<整数>

安全性

此 Crates 不做任何内存安全的尝试。它是从 Rust 使用 Janet API 所需的最小内容。对于更高级的 Crates,您可以查找 JanetRS

依赖关系

~0–2MB
~41K SLoC