cli: make policies optional
/// Policy for which metadata should be updated
#[arg(long)]
- file_update_policy: FileUpdatePolicy,
+ file_update_policy: Option<FileUpdatePolicy>,
/// Policy for how changes should be made to the specified tags.
#[arg(long)]
- tag_update_policy: TagUpdatePolicy,
+ tag_update_policy: Option<TagUpdatePolicy>,
/// Print information about which tags are written
#[arg(short = 'v', long)]
fn tag_update_policy(&self) -> TagUpdatePolicy {
match &self.cli {
- Some(c) => c.tag_update_policy.clone(),
+ Some(c) => match &c.tag_update_policy {
+ Some(p) => p.clone(),
+ _ => self.tag_update_policy.clone(),
+ },
_ => self.tag_update_policy.clone(),
}
}
fn file_update_policy(&self) -> FileUpdatePolicy {
match &self.cli {
- Some(c) => c.file_update_policy.clone(),
+ Some(c) => match &c.file_update_policy {
+ Some(p) => p.clone(),
+ _ => self.file_update_policy.clone(),
+ },
_ => self.file_update_policy.clone(),
}
}