Skip to content

Commit 37836e6

Browse files
committed
Simplify default_readme_from_package_root
1 parent 54b0432 commit 37836e6

File tree

1 file changed

+5
-17
lines changed

1 file changed

+5
-17
lines changed

src/cargo/util/toml/mod.rs

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1515,7 +1515,7 @@ impl TomlManifest {
15151515
}
15161516

15171517
/// Returns the name of the README file for a `TomlProject`.
1518-
fn readme_for_project(package_root: &Path, project: &Box<TomlProject>) -> Option<String> {
1518+
fn readme_for_project(package_root: &Path, project: &TomlProject) -> Option<String> {
15191519
match &project.readme {
15201520
None => default_readme_from_package_root(package_root),
15211521
Some(value) => match value.as_str() {
@@ -1530,25 +1530,13 @@ const DEFAULT_README_FILES: [&str; 3] = ["README.md", "README.txt", "README"];
15301530
/// Checks if a file with any of the default README file names exists in the package root.
15311531
/// If so, returns a `String` representing that name.
15321532
fn default_readme_from_package_root(package_root: &Path) -> Option<String> {
1533-
_default_readme_from_package_root(package_root).ok()
1534-
}
1535-
1536-
fn _default_readme_from_package_root(package_root: &Path) -> CargoResult<String> {
1537-
for entry in package_root.read_dir()? {
1538-
let entry = entry?;
1539-
1540-
let fname = entry.file_name();
1541-
1542-
if entry.metadata()?.is_file() && DEFAULT_README_FILES.contains(&fname.to_str().unwrap()) {
1543-
return Ok(fname
1544-
.into_string()
1545-
.map_err(|_| anyhow!("Could not convert the README's file name into a String"))?);
1533+
for &readme_filename in DEFAULT_README_FILES.iter() {
1534+
if package_root.join(readme_filename).is_file() {
1535+
return Some(readme_filename.to_string());
15461536
}
15471537
}
15481538

1549-
Err(anyhow!(
1550-
"No files with the default README file names found in the package root."
1551-
))
1539+
None
15521540
}
15531541

15541542
/// Checks a list of build targets, and ensures the target names are unique within a vector.

0 commit comments

Comments
 (0)