1 | /// Origin of the argument's value |
---|---|
2 | #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)] |
3 | #[non_exhaustive] |
4 | pub enum ValueSource { |
5 | /// Value came [`Arg::default_value`][crate::Arg::default_value] |
6 | DefaultValue, |
7 | /// Value came [`Arg::env`][crate::Arg::env] |
8 | EnvVariable, |
9 | /// Value was passed in on the command-line |
10 | CommandLine, |
11 | } |
12 | |
13 | impl ValueSource { |
14 | pub(crate) fn is_explicit(self) -> bool { |
15 | self != Self::DefaultValue |
16 | } |
17 | } |
18 |