CONSTRUCTOR TABLES of the Grammar G9.grm
Parameters
File G9.prm
struct parm{
int nr //tähestiku V pikkus
int tnr //tähestiku VT pikkus
int BRC //0: G on pööratav
int Pnr //Produktsioonide arv
int dep //1: sõltuv kontekst
int itl //identifikaatorite arv (Parser)
int ktl //konstantide arv (Parser)
}
nr=14 tnr=6 BRC=1 Pnr=14 dep=1 itl=0 ktl=0
Alphabet V
File G9.t
# a b 1 c d T S A B S1 S2 S3 S4
Scanner Table
File G9.tt
# a b 1 c d
Tree of the Alphabet V
File G9.v
struct R{
int P; /* produktsiooni jrk-nr */
int sem; /* semantikakood */
int n; /* NT definitsiooni pikkus */
int *d; /* NT definitsioon */
struct R *alt; /* NT alternatiivne definitsioon */
}
struct D{
int tunnus; /* 0: NT, 1: T */
int code; /* vahekeelne kood */
int L; /* NT või id/const nime pikkus */
int loc; /* ident | const : nr */
int icx; /* itl või ktl - IT või KT index */
struct D *left; /* kahendpuu viidad (võti on T[code]) */
struct D *right;
struct R *def;
}
D 00490040: tunnus=1 code=1 L=1 loc=0 icx=0 left=00000000 right=00491C80 def=00000000 (#)
D 00491A00: tunnus=1 code=4 L=1 loc=0 icx=0 left=00000000 right=004918C0 def=00000000 (1)
D 00491660: tunnus=0 code=9 L=1 loc=0 icx=0 left=00000000 right=004912E0 def=00492CD0 (A)
R 00492CD0: P=8 sem=0 n=2 d=00492C90 alt=00492F40
d 00492C90: 9 5
R 00492F40: P=6 sem=0 n=1 d=00492F10 alt=00000000
d 00492F10: 4
D 004912E0: tunnus=0 code=10 L=1 loc=0 icx=0 left=00000000 right=00000000 def=00492B60 (B)
R 00492B60: P=9 sem=0 n=2 d=00492B20 alt=00492E30
d 00492B20: 6 10
R 00492E30: P=7 sem=0 n=1 d=00492E00 alt=00000000
d 00492E00: 4
D 00491820: tunnus=0 code=8 L=1 loc=0 icx=0 left=00491660 right=00492AD0 def=00491090 (S)
R 00491090: P=5 sem=0 n=2 d=00492800 alt=00491250
d 00492800: 13 2
R 00491250: P=4 sem=0 n=2 d=00492700 alt=00491410
d 00492700: 14 3
R 00491410: P=3 sem=0 n=2 d=00492900 alt=004915D0
d 00492900: 3 12
R 004915D0: P=2 sem=0 n=2 d=00492A10 alt=00000000
d 00492A10: 2 11
D 00492AD0: tunnus=0 code=11 L=2 loc=0 icx=0 left=00000000 right=004929C0 def=00492A90 (S1)
R 00492A90: P=10 sem=0 n=2 d=00492A50 alt=00000000
d 00492A50: 9 2
D 004929C0: tunnus=0 code=12 L=2 loc=0 icx=0 left=00000000 right=004928B0 def=00492980 (S2)
R 00492980: P=11 sem=0 n=2 d=00492940 alt=00000000
d 00492940: 9 3
D 004928B0: tunnus=0 code=13 L=2 loc=0 icx=0 left=00000000 right=004927B0 def=00492870 (S3)
R 00492870: P=12 sem=0 n=2 d=00492830 alt=00000000
d 00492830: 3 10
D 004927B0: tunnus=0 code=14 L=2 loc=0 icx=0 left=00000000 right=00000000 def=00492770 (S4)
R 00492770: P=13 sem=0 n=2 d=00492730 alt=00000000
d 00492730: 2 10
D 004918C0: tunnus=0 code=7 L=1 loc=0 icx=0 left=00491820 right=00000000 def=00491790 (T)
R 00491790: P=1 sem=0 n=3 d=00491750 alt=00000000
d 00491750: 1 8 1
D 00491C80: tunnus=1 code=2 L=1 loc=0 icx=0 left=00491A00 right=00491BE0 def=00000000 (a)
D 00491BE0: tunnus=1 code=3 L=1 loc=0 icx=0 left=00000000 right=00491960 def=00000000 (b)
D 00491960: tunnus=1 code=5 L=1 loc=0 icx=0 left=00000000 right=00491910 def=00000000 (c)
D 00491910: tunnus=1 code=6 L=1 loc=0 icx=0 left=00000000 right=00000000 def=00000000 (d)
Reduce Table
File G9.ht
struct h{
int P; /* produktsiooni jrk-nr */
int n; /* definitsiooni pikkus */
int NT; /* defineeritav nonterminal */
int *d; /* definitsioon */
int nc; /* 1 - sõltuv kontekst */
char *c; /* reservis */
struct h *same; /* sama parem pool */
struct h *col; /* põrkeviit */
}
h 00492350: P=6 n=1 NT=9 d=00492320 nc=1 same=00492240 col=00000000 (A)
d 00492320: 4
h 00492240: P=7 n=1 NT=10 d=00492210 nc=1 same=00000000 col=00000000 (B)
d 00492210: 4
h 00493FD0: P=13 n=2 NT=14 d=00493F90 nc=0 same=00000000 col=004926B0 (S4)
d 00493F90: 2 10
h 004926B0: P=1 n=3 NT=7 d=00492670 nc=0 same=00000000 col=00000000 (T)
d 00492670: 1 8 1
h 004920A0: P=12 n=2 NT=13 d=00492060 nc=0 same=00000000 col=00492470 (S3)
d 00492060: 3 10
h 00492470: P=2 n=2 NT=8 d=00492430 nc=0 same=00000000 col=00000000 (S)
d 00492430: 2 11
h 00492130: P=11 n=2 NT=12 d=004920F0 nc=0 same=00000000 col=00000000 (S2)
d 004920F0: 9 3
h 004921C0: P=10 n=2 NT=11 d=00492180 nc=0 same=00000000 col=00000000 (S1)
d 00492180: 9 2
h 004922D0: P=9 n=2 NT=10 d=00492290 nc=0 same=00000000 col=004923E0 (B)
d 00492290: 6 10
h 004923E0: P=8 n=2 NT=9 d=004923A0 nc=0 same=00000000 col=00000000 (A)
d 004923A0: 9 5
h 00492590: P=4 n=2 NT=8 d=00492550 nc=0 same=00000000 col=00000000 (S)
d 00492550: 14 3
h 00492500: P=3 n=2 NT=8 d=004924C0 nc=0 same=00000000 col=00492620 (S)
d 004924C0: 3 12
h 00492620: P=5 n=2 NT=8 d=004925E0 nc=0 same=00000000 col=00000000 (S)
d 004925E0: 13 2
Precedence Matrix
File G9.pm
Nr | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
1 | 0 | 2 | 2 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 2 | 2 |
2 | 4 | 0 | 0 | 2 | 0 | 2 | 0 | 0 | 2 | 1 | 1 | 0 | 0 | 0 |
3 | 4 | 0 | 0 | 2 | 0 | 2 | 0 | 0 | 2 | 1 | 0 | 1 | 0 | 0 |
4 | 0 | 4 | 4 | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
5 | 0 | 4 | 4 | 0 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
6 | 0 | 0 | 0 | 2 | 0 | 2 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
9 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
10 | 0 | 4 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
11 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
12 | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
13 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
14 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Left Context
File G9.lc
Nr | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |
7 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
8 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
9 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
10 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
11 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
12 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
13 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
14 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Right Context
File G9.rc
Nr | 1 | 2 | 3 | 4 | 5 | 6 |
7 | 0 | 0 | 0 | 0 | 0 | 0 |
8 | 1 | 0 | 0 | 0 | 0 | 0 |
9 | 0 | 1 | 1 | 0 | 1 | 0 |
10 | 0 | 1 | 1 | 0 | 0 | 0 |
11 | 1 | 0 | 0 | 0 | 0 | 0 |
12 | 1 | 0 | 0 | 0 | 0 | 0 |
13 | 0 | 1 | 0 | 0 | 0 | 0 |
14 | 0 | 0 | 1 | 0 | 0 | 0 |
Dependent Context
File G9.dc
DEP[9]=00493C50
L[2]=00493BD0
rc[2]=1 rc[5]=1
L[3]=00493C10
rc[3]=1 rc[5]=1
DEP[10]=00493B60
L[2]=00493B20
rc[3]=1
L[3]=00493AE0
rc[2]=1
L[6]=00493AA0
rc[2]=1 rc[3]=1
Semantics
File G9.sm
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 0