Provides an builder API to assist in generating Rust code.
More information about this crate can be found in the crate documentation
To use codegen-rs
, first add this to your Cargo.toml
:
[dependencies]
codegen-rs = "0.1.4"
Next, add this to your crate:
extern crate codegen_rs;
- Create a
Scope
instance. - Use the builder API to add elements to the scope.
- Call
Scope::to_string()
to get the generated code.
For example:
use codegen_rs::Scope;
let mut scope = Scope::new();
scope.new_struct("Foo")
.derive("Debug")
.field("one", "usize")
.field("two", "String");
println!("{}", scope.to_string());
codegen-rs
will not attempt to perform anything beyond basic formatting. For improved formatting, the generated code can be passed to rustfmt
.
This project is licensed under the MIT license.
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in codegen-rs
by you, shall be licensed as MIT, without any
additional terms or conditions.