16个版本
1.0.0 |
|
---|---|
0.5.0-pre95 | 2023年8月13日 |
0.5.0-pre94 | 2023年7月26日 |
0.5.0-pre6 | 2023年1月8日 |
0.3.2 | 2020年11月17日 |
#74 in 模板引擎
4,650 每月下载量
在 14 个crate中使用了(b)(8个直接使用)
375KB
13K SLoC
jrsonnet
++++
++++// Github sucks: I can't center those images the normal way: https://github.com/github/markup/issues/984 // [.text-center] // // // [.text-center] // -- // // // // --
这是什么
Jsonnet 是一种数据模板语言
此Rustcrate实现了基于jsonnet库和基于它的替代jsonnet
可执行文件。更多信息请参见绑定,绑定。
安装
NixOS
jrsonnet包含在nixpkgs中,并由@CertainLach维护
[source,sh]
nix-env -iA nixpkgs.jrsonnet
MacOS
jrsonnet包含在brew中,并由@messense维护
[source,sh]
brew install jrsonnet
Windows/其他Linux发行版
您可以从发布中获取jrsonnet的最新构建版本。
从源代码构建
jrsonnet应在最新的稳定Rust版本上构建(可能是在最旧的版本上,但没有提供MSRV策略)
调试构建也可以工作,但比发布版本慢得多
[source]
cargo build --release
为什么?
这个标准已经在不同的语言中有多个实现了
- C++;
- Go;
- Scala.
- [NEW] 另一个Rust实现出现了。
此实现表明其性能优于所有现有实现。更多信息请参见benchmarks链接。
此外,我还想尝试新的语法特性,jrsonnet 实现了一些。更多信息请见链接:./docs/features.adoc[特性]
最终,用 Rust 实现一些东西总是很有趣。
绑定 [[绑定]]
Rust
Jrsonnet 使用 Rust 编写,所以只需将其作为依赖项添加即可
Python
绑定由 @messense 创建和维护
C/C++
Jrsonnet 提供了一个标准的 libjsonnet.so
共享库,应该可以作为它的直接替代品
其他
还有 WASM 绑定,Java 绑定(包括 JNI 和编译为 .class
的 WASM)正在开发中
更多信息请见链接:./bindings/[绑定]
依赖
~5.5MB
~95K SLoC