(&self)
| 626 | let target_name = config |
| 627 | .as_ref() |
| 628 | .and_then(|config| self.config_root(config)) |
| 629 | .map(|path| path.to_string()) |
| 630 | .unwrap_or_else(|| { |
| 631 | self.active_path() |
| 632 | .map(|path| path.to_string()) |
| 633 | .unwrap_or_else(|| "active document".to_owned()) |
| 634 | }); |
| 635 | self.terminal |
| 636 | .start("Build", format!("fsc build {target_name}")); |
| 637 | self.terminal_open = self.settings.open_terminal_on_run; |
| 638 | |
| 639 | self.refresh_build_target(); |
| 640 | if self.visible_layers().is_some() { |
| 641 | self.refresh_stage_cache(); |
| 642 | } else { |
| 643 | self.stage_cache = None; |
| 644 | } |
| 645 | let produced_layer = if self.visible_layers().is_some() { |
| 646 | self.stage_cache.as_ref().map(|cache| { |
| 647 | let result = &cache.result; |
| 648 | if result.binary.is_some() { |
| 649 | Layer::Elf |
| 650 | } else if result.asm.is_some() { |
| 651 | Layer::Asm |
| 652 | } else if result.ir.is_some() { |
| 653 | Layer::Ir |
| 654 | } else { |
| 655 | Layer::Hll |
| 656 | } |
| 657 | }) |
| 658 | } else { |
| 659 | None |
no test coverage detected