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}