119625d8cSopenharmony_ci/// Origin of the argument's value 219625d8cSopenharmony_ci#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)] 319625d8cSopenharmony_ci#[non_exhaustive] 419625d8cSopenharmony_cipub enum ValueSource { 519625d8cSopenharmony_ci /// Value came [`Arg::default_value`][crate::Arg::default_value] 619625d8cSopenharmony_ci DefaultValue, 719625d8cSopenharmony_ci /// Value came [`Arg::env`][crate::Arg::env] 819625d8cSopenharmony_ci EnvVariable, 919625d8cSopenharmony_ci /// Value was passed in on the command-line 1019625d8cSopenharmony_ci CommandLine, 1119625d8cSopenharmony_ci} 1219625d8cSopenharmony_ci 1319625d8cSopenharmony_ciimpl ValueSource { 1419625d8cSopenharmony_ci pub(crate) fn is_explicit(self) -> bool { 1519625d8cSopenharmony_ci self != Self::DefaultValue 1619625d8cSopenharmony_ci } 1719625d8cSopenharmony_ci} 18