Skip to main content

sevenmark_utils/
text.rs

1use sevenmark_ast::Element;
2
3/// Extract plain text content from a slice of Elements.
4/// Only extracts Text and Escape values (shallow, non-recursive).
5pub fn extract_plain_text(elements: &[Element]) -> String {
6    elements
7        .iter()
8        .filter_map(|element| match element {
9            Element::Text(text) => Some(text.value.as_str()),
10            Element::Escape(escape) => Some(escape.value.as_str()),
11            _ => None,
12        })
13        .collect::<String>()
14}