From 3b13af8c30ea45149b900faebc2a439e9a2be84e Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 4 May 2013 16:17:21 +0100 Subject: Parse choice operator in HTML paths --- lib/style-reader.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/style-reader.js b/lib/style-reader.js index 2f3fcf3..463edc5 100644 --- a/lib/style-reader.js +++ b/lib/style-reader.js @@ -113,8 +113,13 @@ function htmlPathRule() { } ); + var tagNamesRule = lop.rules.oneOrMoreWithSeparator( + identifierRule, + lop.rules.tokenOfType("choice") + ); + var styleElementRule = lop.rules.sequence( - capture(identifierRule), + capture(tagNamesRule), capture(lop.rules.zeroOrMore(classRule)), capture(freshRule) ).map(function(tagName, classNames, fresh) { @@ -178,7 +183,8 @@ function tokenise(string) { {name: "arrow", regex: /=>/}, {name: "open-paren", regex: /\(/}, {name: "close-paren", regex: /\)/}, - {name: "integer", regex: /([0-9]+)/} + {name: "integer", regex: /([0-9]+)/}, + {name: "choice", regex: /\|/} ]); return tokeniser.tokenise(string); } -- cgit v1.2.3