From 776ae813bd91ff8b36361908ea57147374e3df85 Mon Sep 17 00:00:00 2001 From: Sascha Peilicke Date: Wed, 11 Dec 2013 18:52:08 +0100 Subject: [PATCH] Add t_tilde token for '~' To be used inside general_sibling_selector (e.g. 'a ~ b { ... }') instead of the literal '~'. Necessary since we had to remove the literal from the lexer in order to tokenize ~"..." and ~'...'. --- lesscpy/lessc/lexer.py | 5 +++++ lesscpy/lessc/parser.py | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lesscpy/lessc/lexer.py b/lesscpy/lessc/lexer.py index df94f76..b425022 100644 --- a/lesscpy/lessc/lexer.py +++ b/lesscpy/lessc/lexer.py @@ -53,6 +53,7 @@ class LessLexer: 't_popen', 't_pclose', 't_semicolon', + 't_tilde', 't_lsopen', 't_lsclose', @@ -234,6 +235,10 @@ class LessLexer: t.lexer.push_state('lessstringapostrophe') return t + def t_t_tilde(self, t): + r'~' + return t + def t_lessstringquotes_less_variable(self, t): r'@\{[^@"\}]+\}' return t diff --git a/lesscpy/lessc/parser.py b/lesscpy/lessc/parser.py index bcd13d2..2b78041 100644 --- a/lesscpy/lessc/parser.py +++ b/lesscpy/lessc/parser.py @@ -797,8 +797,8 @@ class LessParser(object): p[0] = tuple(list(p)[1:]) def p_general_sibling_selector(self, p): - """ general_sibling_selector : '~' t_ws - | '~' + """ general_sibling_selector : t_tilde t_ws + | t_tilde """ p[0] = tuple(list(p)[1:])