summaryrefslogtreecommitdiff
path: root/pygments/lexers/web.py
diff options
context:
space:
mode:
Diffstat (limited to 'pygments/lexers/web.py')
-rw-r--r--pygments/lexers/web.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/pygments/lexers/web.py b/pygments/lexers/web.py
index 3aae0b89..95b7a104 100644
--- a/pygments/lexers/web.py
+++ b/pygments/lexers/web.py
@@ -1535,7 +1535,7 @@ class HaxeLexer(ExtendedRegexLexer):
'switch': [
include('spaces'),
- (r'\(', Text, ('#pop', 'switch-body', 'bracket-open', 'parenthesis')),
+ (r'\(', Text, ('#pop', 'switch-body', 'bracket-open', 'expr')),
],
'switch-body': [
@@ -1547,7 +1547,7 @@ class HaxeLexer(ExtendedRegexLexer):
'case': [
include('spaces'),
(r':', Punctuation, '#pop'),
- (r'', Text, ('#pop', 'case-sep', 'expr')),
+ (r'', Text, ('#pop', 'case-sep', 'case-guard', 'expr')),
],
'case-sep': [
@@ -1556,6 +1556,12 @@ class HaxeLexer(ExtendedRegexLexer):
(r',', Punctuation, ('#pop', 'case')),
],
+ 'case-guard': [
+ include('spaces'),
+ (r'(?:if)\b', Keyword, ('#pop', 'parenthesis')),
+ (r'', Text, '#pop'),
+ ],
+
# optional multiple expr under a case
'case-block': [
include('spaces'),