Skip to content

Commit a29caec

Browse files
committed
Remove work-around for rakudo/rakudo#5991
1 parent baba0f0 commit a29caec

7 files changed

Lines changed: 151 additions & 152 deletions

File tree

lib/CSS/Module/CSS1/Gen/Grammar.rakumod

Lines changed: 32 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ rule absolute-size { :i ["xx-small" | "x-small" | small | medium | large | "x-la
2424
rule relative-size { :i [larger | smaller ]& <keyw> }
2525
#| font: [ 'font-style' || 'font-variant' || 'font-weight' ]? 'font-size' [ / 'line-height' ]? 'font-family'#
2626
rule decl:sym<font> { :i (font) ":" <val(/<css-val-font> /, &?ROUTINE.WHY)>}
27-
rule css-val-font { :i [[<css-val-font-style> :my $*A; <!{
27+
rule css-val-font { :i [[<css-val-font-style> :my $*A;<!{
2828
$*A++
29-
}>|| <css-val-font-variant> :my $*B; <!{
29+
}>|| <css-val-font-variant> :my $*B;<!{
3030
$*B++
31-
}>|| <css-val-font-weight> :my $*C; <!{
31+
}>|| <css-val-font-weight> :my $*C;<!{
3232
$*C++
3333
}>]+] ? <css-val-font-size> [<op("/")> <css-val-line-height> ] ? <css-val-font-family> +% <op(",")> }
3434
#| color: <color>
@@ -48,9 +48,9 @@ rule decl:sym<background-attachment> { :i ("background-attachment") ":" <val(/<c
4848
rule css-val-background-attachment { :i [scroll | fixed ]& <keyw> }
4949
#| background-position: [<percentage> | <length> | <align> ] [ <percentage> | <length> | <valign> ]? | [ <valign> || <align> ]
5050
rule decl:sym<background-position> { :i ("background-position") ":" <val(/<css-val-background-position> /, &?ROUTINE.WHY)>}
51-
rule css-val-background-position { :i [<percentage> || <length> || <align> ] [<percentage> || <length> || <valign> ] ? || [[<valign> :my $*A; <!{
51+
rule css-val-background-position { :i [<percentage> || <length> || <align> ] [<percentage> || <length> || <valign> ] ? || [[<valign> :my $*A;<!{
5252
$*A++
53-
}>|| <align> :my $*B; <!{
53+
}>|| <align> :my $*B;<!{
5454
$*B++
5555
}>]+] }
5656
#| <align> = left | center | right
@@ -59,15 +59,15 @@ rule align { :i [left | center | right ]& <keyw> }
5959
rule valign { :i [top | center | bottom ]& <keyw> }
6060
#| background: 'background-color' || 'background-image' || 'background-repeat' || 'background-attachment' || 'background-position'
6161
rule decl:sym<background> { :i (background) ":" <val(/<css-val-background> /, &?ROUTINE.WHY)>}
62-
rule css-val-background { :i [<css-val-background-color> :my $*A; <!{
62+
rule css-val-background { :i [<css-val-background-color> :my $*A;<!{
6363
$*A++
64-
}>|| <css-val-background-image> :my $*B; <!{
64+
}>|| <css-val-background-image> :my $*B;<!{
6565
$*B++
66-
}>|| <css-val-background-repeat> :my $*C; <!{
66+
}>|| <css-val-background-repeat> :my $*C;<!{
6767
$*C++
68-
}>|| <css-val-background-attachment> :my $*D; <!{
68+
}>|| <css-val-background-attachment> :my $*D;<!{
6969
$*D++
70-
}>|| <css-val-background-position> :my $*E; <!{
70+
}>|| <css-val-background-position> :my $*E;<!{
7171
$*E++
7272
}>]+ }
7373
#| word-spacing: normal | <length>
@@ -78,13 +78,13 @@ rule decl:sym<letter-spacing> { :i ("letter-spacing") ":" <val(/<css-val-letter-
7878
rule css-val-letter-spacing { :i normal & <keyw> || <length> }
7979
#| text-decoration: none | [ underline || overline || line-through || blink ]
8080
rule decl:sym<text-decoration> { :i ("text-decoration") ":" <val(/<css-val-text-decoration> /, &?ROUTINE.WHY)>}
81-
rule css-val-text-decoration { :i none & <keyw> || [[underline & <keyw> :my $*A; <!{
81+
rule css-val-text-decoration { :i none & <keyw> || [[underline & <keyw> :my $*A;<!{
8282
$*A++
83-
}>|| overline & <keyw> :my $*B; <!{
83+
}>|| overline & <keyw> :my $*B;<!{
8484
$*B++
85-
}>|| "line-through" & <keyw> :my $*C; <!{
85+
}>|| "line-through" & <keyw> :my $*C;<!{
8686
$*C++
87-
}>|| blink & <keyw> :my $*D; <!{
87+
}>|| blink & <keyw> :my $*D;<!{
8888
$*D++
8989
}>]+] }
9090
#| vertical-align: baseline | sub | super | top | text-top | middle | bottom | text-bottom | <percentage>
@@ -155,11 +155,11 @@ rule decl:sym<border-style> { :i ("border-style") ":" <val(/<css-val-border-styl
155155
rule css-val-border-style { :i [[none | dotted | dashed | solid | double | groove | ridge | inset | outset ]& <keyw> ] }
156156
#| border-top: 'border-top-width' || 'border-top-style' || <color>
157157
rule decl:sym<border-top> { :i ("border-top") ":" <val(/<css-val-border-top> /, &?ROUTINE.WHY)>}
158-
rule css-val-border-top { :i [<css-val-border-top-width> :my $*A; <!{
158+
rule css-val-border-top { :i [<css-val-border-top-width> :my $*A;<!{
159159
$*A++
160-
}>|| <css-val-border-top-style> :my $*B; <!{
160+
}>|| <css-val-border-top-style> :my $*B;<!{
161161
$*B++
162-
}>|| <color> :my $*C; <!{
162+
}>|| <color> :my $*C;<!{
163163
$*C++
164164
}>]+ }
165165
#| border-top-color: <color> | transparent
@@ -188,38 +188,38 @@ rule decl:sym<border-left-style> { :i ("border-left-style") ":" <val(/<css-val-b
188188
rule css-val-border-left-style { :i [[none | dotted | dashed | solid | double | groove | ridge | inset | outset ]& <keyw> ] }
189189
#| border-right: 'border-right-width' || 'border-right-style' || <color>
190190
rule decl:sym<border-right> { :i ("border-right") ":" <val(/<css-val-border-right> /, &?ROUTINE.WHY)>}
191-
rule css-val-border-right { :i [<css-val-border-right-width> :my $*A; <!{
191+
rule css-val-border-right { :i [<css-val-border-right-width> :my $*A;<!{
192192
$*A++
193-
}>|| <css-val-border-right-style> :my $*B; <!{
193+
}>|| <css-val-border-right-style> :my $*B;<!{
194194
$*B++
195-
}>|| <color> :my $*C; <!{
195+
}>|| <color> :my $*C;<!{
196196
$*C++
197197
}>]+ }
198198
#| border-bottom: 'border-bottom-width' || 'border-bottom-style' || <color>
199199
rule decl:sym<border-bottom> { :i ("border-bottom") ":" <val(/<css-val-border-bottom> /, &?ROUTINE.WHY)>}
200-
rule css-val-border-bottom { :i [<css-val-border-bottom-width> :my $*A; <!{
200+
rule css-val-border-bottom { :i [<css-val-border-bottom-width> :my $*A;<!{
201201
$*A++
202-
}>|| <css-val-border-bottom-style> :my $*B; <!{
202+
}>|| <css-val-border-bottom-style> :my $*B;<!{
203203
$*B++
204-
}>|| <color> :my $*C; <!{
204+
}>|| <color> :my $*C;<!{
205205
$*C++
206206
}>]+ }
207207
#| border-left: 'border-left-width' || 'border-left-style' || <color>
208208
rule decl:sym<border-left> { :i ("border-left") ":" <val(/<css-val-border-left> /, &?ROUTINE.WHY)>}
209-
rule css-val-border-left { :i [<css-val-border-left-width> :my $*A; <!{
209+
rule css-val-border-left { :i [<css-val-border-left-width> :my $*A;<!{
210210
$*A++
211-
}>|| <css-val-border-left-style> :my $*B; <!{
211+
}>|| <css-val-border-left-style> :my $*B;<!{
212212
$*B++
213-
}>|| <color> :my $*C; <!{
213+
}>|| <color> :my $*C;<!{
214214
$*C++
215215
}>]+ }
216216
#| border: 'border-width' || 'border-style' || 'border-color'
217217
rule decl:sym<border> { :i (border) ":" <val(/<css-val-border> /, &?ROUTINE.WHY)>}
218-
rule css-val-border { :i [<css-val-border-width> :my $*A; <!{
218+
rule css-val-border { :i [<css-val-border-width> :my $*A;<!{
219219
$*A++
220-
}>|| <css-val-border-style> :my $*B; <!{
220+
}>|| <css-val-border-style> :my $*B;<!{
221221
$*B++
222-
}>|| <css-val-border-color> :my $*C; <!{
222+
}>|| <css-val-border-color> :my $*C;<!{
223223
$*C++
224224
}>]+ }
225225
#| float: left | right | none
@@ -245,11 +245,11 @@ rule decl:sym<list-style-position> { :i ("list-style-position") ":" <val(/<css-v
245245
rule css-val-list-style-position { :i [inside | outside ]& <keyw> }
246246
#| list-style: 'list-style-type' || 'list-style-image' || 'list-style-position'
247247
rule decl:sym<list-style> { :i ("list-style") ":" <val(/<css-val-list-style> /, &?ROUTINE.WHY)>}
248-
rule css-val-list-style { :i [<css-val-list-style-type> :my $*A; <!{
248+
rule css-val-list-style { :i [<css-val-list-style-type> :my $*A;<!{
249249
$*A++
250-
}>|| <css-val-list-style-image> :my $*B; <!{
250+
}>|| <css-val-list-style-image> :my $*B;<!{
251251
$*B++
252-
}>|| <css-val-list-style-position> :my $*C; <!{
252+
}>|| <css-val-list-style-position> :my $*C;<!{
253253
$*C++
254254
}>]+ }
255255
#| position: absolute | relative | static

lib/CSS/Module/CSS21/Gen/Grammar.rakumod

Lines changed: 41 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
unit grammar CSS::Module::CSS21::Gen::Grammar;
22
#| azimuth: <angle> | [ <direction> || <behind> ] | <delta>
33
rule decl:sym<azimuth> { :i (azimuth) ":" <val(/<css-val-azimuth> /, &?ROUTINE.WHY)>}
4-
rule css-val-azimuth { :i <angle> || [[<direction> :my $*A; <!{
4+
rule css-val-azimuth { :i <angle> || [[<direction> :my $*A;<!{
55
$*A++
6-
}>|| <behind> :my $*B; <!{
6+
}>|| <behind> :my $*B;<!{
77
$*B++
88
}>]+] || <delta> }
99
#| <delta> = leftwards | rightwards
@@ -23,9 +23,9 @@ rule decl:sym<background-image> { :i ("background-image") ":" <val(/<css-val-bac
2323
rule css-val-background-image { :i <uri> || none & <keyw> }
2424
#| background-position: [ [ <percentage> | <length> | <align> ] [ <percentage> | <length> | <valign> ]? ] | [ <align> || <valign> ]
2525
rule decl:sym<background-position> { :i ("background-position") ":" <val(/<css-val-background-position> /, &?ROUTINE.WHY)>}
26-
rule css-val-background-position { :i [[<percentage> || <length> || <align> ] [<percentage> || <length> || <valign> ] ? ] || [[<align> :my $*A; <!{
26+
rule css-val-background-position { :i [[<percentage> || <length> || <align> ] [<percentage> || <length> || <valign> ] ? ] || [[<align> :my $*A;<!{
2727
$*A++
28-
}>|| <valign> :my $*B; <!{
28+
}>|| <valign> :my $*B;<!{
2929
$*B++
3030
}>]+] }
3131
#| <align> = left | center | right
@@ -37,15 +37,15 @@ rule decl:sym<background-repeat> { :i ("background-repeat") ":" <val(/<css-val-b
3737
rule css-val-background-repeat { :i [repeat | "repeat-x" | "repeat-y" | "no-repeat" ]& <keyw> }
3838
#| background: ['background-color' || 'background-image' || 'background-repeat' || 'background-attachment' || 'background-position']
3939
rule decl:sym<background> { :i (background) ":" <val(/<css-val-background> /, &?ROUTINE.WHY)>}
40-
rule css-val-background { :i [[<css-val-background-color> :my $*A; <!{
40+
rule css-val-background { :i [[<css-val-background-color> :my $*A;<!{
4141
$*A++
42-
}>|| <css-val-background-image> :my $*B; <!{
42+
}>|| <css-val-background-image> :my $*B;<!{
4343
$*B++
44-
}>|| <css-val-background-repeat> :my $*C; <!{
44+
}>|| <css-val-background-repeat> :my $*C;<!{
4545
$*C++
46-
}>|| <css-val-background-attachment> :my $*D; <!{
46+
}>|| <css-val-background-attachment> :my $*D;<!{
4747
$*D++
48-
}>|| <css-val-background-position> :my $*E; <!{
48+
}>|| <css-val-background-position> :my $*E;<!{
4949
$*E++
5050
}>]+] }
5151
#| border-collapse: collapse | separate
@@ -64,38 +64,38 @@ rule css-val-border-style { :i <border-style> }
6464
rule border-style { :i [none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset ]& <keyw> }
6565
#| border-top: [ 'border-top-width' || 'border-top-style' || 'border-top-color' ]
6666
rule decl:sym<border-top> { :i ("border-top") ":" <val(/<css-val-border-top> /, &?ROUTINE.WHY)>}
67-
rule css-val-border-top { :i [[<css-val-border-top-width> :my $*A; <!{
67+
rule css-val-border-top { :i [[<css-val-border-top-width> :my $*A;<!{
6868
$*A++
69-
}>|| <css-val-border-top-style> :my $*B; <!{
69+
}>|| <css-val-border-top-style> :my $*B;<!{
7070
$*B++
71-
}>|| <css-val-border-top-color> :my $*C; <!{
71+
}>|| <css-val-border-top-color> :my $*C;<!{
7272
$*C++
7373
}>]+] }
7474
#| border-right: [ 'border-right-width' || 'border-right-style' || 'border-right-color' ]
7575
rule decl:sym<border-right> { :i ("border-right") ":" <val(/<css-val-border-right> /, &?ROUTINE.WHY)>}
76-
rule css-val-border-right { :i [[<css-val-border-right-width> :my $*A; <!{
76+
rule css-val-border-right { :i [[<css-val-border-right-width> :my $*A;<!{
7777
$*A++
78-
}>|| <css-val-border-right-style> :my $*B; <!{
78+
}>|| <css-val-border-right-style> :my $*B;<!{
7979
$*B++
80-
}>|| <css-val-border-right-color> :my $*C; <!{
80+
}>|| <css-val-border-right-color> :my $*C;<!{
8181
$*C++
8282
}>]+] }
8383
#| border-bottom: [ 'border-bottom-width' || 'border-bottom-style' || 'border-bottom-color' ]
8484
rule decl:sym<border-bottom> { :i ("border-bottom") ":" <val(/<css-val-border-bottom> /, &?ROUTINE.WHY)>}
85-
rule css-val-border-bottom { :i [[<css-val-border-bottom-width> :my $*A; <!{
85+
rule css-val-border-bottom { :i [[<css-val-border-bottom-width> :my $*A;<!{
8686
$*A++
87-
}>|| <css-val-border-bottom-style> :my $*B; <!{
87+
}>|| <css-val-border-bottom-style> :my $*B;<!{
8888
$*B++
89-
}>|| <css-val-border-bottom-color> :my $*C; <!{
89+
}>|| <css-val-border-bottom-color> :my $*C;<!{
9090
$*C++
9191
}>]+] }
9292
#| border-left: [ 'border-left-width' || 'border-left-style' || 'border-left-color' ]
9393
rule decl:sym<border-left> { :i ("border-left") ":" <val(/<css-val-border-left> /, &?ROUTINE.WHY)>}
94-
rule css-val-border-left { :i [[<css-val-border-left-width> :my $*A; <!{
94+
rule css-val-border-left { :i [[<css-val-border-left-width> :my $*A;<!{
9595
$*A++
96-
}>|| <css-val-border-left-style> :my $*B; <!{
96+
}>|| <css-val-border-left-style> :my $*B;<!{
9797
$*B++
98-
}>|| <css-val-border-left-color> :my $*C; <!{
98+
}>|| <css-val-border-left-color> :my $*C;<!{
9999
$*C++
100100
}>]+] }
101101
#| border-top-color: <color> | transparent
@@ -141,11 +141,11 @@ rule css-val-border-width { :i <border-width> }
141141
rule border-width { :i [thin | medium | thick ]& <keyw> || <length> }
142142
#| border: [ 'border-width' || 'border-style' || 'border-color' ]
143143
rule decl:sym<border> { :i (border) ":" <val(/<css-val-border> /, &?ROUTINE.WHY)>}
144-
rule css-val-border { :i [[<css-val-border-width> :my $*A; <!{
144+
rule css-val-border { :i [[<css-val-border-width> :my $*A;<!{
145145
$*A++
146-
}>|| <css-val-border-style> :my $*B; <!{
146+
}>|| <css-val-border-style> :my $*B;<!{
147147
$*B++
148-
}>|| <css-val-border-color> :my $*C; <!{
148+
}>|| <css-val-border-color> :my $*C;<!{
149149
$*C++
150150
}>]+] }
151151
#| bottom: <length> | <percentage> | auto
@@ -190,9 +190,9 @@ rule decl:sym<cue-before> { :i ("cue-before") ":" <val(/<css-val-cue-before> /,
190190
rule css-val-cue-before { :i <uri> || none & <keyw> }
191191
#| cue: [ 'cue-before' || 'cue-after' ]
192192
rule decl:sym<cue> { :i (cue) ":" <val(/<css-val-cue> /, &?ROUTINE.WHY)>}
193-
rule css-val-cue { :i [[<css-val-cue-before> :my $*A; <!{
193+
rule css-val-cue { :i [[<css-val-cue-before> :my $*A;<!{
194194
$*A++
195-
}>|| <css-val-cue-after> :my $*B; <!{
195+
}>|| <css-val-cue-after> :my $*B;<!{
196196
$*B++
197197
}>]+] }
198198
#| cursor: [ [<uri> ,]* [ auto | crosshair | default | pointer | move | e-resize | ne-resize | nw-resize | n-resize | se-resize | sw-resize | s-resize | w-resize | text | wait | help | progress ] ]
@@ -240,11 +240,11 @@ rule decl:sym<font-weight> { :i ("font-weight") ":" <val(/<css-val-font-weight>
240240
rule css-val-font-weight { :i [normal | bold | bolder | lighter ]& <keyw> || [100 | 200 | 300 | 400 | 500 | 600 | 700 | 800 | 900 ]& <number> }
241241
#| font: [ [ 'font-style' || 'font-variant' || 'font-weight' ]? 'font-size' [ / 'line-height' ]? 'font-family'# ] | caption | icon | menu | message-box | small-caption | status-bar
242242
rule decl:sym<font> { :i (font) ":" <val(/<css-val-font> /, &?ROUTINE.WHY)>}
243-
rule css-val-font { :i [[[<css-val-font-style> :my $*A; <!{
243+
rule css-val-font { :i [[[<css-val-font-style> :my $*A;<!{
244244
$*A++
245-
}>|| <css-val-font-variant> :my $*B; <!{
245+
}>|| <css-val-font-variant> :my $*B;<!{
246246
$*B++
247-
}>|| <css-val-font-weight> :my $*C; <!{
247+
}>|| <css-val-font-weight> :my $*C;<!{
248248
$*C++
249249
}>]+] ? <css-val-font-size> [<op("/")> <css-val-line-height> ] ? <css-val-font-family> +% <op(",")> ] || [caption | icon | menu | "message-box" | "small-caption" | "status-bar" ]& <keyw> }
250250
#| height: <length> | <percentage> | auto
@@ -270,11 +270,11 @@ rule decl:sym<list-style-type> { :i ("list-style-type") ":" <val(/<css-val-list-
270270
rule css-val-list-style-type { :i [disc | circle | square | decimal | "decimal-leading-zero" | "lower-roman" | "upper-roman" | "lower-greek" | "lower-latin" | "upper-latin" | armenian | georgian | "lower-alpha" | "upper-alpha" | none ]& <keyw> }
271271
#| list-style: [ 'list-style-type' || 'list-style-position' || 'list-style-image' ]
272272
rule decl:sym<list-style> { :i ("list-style") ":" <val(/<css-val-list-style> /, &?ROUTINE.WHY)>}
273-
rule css-val-list-style { :i [[<css-val-list-style-type> :my $*A; <!{
273+
rule css-val-list-style { :i [[<css-val-list-style-type> :my $*A;<!{
274274
$*A++
275-
}>|| <css-val-list-style-position> :my $*B; <!{
275+
}>|| <css-val-list-style-position> :my $*B;<!{
276276
$*B++
277-
}>|| <css-val-list-style-image> :my $*C; <!{
277+
}>|| <css-val-list-style-image> :my $*C;<!{
278278
$*C++
279279
}>]+] }
280280
#| margin-right: <margin-width>
@@ -323,11 +323,11 @@ rule decl:sym<outline-width> { :i ("outline-width") ":" <val(/<css-val-outline-w
323323
rule css-val-outline-width { :i [thin | medium | thick ]& <keyw> || <length> }
324324
#| outline: [ 'outline-color' || 'outline-style' || 'outline-width' ]
325325
rule decl:sym<outline> { :i (outline) ":" <val(/<css-val-outline> /, &?ROUTINE.WHY)>}
326-
rule css-val-outline { :i [[<css-val-outline-color> :my $*A; <!{
326+
rule css-val-outline { :i [[<css-val-outline-color> :my $*A;<!{
327327
$*A++
328-
}>|| <css-val-outline-style> :my $*B; <!{
328+
}>|| <css-val-outline-style> :my $*B;<!{
329329
$*B++
330-
}>|| <css-val-outline-width> :my $*C; <!{
330+
}>|| <css-val-outline-width> :my $*C;<!{
331331
$*C++
332332
}>]+] }
333333
#| overflow: visible | hidden | scroll | auto
@@ -376,9 +376,9 @@ rule decl:sym<pitch> { :i (pitch) ":" <val(/<css-val-pitch> /, &?ROUTINE.WHY)>}
376376
rule css-val-pitch { :i <frequency> || ["x-low" | low | medium | high | "x-high" ]& <keyw> }
377377
#| play-during: <uri> [ mix || repeat ]? | auto | none
378378
rule decl:sym<play-during> { :i ("play-during") ":" <val(/<css-val-play-during> /, &?ROUTINE.WHY)>}
379-
rule css-val-play-during { :i <uri> [[mix & <keyw> :my $*A; <!{
379+
rule css-val-play-during { :i <uri> [[mix & <keyw> :my $*A;<!{
380380
$*A++
381-
}>|| repeat & <keyw> :my $*B; <!{
381+
}>|| repeat & <keyw> :my $*B;<!{
382382
$*B++
383383
}>]+] ? || [auto | none ]& <keyw> }
384384
#| position: static | relative | absolute | fixed
@@ -422,13 +422,13 @@ rule decl:sym<text-align> { :i ("text-align") ":" <val(/<css-val-text-align> /,
422422
rule css-val-text-align { :i <align> || justify & <keyw> }
423423
#| text-decoration: none | [ underline || overline || line-through || blink ]
424424
rule decl:sym<text-decoration> { :i ("text-decoration") ":" <val(/<css-val-text-decoration> /, &?ROUTINE.WHY)>}
425-
rule css-val-text-decoration { :i none & <keyw> || [[underline & <keyw> :my $*A; <!{
425+
rule css-val-text-decoration { :i none & <keyw> || [[underline & <keyw> :my $*A;<!{
426426
$*A++
427-
}>|| overline & <keyw> :my $*B; <!{
427+
}>|| overline & <keyw> :my $*B;<!{
428428
$*B++
429-
}>|| "line-through" & <keyw> :my $*C; <!{
429+
}>|| "line-through" & <keyw> :my $*C;<!{
430430
$*C++
431-
}>|| blink & <keyw> :my $*D; <!{
431+
}>|| blink & <keyw> :my $*D;<!{
432432
$*D++
433433
}>]+] }
434434
#| text-indent: <length> | <percentage>

0 commit comments

Comments
 (0)