Bericht_Nr.465_T ... - TUHH
Bericht_Nr.465_T ... - TUHH
Bericht_Nr.465_T ... - TUHH
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
BNF-PROGRAMMIERBAREP PARSER<br />
457:<br />
458:<br />
45'?:<br />
~+w1 :<br />
.,:.+,:.._,.~<br />
: --+<br />
-:"'_'L'..<br />
c1-68:<br />
-+<br />
~:<br />
472:<br />
4 _:<br />
474:<br />
475:<br />
4 6:<br />
/i :<br />
478:<br />
"70. 4' 1/"<br />
4:3!ij:<br />
481:<br />
482:<br />
483:<br />
484:<br />
485:<br />
486:<br />
487:<br />
488:<br />
489:<br />
491: ::i<br />
492:<br />
493:<br />
494:<br />
495:<br />
496:<br />
497:<br />
498:<br />
499:<br />
SQj2:<br />
5~!J3:<br />
504:<br />
5!ij6:<br />
5:2J7:<br />
5~ij8:<br />
5~!J9:<br />
51!:Z':<br />
511:<br />
1::"1<br />
"_'.1.'_'.<br />
1<br />
,;l<br />
-,'<br />
-t<br />
t:mateh = TRUE;<br />
l::ietTaf'get ();<br />
,<br />
J'<br />
.. else {<br />
4<br />
.y.<br />
5<br />
4<br />
.. J'.<br />
..:..<br />
..<br />
4<br />
4<br />
10-MAR-1986 16:23:42<br />
f i 1 e: BL. C Page 9<br />
fphntf \OutFile~ "E,t le'/el i.3d mc!tched:\t'j;s"'~ plevel~ pident<br />
if (s,tl'''cmp (pident, IDENTi == :J)<br />
fpt-intf \OutFile, "\tidenti'fier ':J;'::;'"~ idna,me);<br />
else if (stremp (pident. NUMBER) == 0)<br />
'fpr'intf WutFile~ "'\t.vc,lue P/;d"', numbval);<br />
pute ('\n'~ OutFile);<br />
*mateh = (s-)usvm.tsym<br />
if (!mat.eh)<br />
first<br />
{<br />
= NO;<br />
fpr'i ntf WutFi 1 e~<br />
}<br />
}<br />
else {<br />
if (f i rst) {<br />
fori<br />
first<br />
ntf Wut.Fi<br />
= NO;<br />
1e, 11<br />
}<br />
.. parse (s-)usym.nsym, match);<br />
..<br />
}<br />
,-;<br />
..:..<br />
_ *mateh? s-)sue : s-)alt;<br />
} while (5 i= NIL);<br />
1 plevel --:<br />
#ifdef ÜEBUG<br />
fj:.rintf (OutFile~ 11 parse e>:it\n");<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
1<br />
'"<br />
..<br />
#endif<br />
}<br />
1* parse */<br />
11<br />
-- empt.y)<br />
;I<br />
-/~.<br />
=' 11<br />
l.<br />
=- ~<br />
=<br />
goal->~.ym) ;<br />
CjQ"Ü- )sym) :<br />
..<br />
"<br />
maln<br />
int<br />
c:har<br />
(argc~ argv)<br />
::wgc:;<br />
/* ebnf parser t/<br />
{<br />
int<br />
c:har<br />
ehar<br />
struc:t<br />
ehar<br />
*an;lv[J;<br />
1 ;<br />
*ident;<br />
*table~ *tblend;<br />
Header *hdp;<br />
fn [15J ~ fnp [15J;<br />
= all oe (1);<br />
if (arge