Rendering spans

This commit is contained in:
Tom Alexander
2020-04-11 18:25:48 -04:00
parent 13934e8699
commit 2459d7b418
6 changed files with 114 additions and 21 deletions

View File

@@ -8,3 +8,4 @@ pub use node_invoker::NodeError;
pub use node_invoker::Result;
pub use parser::template;
pub use parser::Template;
pub use parser::TemplateElement;

View File

@@ -24,7 +24,7 @@ use nom::sequence::tuple;
use nom::IResult;
#[derive(Clone, Debug, PartialEq)]
enum DustTag<'a> {
pub enum DustTag<'a> {
DTSpecial(Special),
DTComment(Comment<'a>),
DTReference(Reference<'a>),
@@ -79,8 +79,8 @@ enum Filter {
}
#[derive(Clone, Debug, PartialEq)]
struct Span<'a> {
contents: &'a str,
pub struct Span<'a> {
pub contents: &'a str,
}
#[derive(Clone, Debug, PartialEq)]
@@ -123,17 +123,17 @@ struct KVPair<'a> {
}
#[derive(Clone, Debug, PartialEq)]
struct Body<'a> {
elements: Vec<TemplateElement<'a>>,
pub struct Body<'a> {
pub elements: Vec<TemplateElement<'a>>,
}
#[derive(Clone, Debug)]
pub struct Template<'a> {
contents: Body<'a>,
pub contents: Body<'a>,
}
#[derive(Clone, Debug, PartialEq)]
enum TemplateElement<'a> {
pub enum TemplateElement<'a> {
TESpan(Span<'a>),
TETag(DustTag<'a>),
}