diff options
| author | Philipp Hansch <dev@phansch.net> | 2020-01-31 07:30:44 +0100 |
|---|---|---|
| committer | Philipp Hansch <dev@phansch.net> | 2020-01-31 07:30:44 +0100 |
| commit | 3f2532b904f2ed38e69073d12a07c6aa32672197 (patch) | |
| tree | 62bd51a3097b1c35414dbbd9b43a6f4cbb3bf245 /clippy_dev | |
| parent | 3036a2c30e870f589a6176f25682b41b9b8fb4f8 (diff) | |
| download | rust-3f2532b904f2ed38e69073d12a07c6aa32672197.tar.gz rust-3f2532b904f2ed38e69073d12a07c6aa32672197.zip | |
Replace one more copy-pasted clippy_project_root fn
Diffstat (limited to 'clippy_dev')
| -rw-r--r-- | clippy_dev/src/new_lint.rs | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/clippy_dev/src/new_lint.rs b/clippy_dev/src/new_lint.rs index 76b8dd60d43..9d1f19f954b 100644 --- a/clippy_dev/src/new_lint.rs +++ b/clippy_dev/src/new_lint.rs @@ -1,8 +1,9 @@ +use clippy_dev::clippy_project_root; use std::fs::{File, OpenOptions}; use std::io; use std::io::prelude::*; use std::io::ErrorKind; -use std::path::{Path, PathBuf}; +use std::path::Path; pub fn create(pass: Option<&str>, lint_name: Option<&str>, category: Option<&str>) -> Result<(), io::Error> { let pass = pass.expect("`pass` argument is validated by clap"); @@ -55,7 +56,7 @@ pub fn create(pass: Option<&str>, lint_name: Option<&str>, category: Option<&str } fn open_files(lint_name: &str) -> Result<(File, File), io::Error> { - let project_root = project_root()?; + let project_root = clippy_project_root(); let test_file_path = project_root.join("tests").join("ui").join(format!("{}.rs", lint_name)); let lint_file_path = project_root @@ -82,24 +83,6 @@ fn open_files(lint_name: &str) -> Result<(File, File), io::Error> { Ok((test_file, lint_file)) } -fn project_root() -> Result<PathBuf, io::Error> { - let current_dir = std::env::current_dir()?; - for path in current_dir.ancestors() { - let result = std::fs::read_to_string(path.join("Cargo.toml")); - if let Err(err) = &result { - if err.kind() == io::ErrorKind::NotFound { - continue; - } - } - - let content = result?; - if content.contains("[package]\nname = \"clippy\"") { - return Ok(path.to_path_buf()); - } - } - Err(io::Error::new(ErrorKind::Other, "Unable to find project root")) -} - fn to_camel_case(name: &str) -> String { name.split('_') .map(|s| { |
