Need help with codegen?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

carllerche
141 Stars 35 Forks MIT License 42 Commits 7 Opened issues

Description

A Rust library providing a builder API to generate Rust code.

Services available

!
?

Need anything else?

Contributors list

# 368,131
Rust
kde
Homebre...
gzip
14 commits
# 15,554
Rust
rust-la...
tokio
Kuberne...
7 commits
# 16,515
Rust
dynamic...
rust-la...
diagnos...
2 commits
# 220,609
Rust
spotify
spotify...
Haskell
2 commits
# 23,590
Rust
dynamic...
rust-la...
dns-cli...
2 commits
# 211,913
Rust
Shell
rust-la...
webasse...
2 commits
# 13,781
Shell
JavaScr...
iphone
React N...
1 commit

Codegen

Provides an builder API to assist in generating Rust code.

Build Status

More information about this crate can be found in the crate documentation

Installation

To use

codegen
, first add this to your
Cargo.toml
:
[dependencies]
codegen = "0.1.3"

Next, add this to your crate:

extern crate codegen;

Usage

1) Create a

Scope
instance. 2) Use the builder API to add elements to the scope. 3) Call
Scope::to_string()
to get the generated code.

For example:

use codegen::Scope;

let mut scope = Scope::new();

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

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

Non-goals

codegen
will not attempt to perform anything beyond basic formatting. For improved formatting, the generated code can be passed to
rustfmt
.

License

This project is licensed under the MIT license.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in

codegen
by you, shall be licensed as MIT, without any additional terms or conditions.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.