Skip to content

Commit f736d45

Browse files
refactor: move empty_modules to a functional approach
1 parent 3a2285b commit f736d45

File tree

1 file changed

+10
-14
lines changed

1 file changed

+10
-14
lines changed

compiler-cli/src/publish.rs

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -382,20 +382,16 @@ fn do_build_hex_tarball(paths: &ProjectPaths, config: &mut PackageConfig) -> Res
382382
});
383383
}
384384

385-
let mut empty_modules = vec![];
386-
387-
for module in built.root_package.modules.iter() {
388-
let public_definitions = module
389-
.ast
390-
.definitions
391-
.iter()
392-
.filter(|def| def.is_public())
393-
.count();
394-
395-
if public_definitions == 0 {
396-
empty_modules.push(module.name.clone());
397-
}
398-
}
385+
let empty_modules: Vec<_> = built.root_package.modules
386+
.iter()
387+
.filter(|module| {
388+
module.ast.definitions
389+
.iter()
390+
.filter(|def| def.is_public())
391+
.count() == 0
392+
})
393+
.map(|module| module.name.clone())
394+
.collect();
399395

400396
if !empty_modules.is_empty() {
401397
return Err(Error::CannotPublishEmptyModules {

0 commit comments

Comments
 (0)