Skip to content

Commit 512a016

Browse files
committed
Implement grammar rendering + render grammar
1 parent eec8da6 commit 512a016

14 files changed

+2001
-1840
lines changed

spec/04-basic-concepts.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -23,22 +23,22 @@ text:
2323
-->
2424

2525
<pre>
26-
<i>script:</i>
27-
<i>script-section</i>
28-
<i>script script-section</i>
26+
<a name="grammar-script"><i>script:</i>
27+
<i><a href="#grammar-script-section">script-section</a></i>
28+
<i><a href="#grammar-script">script</a></i> <i><a href="#grammar-script-section">script-section</a></i>
2929

30-
<i>script-section:</i>
31-
<i> text<sub>opt</sub></i> <i>start-tag</i> <i>statement-list<sub>opt</sub></i> <i>end-tag</i><sub>opt</sub> <i>text<sub>opt</sub></i>
30+
<a name="grammar-script-section"><i>script-section:</i>
31+
<i><a href="#grammar-text">text</a></i><sub>opt</sub> <i><a href="#grammar-start-tag">start-tag</a></i> <i><a href="11-statements.md#grammar-statement-list">statement-list</a></i><sub>opt</sub> <i><a href="#grammar-end-tag">end-tag</a></i><sub>opt</sub> <i><a href="#grammar-text">text</a></i><sub>opt</sub>
3232

33-
<i>start-tag:</i>
34-
&lt;?php
35-
&lt;?=
33+
<a name="grammar-start-tag"><i>start-tag:</i>
34+
&lt;?php
35+
&lt;?=
3636

37-
<i>end-tag:</i>
38-
?&gt;
37+
<a name="grammar-end-tag"><i>end-tag:</i>
38+
?&gt;
3939

40-
<i>text:</i>
41-
arbitrary text not containing any of <i>start-tag</i> sequences
40+
<a name="grammar-text"><i>text:</i>
41+
arbitrary text not containing any of <i><a href="#grammar-start-tag">start-tag</a></i> sequences
4242
</pre>
4343

4444
All of the sections in a script are treated as though they belonged to

spec/05-types.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -139,22 +139,22 @@ str-number::
139139
-->
140140

141141
<pre>
142-
<i>str-numeric::</i>
143-
<i>str-whitespace<sub>opt</sub> sign<sub>opt</sub> str-number</i>
144-
145-
<i>str-whitespace::</i>
146-
<i>str-whitespace<sub>opt</sub> str-whitespace-char</i>
147-
148-
<i>str-whitespace-char::</i>
149-
<i>new-line</i>
150-
Space character (U+0020)
151-
Horizontal-tab character (U+0009)
152-
Vertical-tab character (U+000B)
153-
Form-feed character (U+000C)
154-
155-
<i>str-number::</i>
156-
<i>digit-sequence</i>
157-
<i>floating-literal</i>
142+
<a name="grammar-str-numeric"><i>str-numeric::</i>
143+
<i><a href="#grammar-str-whitespace">str-whitespace</a></i><sub>opt</sub> <i><a href="09-lexical-structure.md#grammar-sign">sign</a></i><sub>opt</sub> <i><a href="#grammar-str-number">str-number</a></i>
144+
145+
<a name="grammar-str-whitespace"><i>str-whitespace::</i>
146+
<i><a href="#grammar-str-whitespace">str-whitespace</a></i><sub>opt</sub> <i><a href="#grammar-str-whitespace-char">str-whitespace-char</a></i>
147+
148+
<a name="grammar-str-whitespace-char"><i>str-whitespace-char::</i>
149+
<i><a href="09-lexical-structure.md#grammar-new-line">new-line</a></i>
150+
Space character (U+0020)
151+
Horizontal-tab character (U+0009)
152+
Vertical-tab character (U+000B)
153+
Form-feed character (U+000C)
154+
155+
<a name="grammar-str-number"><i>str-number::</i>
156+
<i><a href="09-lexical-structure.md#grammar-digit-sequence">digit-sequence</a></i>
157+
<i><a href="09-lexical-structure.md#grammar-floating-literal">floating-literal</a></i>
158158
</pre>
159159

160160
Note that *digit-sequence* is interpreted as having base-10 (so `"0377"` is treated as 377 decimal with a redundant

spec/07-variables.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -282,18 +282,18 @@ function-static-initializer:
282282
-->
283283

284284
<pre>
285-
<i>function-static-declaration:</i>
286-
static <i>static-variable-name-list</i> ;
285+
<a name="grammar-function-static-declaration"><i>function-static-declaration:</i>
286+
static <i><a href="#grammar-static-variable-name-list">static-variable-name-list</a></i> ;
287287

288-
<i>static-variable-name-list:</i>
289-
<i>static-variable-declaration</i>
290-
<i>static-variable-name-list</i> , <i>static-variable-declaration</i>
288+
<a name="grammar-static-variable-name-list"><i>static-variable-name-list:</i>
289+
<i><a href="#grammar-static-variable-declaration">static-variable-declaration</a></i>
290+
<i><a href="#grammar-static-variable-name-list">static-variable-name-list</a></i> , <i><a href="#grammar-static-variable-declaration">static-variable-declaration</a></i>
291291

292-
<i>static-variable-declaration:</i>
293-
<i>variable-name</i> <i>function-static-initializer<sub>opt</sub></i>
292+
<a name="grammar-static-variable-declaration"><i>static-variable-declaration:</i>
293+
<i><a href="09-lexical-structure.md#grammar-variable-name">variable-name</a></i> <i><a href="#grammar-function-static-initializer">function-static-initializer</a></i><sub>opt</sub>
294294

295-
<i>function-static-initializer:</i>
296-
= <i>constant-expression</i>
295+
<a name="grammar-function-static-initializer"><i>function-static-initializer:</i>
296+
= <i><a href="10-expressions.md#grammar-constant-expression">constant-expression</a></i>
297297
</pre>
298298

299299
**Constraints**
@@ -370,12 +370,12 @@ variable-name-list:
370370
-->
371371

372372
<pre>
373-
<i>global-declaration:</i>
374-
global <i>variable-name-list</i> ;
373+
<a name="grammar-global-declaration"><i>global-declaration:</i>
374+
global <i><a href="#grammar-variable-name-list">variable-name-list</a></i> ;
375375

376-
<i>variable-name-list:</i>
377-
<i>simple-variable</i>
378-
<i>variable-name-list</i> , <i>simple-variable</i>
376+
<a name="grammar-variable-name-list"><i>variable-name-list:</i>
377+
<i><a href="10-expressions.md#grammar-simple-variable">simple-variable</a></i>
378+
<i><a href="#grammar-variable-name-list">variable-name-list</a></i> , <i><a href="10-expressions.md#grammar-simple-variable">simple-variable</a></i>
379379
</pre>
380380

381381
**Semantics**

0 commit comments

Comments
 (0)