Skip to content

Commit b62dede

Browse files
authored
Merge pull request #60204 from evnik/StmtTrivias
Leading/trailing spaces are updated for `do` and related statements
2 parents f11e2af + 65e38ec commit b62dede

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

utils/gyb_syntax_support/Token.py

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,13 @@ class Keyword(Token):
3737
"""
3838

3939
def __init__(self, name, text, serialization_code,
40-
classification='Keyword'):
40+
classification='Keyword',
41+
requires_leading_space=False, requires_trailing_space=True):
4142
Token.__init__(self, name, 'kw_' + text, serialization_code,
4243
unprefixed_kind=text, text=text,
4344
classification=classification, is_keyword=True,
44-
requires_trailing_space=True)
45+
requires_leading_space=requires_leading_space,
46+
requires_trailing_space=requires_trailing_space)
4547

4648
def macro_name(self):
4749
return "KEYWORD"
@@ -171,7 +173,8 @@ def macro_name(self):
171173
StmtKeyword('Defer', 'defer', serialization_code=23),
172174
StmtKeyword('If', 'if', serialization_code=24),
173175
StmtKeyword('Guard', 'guard', serialization_code=25),
174-
StmtKeyword('Do', 'do', serialization_code=26),
176+
StmtKeyword('Do', 'do', requires_trailing_space=False,
177+
serialization_code=26),
175178
StmtKeyword('Repeat', 'repeat', serialization_code=27),
176179
StmtKeyword('Else', 'else', serialization_code=28),
177180
StmtKeyword('For', 'for', serialization_code=29),
@@ -184,8 +187,10 @@ def macro_name(self):
184187
StmtKeyword('Switch', 'switch', serialization_code=36),
185188
StmtKeyword('Case', 'case', serialization_code=37),
186189
StmtKeyword('Default', 'default', serialization_code=38),
187-
StmtKeyword('Where', 'where', serialization_code=39),
188-
StmtKeyword('Catch', 'catch', serialization_code=40),
190+
StmtKeyword('Where', 'where', requires_leading_space=True,
191+
serialization_code=39),
192+
StmtKeyword('Catch', 'catch', requires_leading_space=True,
193+
requires_trailing_space=False, serialization_code=40),
189194
StmtKeyword('Throw', 'throw', serialization_code=50),
190195

191196
# Expression keywords

0 commit comments

Comments
 (0)