Crates.io | cargo-toml-builder |
lib.rs | cargo-toml-builder |
version | 0.3.0 |
source | src |
created_at | 2018-04-02 20:19:30.022457 |
updated_at | 2019-05-02 16:05:53.73888 |
description | A builder for generating Cargo.toml files |
homepage | |
repository | https://gitlab.com/pwoolcoc/cargo-toml-builder |
max_upload_size | |
id | 58697 |
size | 187,266 |
Programmatically generate Cargo.toml files
Add the following to your Cargo.toml
file:
[dependencies]
cargo-toml-builder = "0.3"
and the following to your crate root:
extern crate cargo_toml_builder;
extern crate cargo_toml_builder;
use cargo_toml_builder::prelude::*;
let cargo_toml = CargoToml::builder()
.name("my-project")
.version("1.0.0")
.author("Alice Smith <asmith@example.com>")
.dependency("env_logger".version("0.5.6"))
.feature(Feature::new("nightly").dependency("clippy"))
.build()?;
assert_eq!(cargo_toml.to_string(), r#"
[package]
name = "my-project"
version = "1.0.0"
authors = ["Alice Smith <asmith@example.com>"]
[dependencies]
env_logger = "0.5.6"
clippy = {"version" = "*", optional = true}
[features]
nightly = ["clippy"]
"#);