blob: c0b8c84c92ca8c119f4b84a909863c95e6bd0eb3 (
plain) (
tree)
|
|
#![feature(iter_zip)]
mod block;
mod parse;
mod parse_heirarchical;
mod table;
mod text;
pub use block::Block;
pub use parse::parse;
pub use parse_heirarchical::parse_heirarchical;
pub use table::{Alignment, Column, Table};
pub use text::{Hyperlink, Text};
pub type Line = Vec<Text>;
pub fn line_to_string(line: &[Text]) -> String {
let mut output = String::new();
for text in line {
match text {
Text::Normal(content) => output.push_str(&content),
Text::Bold(content) => output.push_str(&format!("**{}**", content)),
Text::Italic(content) => output.push_str(&format!("_{}_", content)),
Text::BoldItalic(content) => output.push_str(&format!("**_{}_**", content)),
Text::Code(content) => output.push_str(&format!("`{}`", content)),
Text::WikiLink(content) => output.push_str(&format!("[[{}]]", content)),
Text::Hyperlink(Hyperlink { label, target }) => {
output.push_str(&format!("[{}]({})", label, target))
}
}
}
return output;
}
|