diff options
| author | varkor <github@varkor.com> | 2019-10-08 23:09:36 +0100 |
|---|---|---|
| committer | varkor <github@varkor.com> | 2019-12-06 12:23:23 +0000 |
| commit | 50985b012a6d14a1bee8ddf8d086d1741858dd3f (patch) | |
| tree | 05552096e531ee5e338a6de1d2acfec982dcea74 | |
| parent | e3a8ea4e18a50da60036d2731768a9cb78c90f5a (diff) | |
| download | rust-50985b012a6d14a1bee8ddf8d086d1741858dd3f.tar.gz rust-50985b012a6d14a1bee8ddf8d086d1741858dd3f.zip | |
Use `to_option_with` in several places
| -rw-r--r-- | src/librustc_codegen_ssa/back/rpath.rs | 2 | ||||
| -rw-r--r-- | src/librustc_codegen_ssa/lib.rs | 11 | ||||
| -rw-r--r-- | src/librustc_interface/passes.rs | 2 | ||||
| -rw-r--r-- | src/librustc_session/session.rs | 2 |
4 files changed, 10 insertions, 7 deletions
diff --git a/src/librustc_codegen_ssa/back/rpath.rs b/src/librustc_codegen_ssa/back/rpath.rs index b932a202093..c61f16da264 100644 --- a/src/librustc_codegen_ssa/back/rpath.rs +++ b/src/librustc_codegen_ssa/back/rpath.rs @@ -119,7 +119,7 @@ fn path_relative_from(path: &Path, base: &Path) -> Option<PathBuf> { use std::path::Component; if path.is_absolute() != base.is_absolute() { - path.is_absolute().to_option(PathBuf::from(path)) + path.is_absolute().to_option_with(|| PathBuf::from(path)) } else { let mut ita = path.components(); let mut itb = base.components(); diff --git a/src/librustc_codegen_ssa/lib.rs b/src/librustc_codegen_ssa/lib.rs index ebddff2af6e..2c2150e01a3 100644 --- a/src/librustc_codegen_ssa/lib.rs +++ b/src/librustc_codegen_ssa/lib.rs @@ -69,11 +69,14 @@ impl<M> ModuleCodegen<M> { emit_bc: bool, emit_bc_compressed: bool, outputs: &OutputFilenames) -> CompiledModule { - let object = emit_obj.to_option(outputs.temp_path(OutputType::Object, Some(&self.name))); - let bytecode = emit_bc.to_option(outputs.temp_path(OutputType::Bitcode, Some(&self.name))); - let bytecode_compressed = emit_bc_compressed.to_option( + let object = emit_obj + .to_option_with(|| outputs.temp_path(OutputType::Object, Some(&self.name))); + let bytecode = emit_bc + .to_option_with(|| outputs.temp_path(OutputType::Bitcode, Some(&self.name))); + let bytecode_compressed = emit_bc_compressed.to_option_with(|| { outputs.temp_path(OutputType::Bitcode, Some(&self.name)) - .with_extension(RLIB_BYTECODE_EXTENSION)); + .with_extension(RLIB_BYTECODE_EXTENSION) + }); CompiledModule { name: self.name.clone(), diff --git a/src/librustc_interface/passes.rs b/src/librustc_interface/passes.rs index 6be41a23735..753d7b02cca 100644 --- a/src/librustc_interface/passes.rs +++ b/src/librustc_interface/passes.rs @@ -547,7 +547,7 @@ fn output_contains_path(output_paths: &[PathBuf], input_path: &PathBuf) -> bool } fn output_conflicts_with_dir(output_paths: &[PathBuf]) -> Option<PathBuf> { - let check = |output_path: &PathBuf| output_path.is_dir().to_option(output_path.clone()); + let check = |output_path: &PathBuf| output_path.is_dir().to_option_with(|| output_path.clone()); check_output(output_paths, check) } diff --git a/src/librustc_session/session.rs b/src/librustc_session/session.rs index 5f992710bec..9cdda56d2a2 100644 --- a/src/librustc_session/session.rs +++ b/src/librustc_session/session.rs @@ -752,7 +752,7 @@ impl Session { } pub fn incr_comp_session_dir_opt(&self) -> Option<cell::Ref<'_, PathBuf>> { - self.opts.incremental.is_some().to_option(self.incr_comp_session_dir()) + self.opts.incremental.is_some().to_option_with(|| self.incr_comp_session_dir()) } pub fn print_perf_stats(&self) { |
