Parse semicolons

This commit is contained in:
Chris Wong 2014-12-21 16:47:40 +13:00
parent f8a8e89a30
commit d8a2aedbd7

View file

@ -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)