summaryrefslogtreecommitdiff
path: root/src/elements/line_element.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/elements/line_element.rs')
-rw-r--r--src/elements/line_element.rs61
1 files changed, 0 insertions, 61 deletions
diff --git a/src/elements/line_element.rs b/src/elements/line_element.rs
deleted file mode 100644
index cc47b4b..0000000
--- a/src/elements/line_element.rs
+++ /dev/null
@@ -1,61 +0,0 @@
-pub enum LineElement {
- Normal(String),
- Bold(String),
- Italic(String),
- Monospace(String),
- Math(String),
- InternalLink(String),
- ExternalLink(ExternalLink),
-}
-
-impl LineElement {
- /// Return only the character content, with none of the styling information.
- pub fn as_plain_text(&self) -> &str {
- match self {
- LineElement::Normal(text) => text,
- LineElement::Bold(text) => text,
- LineElement::Italic(text) => text,
- LineElement::Monospace(text) => text,
- LineElement::Math(text) => text,
- LineElement::InternalLink(label) => label,
- LineElement::ExternalLink(ExternalLink { label, ..}) => label,
- }
- }
-}
-
-pub struct ExternalLink {
- pub label: String,
- pub target: String,
-}
-
-impl std::fmt::Display for LineElement {
- fn fmt(&self, f: &mut std::fmt::Formatter) -> Result<(), std::fmt::Error> {
- let string = match self {
- LineElement::Normal(text) => format!("{text}"),
- LineElement::Bold(text) => format!("**{text}**"),
- LineElement::Italic(text) => format!("_{text}_"),
- LineElement::Monospace(text) => format!("`{text}`"),
- LineElement::Math(text) => format!("${text}$"),
- LineElement::InternalLink(text) => format!("[[{text}]]"),
- LineElement::ExternalLink(ExternalLink { label, target }) => {
- format!("[{label}]({target})") }
- };
- f.write_str(&string)
- }
-}
-
-impl std::fmt::Debug for LineElement {
- fn fmt(&self, f: &mut std::fmt::Formatter) -> Result<(), std::fmt::Error> {
- let string = match self {
- LineElement::Normal(text) => format!("Normal ('{text}')"),
- LineElement::Bold(text) => format!("Bold ('{text}')"),
- LineElement::Italic(text) => format!("Italic ('{text}')"),
- LineElement::Monospace(text) => format!("Monospace ('{text}')"),
- LineElement::Math(text) => format!("Math ('{text}')"),
- LineElement::InternalLink(text) => format!("InternalLink ('{text}')"),
- LineElement::ExternalLink(ExternalLink { label, target }) => {
- format!("ExternalLink (label:'{label}', target:'{target}')") }
- };
- f.write_str(&string)
- }
-}