diff options
author | Ben Bridle <bridle.benjamin@gmail.com> | 2022-08-25 21:09:25 +1200 |
---|---|---|
committer | Ben Bridle <bridle.benjamin@gmail.com> | 2022-08-25 21:09:25 +1200 |
commit | 54f5e9fd883e207931baa9c87b6181ca724d6bab (patch) | |
tree | 17111a1da036dbc061ae4062ea0716373e16e23d /src/main.rs | |
download | markdown-54f5e9fd883e207931baa9c87b6181ca724d6bab.zip |
Initial commit
Diffstat (limited to 'src/main.rs')
-rw-r--r-- | src/main.rs | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..8cc2bfa --- /dev/null +++ b/src/main.rs @@ -0,0 +1,37 @@ +use markdown_parser::parse; + +pub fn main() { + // let markdown = std::fs::read_to_string("/home/ben/markdown_test.md").unwrap(); + let markdown = " +This _is_ a **test** paragraph. +[This](http://www.google.com) is a regular full-length link. +|A|this is **middle** col|CC| +|-|:-:|---:| +|A||| +"; + let document = parse(&markdown); + for node in document { + println!("{:?}", node); + if let markdown_parser::Block::Paragraph(blocks) = node { + for block in blocks { + println!(" {:?}", block); + } + } else if let markdown_parser::Block::List(lines) = node { + for line in lines { + println!("-"); + for block in line { + println!(" {:?}", block); + } + } + } else if let markdown_parser::Block::Table(table) = node { + for column in table.columns { + print!(" {:?}: ", column.alignment); + for block in column.name { + print!("{:?} ", block); + } + println!(); + } + println!(); + } + } +} |