finemark_ast/elements/
inline.rs1use crate::{Element, Parameters, Span};
2use serde::Serialize;
3
4#[derive(Debug, Clone, Serialize)]
5pub struct TextElement<'i> {
6 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
7 pub span: Span,
8 pub value: &'i str,
9}
10
11#[derive(Debug, Clone, Serialize)]
12pub struct CommentElement<'i> {
13 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
14 pub span: Span,
15 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
16 pub body_open_span: Option<Span>,
17 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
18 pub body_close_span: Option<Span>,
19 pub value: &'i str,
20}
21
22#[derive(Debug, Clone, Serialize)]
23pub struct SoftBreakElement {
24 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
25 pub span: Span,
26}
27
28#[derive(Debug, Clone, Serialize)]
29pub struct HardBreakElement {
30 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
31 pub span: Span,
32}
33
34#[derive(Debug, Clone, Serialize)]
35pub struct EscapeElement<'i> {
36 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
37 pub span: Span,
38 pub value: &'i str,
39}
40
41#[derive(Debug, Clone, Serialize)]
42pub struct ErrorElement<'i> {
43 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
44 pub span: Span,
45 pub value: &'i str,
46}
47
48#[derive(Debug, Clone, Serialize)]
49pub struct LinkElement<'i> {
50 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
51 pub span: Span,
52 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
53 pub body_open_span: Option<Span>,
54 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
55 pub body_close_span: Option<Span>,
56 pub parameters: Parameters<'i>,
57 pub children: Vec<Element<'i>>,
58}
59
60#[derive(Debug, Clone, Serialize)]
61pub struct InlineCodeElement<'i> {
62 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
63 pub span: Span,
64 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
65 pub open_span: Span,
66 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
67 pub close_span: Span,
68 pub value: &'i str,
69}
70
71#[derive(Debug, Clone, Serialize)]
72pub struct TeXElement<'i> {
73 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
74 pub span: Span,
75 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
76 pub open_span: Span,
77 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
78 pub close_span: Span,
79 pub is_block: bool,
80 pub value: &'i str,
81}
82
83#[derive(Debug, Clone, Serialize)]
84pub struct TextStyleElement<'i> {
85 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
86 pub span: Span,
87 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
88 pub open_span: Span,
89 #[cfg_attr(not(feature = "include-locations"), serde(skip_serializing))]
90 pub close_span: Span,
91 pub children: Vec<Element<'i>>,
92}