Skip to content

Commit 01ab3ab

Browse files
committed
differentiate spacey from keyspace
keywords require space; spacey now just tests as it did before
1 parent 94fd904 commit 01ab3ab

File tree

1 file changed

+12
-11
lines changed

1 file changed

+12
-11
lines changed

STD.pm6

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -222,31 +222,31 @@ token category:quote_mod { <sym> }
222222
proto token quote_mod {*}
223223

224224
token category:trait_mod { <sym> }
225-
proto token trait_mod (:$*endsym = 'spacey') {*}
225+
proto token trait_mod (:$*endsym = 'keyspace') {*}
226226

227227
token category:type_declarator { <sym> }
228-
proto token type_declarator (:$*endsym = 'spacey') {*}
228+
proto token type_declarator (:$*endsym = 'keyspace') {*}
229229

230230
token category:scope_declarator { <sym> }
231231
proto token scope_declarator (:$*endsym = 'nofun') {*}
232232

233233
token category:package_declarator { <sym> }
234-
proto token package_declarator (:$*endsym = 'spacey') {*}
234+
proto token package_declarator (:$*endsym = 'keyspace') {*}
235235

236236
token category:multi_declarator { <sym> }
237-
proto token multi_declarator (:$*endsym = 'spacey') {*}
237+
proto token multi_declarator (:$*endsym = 'keyspace') {*}
238238

239239
token category:routine_declarator { <sym> }
240240
proto token routine_declarator (:$*endsym = 'nofun') {*}
241241

242242
token category:regex_declarator { <sym> }
243-
proto token regex_declarator (:$*endsym = 'spacey') {*}
243+
proto token regex_declarator (:$*endsym = 'keyspace') {*}
244244

245245
token category:statement_prefix { <sym> }
246246
proto rule statement_prefix () {*}
247247

248248
token category:statement_control { <sym> }
249-
proto rule statement_control (:$*endsym = 'spacey') {*}
249+
proto rule statement_control (:$*endsym = 'keyspace') {*}
250250

251251
token category:statement_mod_cond { <sym> }
252252
proto rule statement_mod_cond (:$*endsym = 'nofun') {*}
@@ -278,7 +278,8 @@ proto token terminator {*}
278278
token unspacey { <.unsp>? }
279279
token begid { <?before \w> }
280280
token endid { <?before <-[ \- \' \w ]> > }
281-
token spacey { <?before <-[(]> > [ <?before <[ \s \# ]> > || <.panic: "Whitespace required after keyword"> ] }
281+
token spacey { <?before <[ \s \# ]> > }
282+
token keyspace { <?before <-[(]> > [ <?before <[ \s \# ]> > || <.panic: "Whitespace required after keyword"> ] }
282283
token nofun { <!before '(' | '.(' | '\\' | '\'' | '-' | "'" | \w > }
283284

284285
# Note, don't reduce on a bare sigil unless you don't want a twigil or
@@ -1448,11 +1449,11 @@ grammar P6 is STD {
14481449
[
14491450
[
14501451
| 'else'\h*'if' <.sorry: "Please use 'elsif'">
1451-
| 'elsif'<?spacey> <elsif=.xblock>
1452+
| 'elsif'<?keyspace> <elsif=.xblock>
14521453
]
14531454
]*
14541455
[
1455-
'else'<?spacey> <else=.pblock>
1456+
'else'<?keyspace> <else=.pblock>
14561457
]?
14571458
}
14581459

@@ -1481,10 +1482,10 @@ grammar P6 is STD {
14811482
token statement_control:repeat {
14821483
<sym> :s
14831484
[
1484-
| $<wu>=['while'|'until']<.spacey>
1485+
| $<wu>=['while'|'until']<.keyspace>
14851486
<xblock>
14861487
| <pblock>
1487-
$<wu>=['while'|'until'][<.spacey>||<.panic: "Whitespace required after keyword">] <EXPR>
1488+
$<wu>=['while'|'until'][<.keyspace>||<.panic: "Whitespace required after keyword">] <EXPR>
14881489
]
14891490
}
14901491

0 commit comments

Comments
 (0)