codegen 0.2.0

Library for generating Rust code
Documentation
# Codegen

Provides an builder API to assist in generating Rust code.

More information about this crate can be found in the [crate documentation][dox]

[dox]: https://docs.rs/codegen/0.2.0/codegen/

## Installation

To use `codegen`, first add this to your `Cargo.toml`:

```toml
[dependencies]
codegen = "0.2.0"
```

Next, add this to your crate:

```rust
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:

```rust
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](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.