6 个版本

0.2.0 2022年9月19日
0.1.3 2020年5月9日
0.1.1 2019年3月15日
0.1.0 2018年11月10日
0.0.0 2017年10月31日

#403 in Rust 模式

Download history 9316/week @ 2024-05-01 16905/week @ 2024-05-08 14880/week @ 2024-05-15 12731/week @ 2024-05-22 18220/week @ 2024-05-29 15322/week @ 2024-06-05 13180/week @ 2024-06-12 14696/week @ 2024-06-19 15314/week @ 2024-06-26 18973/week @ 2024-07-03 11935/week @ 2024-07-10 9221/week @ 2024-07-17 16582/week @ 2024-07-24 13742/week @ 2024-07-31 13150/week @ 2024-08-07 16203/week @ 2024-08-14

62,229 每月下载量
用于 51 个 crate (35 个直接使用)

MIT 许可协议

68KB
2K SLoC

Codegen

提供用于生成 Rust 代码的 builder API。

有关此 crate 的更多信息,请参阅 crate 文档

安装

要使用 codegen,首先将以下内容添加到您的 Cargo.toml

[dependencies]
codegen = "0.2.0"

然后,将以下内容添加到您的 crate

extern crate codegen;

使用方法

  1. 创建一个 Scope 实例。
  2. 使用 builder API 将元素添加到作用域中。
  3. 调用 Scope::to_string() 获取生成的代码。

例如

use codegen::Scope;

let mut scope = Scope::new();

scope.new_struct("Foo")
    .derive("Debug")
    .field("one", "usize")
    .field("two", "String");

println!("{}", scope.to_string());

非目标

codegen 不会尝试执行超出基本格式化的操作。要改进格式化,可以将生成的代码传递给 rustfmt

许可协议

此项目采用 MIT 许可协议

贡献

除非您明确声明,否则您提交给 codegen 的任何有意贡献都应按 MIT 许可,不附加任何额外条款或条件。

依赖关系

~1MB
~16K SLoC