(script_name: &str,
extern_crates: &[CrateImport],
project_dir: P)
| 69 | } |
| 70 | |
| 71 | fn create_toml<P: AsRef<Path>>(script_name: &str, |
| 72 | extern_crates: &[CrateImport], |
| 73 | project_dir: P) |
| 74 | -> Result<()> { |
| 75 | let project_dir = project_dir.as_ref(); |
| 76 | let project_name = script_name.replace('.', "_"); |
| 77 | let mut toml = format!("[package] |
| 78 | name = \"{}\" |
| 79 | version = \"0.0.0\" |
| 80 | [[bin]] |
| 81 | name = \"bin\" |
| 82 | [dependencies] |
| 83 | ", |
| 84 | project_name); |
| 85 | for extern_crate in extern_crates { |
| 86 | toml.push_str(&extern_crate.to_cargo_toml_format()); |
| 87 | toml.push('\n'); |
| 88 | } |
| 89 | let mut toml_f = |
| 90 | fs::File::create(project_dir.join("Cargo.toml")).chain_err(|| "Unable to create Cargo.toml")?; |
| 91 | toml_f.write_all(toml.as_bytes()).chain_err(|| "Unable to write to Cargo.toml")?; |
| 92 | Ok(()) |
| 93 | } |
| 94 | |
| 95 | fn format_code(extern_crates: &[CrateImport], code: &str) -> String { |
| 96 | let mut output_code = String::new(); |
no test coverage detected