use serde::Serialize; use super::render_context::RenderContext; use crate::error::CustomError; use crate::intermediate::IStrikeThrough; use super::macros::render; use super::RenderObject; #[derive(Debug, Serialize)] #[serde(tag = "type")] #[serde(rename = "strike_through")] pub(crate) struct RenderStrikeThrough { children: Vec<RenderObject>, post_blank: organic::types::PostBlank, } render!( RenderStrikeThrough, IStrikeThrough, original, render_context, { let children = { let mut ret = Vec::new(); for obj in original.children.iter() { ret.push(RenderObject::new(render_context.clone(), obj)?); } ret }; Ok(RenderStrikeThrough { children, post_blank: original.post_blank, }) } );