From a4414369cea6ceaea5def84bcdda15494f4a6520 Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Fri, 29 Dec 2023 21:04:31 -0500 Subject: [PATCH] Remove unnecessary additional properties in the already-implemented types. --- src/wasm/bold.rs | 13 ++---------- src/wasm/headline.rs | 2 +- src/wasm/plain_text.rs | 15 ++------------ src/wasm/planning.rs | 39 ++++++++++++++++++++++++++++++----- src/wasm/section.rs | 13 ++---------- src/wasm/statistics_cookie.rs | 4 ---- 6 files changed, 41 insertions(+), 45 deletions(-) diff --git a/src/wasm/bold.rs b/src/wasm/bold.rs index 09cd670..9bd4a6b 100644 --- a/src/wasm/bold.rs +++ b/src/wasm/bold.rs @@ -4,16 +4,12 @@ use serde::Serialize; use super::ast_node::WasmAstNode; use super::macros::to_wasm; use super::to_wasm::ToWasm; -use super::AdditionalProperties; use crate::compare::ElispFact; use crate::types::Bold; use crate::wasm::to_wasm::ToWasmStandardProperties; #[derive(Debug, Serialize, Deserialize)] -pub struct WasmBold { - #[serde(flatten)] - pub(crate) additional_properties: AdditionalProperties, -} +pub struct WasmBold {} to_wasm!( WasmBold, @@ -33,11 +29,6 @@ to_wasm!( }) .collect::, _>>()?; - Ok(( - children, - WasmBold { - additional_properties: AdditionalProperties::default(), - }, - )) + Ok((children, WasmBold {})) } ); diff --git a/src/wasm/headline.rs b/src/wasm/headline.rs index 4e01435..2c999aa 100644 --- a/src/wasm/headline.rs +++ b/src/wasm/headline.rs @@ -129,7 +129,7 @@ to_wasm!( }) .map_or(Ok(None), |r| r.map(Some))? .map(|child| Box::new(child)), - pre_blank: 0, + pre_blank: 0, // TODO: Should this be a no-op? }, )) } diff --git a/src/wasm/plain_text.rs b/src/wasm/plain_text.rs index 974cb16..395b410 100644 --- a/src/wasm/plain_text.rs +++ b/src/wasm/plain_text.rs @@ -4,16 +4,12 @@ use serde::Serialize; use super::ast_node::WasmAstNode; use super::macros::to_wasm; use super::to_wasm::ToWasm; -use super::AdditionalProperties; use crate::compare::ElispFact; use crate::types::PlainText; use crate::wasm::to_wasm::ToWasmStandardProperties; #[derive(Debug, Serialize, Deserialize)] -pub struct WasmPlainText { - #[serde(flatten)] - pub(crate) additional_properties: AdditionalProperties, -} +pub struct WasmPlainText {} to_wasm!( WasmPlainText, @@ -22,12 +18,5 @@ to_wasm!( wasm_context, { WasmAstNode::PlainText(original) }, { "plain-text".into() }, - { - Ok(( - Vec::new(), - WasmPlainText { - additional_properties: AdditionalProperties::default(), - }, - )) - } + { Ok((Vec::new(), WasmPlainText {},)) } ); diff --git a/src/wasm/planning.rs b/src/wasm/planning.rs index 36e8537..03c5904 100644 --- a/src/wasm/planning.rs +++ b/src/wasm/planning.rs @@ -4,15 +4,15 @@ use serde::Serialize; use super::ast_node::WasmAstNode; use super::macros::to_wasm; use super::to_wasm::ToWasm; -use super::AdditionalProperties; use crate::compare::ElispFact; use crate::types::Planning; use crate::wasm::to_wasm::ToWasmStandardProperties; #[derive(Debug, Serialize, Deserialize)] pub struct WasmPlanning { - #[serde(flatten)] - pub(crate) additional_properties: AdditionalProperties, + pub(crate) scheduled: Option>, + pub(crate) deadline: Option>, + pub(crate) closed: Option>, } to_wasm!( @@ -21,12 +21,41 @@ to_wasm!( original, wasm_context, { WasmAstNode::Planning(original) }, - { "TODO".into() }, + { "planning".into() }, { Ok(( Vec::new(), WasmPlanning { - additional_properties: AdditionalProperties::default(), + scheduled: original + .scheduled + .as_ref() + .map(|child| { + child + .to_wasm(wasm_context.clone()) + .map(Into::::into) + }) + .map_or(Ok(None), |r| r.map(Some))? + .map(|child| Box::new(child)), + deadline: original + .deadline + .as_ref() + .map(|child| { + child + .to_wasm(wasm_context.clone()) + .map(Into::::into) + }) + .map_or(Ok(None), |r| r.map(Some))? + .map(|child| Box::new(child)), + closed: original + .closed + .as_ref() + .map(|child| { + child + .to_wasm(wasm_context.clone()) + .map(Into::::into) + }) + .map_or(Ok(None), |r| r.map(Some))? + .map(|child| Box::new(child)), }, )) } diff --git a/src/wasm/section.rs b/src/wasm/section.rs index f267723..c4a7bd1 100644 --- a/src/wasm/section.rs +++ b/src/wasm/section.rs @@ -4,16 +4,12 @@ use serde::Serialize; use super::ast_node::WasmAstNode; use super::macros::to_wasm; use super::to_wasm::ToWasm; -use super::AdditionalProperties; use crate::compare::ElispFact; use crate::types::Section; use crate::wasm::to_wasm::ToWasmStandardProperties; #[derive(Debug, Serialize, Deserialize)] -pub struct WasmSection { - #[serde(flatten)] - pub(crate) additional_properties: AdditionalProperties, -} +pub struct WasmSection {} to_wasm!( WasmSection, @@ -33,11 +29,6 @@ to_wasm!( }) .collect::, _>>()?; - Ok(( - children, - WasmSection { - additional_properties: AdditionalProperties::default(), - }, - )) + Ok((children, WasmSection {})) } ); diff --git a/src/wasm/statistics_cookie.rs b/src/wasm/statistics_cookie.rs index 281f7e2..9e9fb8d 100644 --- a/src/wasm/statistics_cookie.rs +++ b/src/wasm/statistics_cookie.rs @@ -4,15 +4,12 @@ use serde::Serialize; use super::ast_node::WasmAstNode; use super::macros::to_wasm; use super::to_wasm::ToWasm; -use super::AdditionalProperties; use crate::compare::ElispFact; use crate::types::StatisticsCookie; use crate::wasm::to_wasm::ToWasmStandardProperties; #[derive(Debug, Serialize, Deserialize)] pub struct WasmStatisticsCookie { - #[serde(flatten)] - pub(crate) additional_properties: AdditionalProperties, pub(crate) value: String, } @@ -27,7 +24,6 @@ to_wasm!( Ok(( Vec::new(), WasmStatisticsCookie { - additional_properties: AdditionalProperties::default(), value: original.value.to_owned(), }, ))