version 1.40, 2010/05/25 22:16:59 |
version 1.41, 2010/05/30 22:56:02 |
Line 221 where capitalised non-terminals represent nodes. |
|
Line 221 where capitalised non-terminals represent nodes. |
|
.It mnode |
.It mnode |
\(<- BLOCK | ELEMENT | TEXT |
\(<- BLOCK | ELEMENT | TEXT |
.It BLOCK |
.It BLOCK |
\(<- (HEAD [TEXT])+ [BODY [TEXT]] [TAIL [TEXT]] |
\(<- HEAD [TEXT] (BODY [TEXT])+ [TAIL [TEXT]] |
.It BLOCK |
|
\(<- BODY [TEXT] [TAIL [TEXT]] |
|
.It ELEMENT |
.It ELEMENT |
\(<- TEXT* |
\(<- TEXT* |
.It HEAD |
.It HEAD |
Line 237 where capitalised non-terminals represent nodes. |
|
Line 235 where capitalised non-terminals represent nodes. |
|
.El |
.El |
.Pp |
.Pp |
Of note are the TEXT nodes following the HEAD, BODY and TAIL nodes of |
Of note are the TEXT nodes following the HEAD, BODY and TAIL nodes of |
the BLOCK production. |
the BLOCK production: these refer to punctuation marks. |
These refer to punctuation marks. |
|
Furthermore, although a TEXT node will generally have a non-zero-length |
Furthermore, although a TEXT node will generally have a non-zero-length |
string, in the specific case of |
string, in the specific case of |
.Sq \&.Bd \-literal , |
.Sq \&.Bd \-literal , |
an empty line will produce a zero-length string. |
an empty line will produce a zero-length string. |
|
Multiple body parts are only found in invocations of |
|
.Sq \&Bl \-column , |
|
where a new body introduces a new phrase. |
.Sh EXAMPLES |
.Sh EXAMPLES |
The following example reads lines from stdin and parses them, operating |
The following example reads lines from stdin and parses them, operating |
on the finished parse tree with |
on the finished parse tree with |