qlty_analysis/workspace_entries/
target_mode.rs1use crate::git::DiffMode;
2
3#[derive(Debug, Clone, PartialEq, Eq)]
4pub enum TargetMode {
5 All,
6 Sample(usize),
7 Paths(usize),
8 UpstreamDiff(String),
9 HeadDiff,
10}
11
12impl Default for TargetMode {
13 fn default() -> Self {
14 TargetMode::All
15 }
16}
17
18impl TargetMode {
19 pub fn diff_mode(&self) -> DiffMode {
20 match self {
21 TargetMode::UpstreamDiff(upstream) => DiffMode::UpstreamToWorkdir(upstream.to_string()),
22 TargetMode::HeadDiff => DiffMode::HeadToWorkdir,
23 _ => panic!("diff_mode() called on {:?}", self),
24 }
25 }
26}