}
}
- #[derive(Default, Debug)]
+ #[derive(Debug)]
struct Target<'a> {
- format: Option<(&'a SetFormat, Option<TargetType>)>,
+ format: (&'a SetFormat, Option<TargetType>),
}
impl<'a> Target<'a> {
fn decode(
match self {
Self {
- format: Some((_, Some(TargetType::MajorTicks))),
+ format: (_, Some(TargetType::MajorTicks)),
..
} if !wheres.is_empty() => {
// Formatting for individual row or column labels.
{
Style::apply_to_value(
category.name_mut(),
- self.format.map(|(sf, _)| sf),
+ Some(&self.format.0),
None,
None,
&look.areas[Area::Labels(axis)],
}
}
Self {
- format: Some((_, Some(TargetType::Labeling))),
+ format: (_, Some(TargetType::Labeling)),
..
} => {
// Formatting for individual cells or groups of them
if !skip {
Style::apply_to_value(
value,
- self.format.map(|(sf, _)| sf),
+ Some(&self.format.0),
None,
None,
&look.areas[Area::Data(RowParity::Even)],
}
}
}
+ //let mut targets = scp.sets.iter().filter_map(|set| set.as_set_format());
let mut targets = Vec::new();
for set in &scp.sets {
match set {
- Set::SetStyle(_) => (),
Set::SetFormat(sf) => {
let target_type = TargetType::from_id(&sf.target, graph, &major_ticks);
targets.push(Target {
- format: Some((sf, target_type)),
+ format: (sf, target_type),
});
}
- Set::SetFrameStyle(_) => (),
- Set::SetMetaData(_) => (),
+ Set::Other => (),
}
}
}
(None, true) => {
for target in &targets {
- if target.format.is_some_and(|(_sf, target_type)| {
- target_type == Some(TargetType::Labeling)
- }) {
+ if target.format.1 == Some(TargetType::Labeling) {
for value in data.values_mut() {
Style::apply_to_value(
value,
- target.format.map(|(sf, _target_type)| sf),
+ Some(target.format.0),
None,
None,
&look.areas[Area::Data(RowParity::Even)],
#[derive(Deserialize, Debug)]
#[serde(rename_all = "camelCase")]
enum Set {
- SetStyle(SetStyle),
- SetFrameStyle(SetFrameStyle),
SetFormat(SetFormat),
- SetMetaData(SetMetaData),
+ #[serde(other)]
+ Other,
+}
+
+impl Set {
+ fn as_set_format(&self) -> Option<&SetFormat> {
+ match self {
+ Set::SetFormat(set_format) => Some(set_format),
+ Set::Other => None,
+ }
+ }
}
#[derive(Deserialize, Debug)]