From d8a2aedbd7353e87b7a1c635f063935c2e380a0e Mon Sep 17 00:00:00 2001 From: Chris Wong <lambda.fairy@gmail.com> Date: Sun, 21 Dec 2014 16:47:40 +1300 Subject: [PATCH] Parse semicolons --- maud_macros/src/parse.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/maud_macros/src/parse.rs b/maud_macros/src/parse.rs index 9e5c878..3e9e975 100644 --- a/maud_macros/src/parse.rs +++ b/maud_macros/src/parse.rs @@ -45,6 +45,9 @@ pub enum Escape { } pub fn parse(cx: &mut ExtCtxt, mut args: &[TokenTree]) -> Option<Vec<Markup>> { + macro_rules! semi { + () => (TtToken(_, token::Semi)) + } macro_rules! minus { () => (TtToken(_, token::BinOp(token::Minus))) } @@ -55,6 +58,10 @@ pub fn parse(cx: &mut ExtCtxt, mut args: &[TokenTree]) -> Option<Vec<Markup>> { let mut result = vec![]; loop { match match args { + [semi!(), ..] => { + args.shift(1); + continue + }, [minus!(), ref tt @ literal!(), ..] => { args.shift(2); parse_literal(cx, tt, true)