From 65ce116998050a5c9e9022282d2ebf63dc65f174 Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Sat, 30 Dec 2023 15:52:48 -0500 Subject: [PATCH] Implement inline babel call. --- src/wasm/inline_babel_call.rs | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/src/wasm/inline_babel_call.rs b/src/wasm/inline_babel_call.rs index 036efdb..d038c38 100644 --- a/src/wasm/inline_babel_call.rs +++ b/src/wasm/inline_babel_call.rs @@ -4,15 +4,19 @@ 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::InlineBabelCall; use crate::wasm::to_wasm::ToWasmStandardProperties; #[derive(Debug, Serialize, Deserialize)] pub struct WasmInlineBabelCall { - #[serde(flatten)] - pub(crate) additional_properties: AdditionalProperties, + pub(crate) call: String, + #[serde(rename = "inside-header")] + pub(crate) inside_header: Option, + pub(crate) arguments: Option, + #[serde(rename = "end-header")] + pub(crate) end_header: Option, + pub(crate) value: String, } to_wasm!( @@ -21,12 +25,16 @@ to_wasm!( original, wasm_context, { WasmAstNode::InlineBabelCall(original) }, - { "TODO".into() }, + { "inline-babel-call".into() }, { Ok(( Vec::new(), WasmInlineBabelCall { - additional_properties: AdditionalProperties::default(), + call: original.call.to_owned(), + inside_header: original.inside_header.map(|s| s.to_owned()), + arguments: original.arguments.map(|s| s.to_owned()), + end_header: original.end_header.map(|s| s.to_owned()), + value: original.value.to_owned(), }, )) }