summaryrefslogtreecommitdiff
path: root/pygments/lexers/web.py
diff options
context:
space:
mode:
authorAndy Li <andy@onthewings.net>2014-08-17 17:01:29 +0800
committerAndy Li <andy@onthewings.net>2014-08-17 17:01:29 +0800
commit0d9f70215c44a27ea10e4759300464873b618a10 (patch)
tree71c73f08c7f3a04c179af63cd63f86636125bd51 /pygments/lexers/web.py
parent750ca02ad15f5c6a8090e090f08c659748cfc592 (diff)
downloadpygments-0d9f70215c44a27ea10e4759300464873b618a10.tar.gz
HaxeLexer: macro class reification could have no class name.
Diffstat (limited to 'pygments/lexers/web.py')
-rw-r--r--pygments/lexers/web.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/pygments/lexers/web.py b/pygments/lexers/web.py
index cd619596..0188508f 100644
--- a/pygments/lexers/web.py
+++ b/pygments/lexers/web.py
@@ -1611,13 +1611,18 @@ class HaxeLexer(ExtendedRegexLexer):
(r'(?:extern|private)\b', Keyword.Declaration),
(r'(?:abstract)\b', Keyword.Declaration, ('#pop', 'optional-semicolon', 'abstract')),
- (r'(?:class|interface)\b', Keyword.Declaration, ('#pop', 'optional-semicolon', 'class')),
+ (r'(?:class|interface)\b', Keyword.Declaration, ('#pop', 'optional-semicolon', 'macro-class')),
(r'(?:enum)\b', Keyword.Declaration, ('#pop', 'optional-semicolon', 'enum')),
(r'(?:typedef)\b', Keyword.Declaration, ('#pop', 'optional-semicolon', 'typedef')),
default(('#pop', 'expr')),
],
+ 'macro-class': [
+ (r'\{', Punctuation, ('#pop', 'class-body')),
+ include('class')
+ ],
+
# cast can be written as "cast expr" or "cast(expr, type)"
'cast': [
include('spaces'),