SQLPSchema.output 8.59 KiB
Terminals unused in grammar
IMPLIES
OR
AND
NOT
LE
GE
LT
GT
NE
HAS
MAX
MIN
AS
ASC
DESC
MOD
ASSIGN
EQ
STAR
COMMA
DOT
SIZE
SELECTIVITY
OVERLAP
FREQUENCY
UNIT
TIME
SPACE
CONSTANT
STRING_LITERAL
SIZEOF
STORE
STORING
DYNAMIC
STATIC
OF
TYPE
ORDERED
BY
INDEX
LIST
ARRAY
BINARY
TREE
DISTRIBUTED
POINTER
SCHEMA
PROPERTIES
CONSTRAINTS
PROPERTY
ON
DETERMINED
COVER
QUERY
GIVEN
FROM
SELECT
WHERE
ORDER
PRECOMPUTED
ONE
EXIST
FOR
ALL
TRANSACTION
INTEGER
REAL
DOUBLEREAL
STRING
MAXLEN
RANGE
TO
INSERT
END
CHANGE
DELETE
DECLARE
RETURN
UNION
UNIONALL
LIMIT
DISTINCT
Grammar
0 $accept: SQLPSchema $end
1 SQLPSchema: TableDefn
2 TableDefn: CLASS ClassIdentifier '(' ClassSpecs ')'
3 ClassSpecs: Self
4 | ClassSpecs ',' ClassAttributes
5 | ClassSpecs ',' ForeignKeys
6 | ClassSpecs ',' Specialization
7 | ClassSpecs ',' DisjointConstraints
8 Self: SELF OID
9 ClassAttributes: AttributeIdentifier Type
10 ForeignKeys: FOREIGN KEY AttributeIdentifier REFERENCES ClassIdentifier
11 Specialization: ISA ClassIdentifier
12 DisjointConstraints: DISJOINT WITH ClassIdentifier
13 Type: INTCLASS
14 | STRCLASS
15 | OID
16 AttributeIdentifier: IDENTIFIER
17 ClassIdentifier: IDENTIFIER
Terminals, with rules where they appear
$end (0) 0
'(' (40) 2
')' (41) 2
',' (44) 4 5 6 7
error (256)
IMPLIES (258)
OR (259)
AND (260)
NOT (261)
LE (262)
GE (263)
LT (264)
GT (265)
NE (266)
HAS (267)
MAX (268)
MIN (269)
AS (270)
ASC (271)
DESC (272)
MOD (273)
ASSIGN (274)
EQ (275)
STAR (276)
COMMA (277)
DOT (278)
SIZE (279)
SELECTIVITY (280)
OVERLAP (281)
FREQUENCY (282)
UNIT (283)
TIME (284)
SPACE (285)
IDENTIFIER (286) 16 17
CONSTANT (287)
STRING_LITERAL (288)
SIZEOF (289)
STORE (290)
STORING (291)
DYNAMIC (292)
STATIC (293)
OF (294)
TYPE (295)
ORDERED (296)
BY (297)
INDEX (298)
LIST (299)
ARRAY (300)
BINARY (301)
TREE (302)
DISTRIBUTED (303)
POINTER (304)
SCHEMA (305)
CLASS (306) 2
ISA (307) 11
PROPERTIES (308)
CONSTRAINTS (309)
PROPERTY (310)
DISJOINT (311) 12
FOREIGN (312) 10
KEY (313) 10
REFERENCES (314) 10
WITH (315) 12
ON (316)
DETERMINED (317)
COVER (318)
QUERY (319)
GIVEN (320)
FROM (321)
SELECT (322)
WHERE (323)
ORDER (324)
PRECOMPUTED (325)
ONE (326)
EXIST (327)
FOR (328)
ALL (329)
TRANSACTION (330)
INTCLASS (331) 13
STRCLASS (332) 14
OID (333) 8 15
INTEGER (334)
REAL (335)
DOUBLEREAL (336)
STRING (337)
MAXLEN (338)
RANGE (339)
TO (340)
SELF (341) 8
INSERT (342)
END (343)
CHANGE (344)
DELETE (345)
DECLARE (346)
RETURN (347)
UNION (348)
UNIONALL (349)
LIMIT (350)
DISTINCT (351)
Nonterminals, with rules where they appear
$accept (100)
on left: 0
SQLPSchema (101)
on left: 1
on right: 0
TableDefn (102)
on left: 2
on right: 1
ClassSpecs (103)
on left: 3 4 5 6 7
on right: 2 4 5 6 7
Self (104)
on left: 8
on right: 3
ClassAttributes (105)
on left: 9
on right: 4
ForeignKeys (106)
on left: 10
on right: 5
Specialization (107)
on left: 11
on right: 6
DisjointConstraints (108)
on left: 12
on right: 7
Type (109)
on left: 13 14 15
on right: 9
AttributeIdentifier (110)
on left: 16
on right: 9 10
ClassIdentifier (111)
on left: 17
on right: 2 10 11 12
State 0
0 $accept: . SQLPSchema $end
CLASS shift, and go to state 1
SQLPSchema go to state 2
TableDefn go to state 3
State 1
2 TableDefn: CLASS . ClassIdentifier '(' ClassSpecs ')'
IDENTIFIER shift, and go to state 4
ClassIdentifier go to state 5
State 2
0 $accept: SQLPSchema . $end
$end shift, and go to state 6
State 3
1 SQLPSchema: TableDefn .
$default reduce using rule 1 (SQLPSchema)
State 4
17 ClassIdentifier: IDENTIFIER .
$default reduce using rule 17 (ClassIdentifier)
State 5
2 TableDefn: CLASS ClassIdentifier . '(' ClassSpecs ')'
'(' shift, and go to state 7
State 6
0 $accept: SQLPSchema $end .
$default accept
State 7
2 TableDefn: CLASS ClassIdentifier '(' . ClassSpecs ')'
SELF shift, and go to state 8
ClassSpecs go to state 9
Self go to state 10
State 8
8 Self: SELF . OID
OID shift, and go to state 11
State 9
2 TableDefn: CLASS ClassIdentifier '(' ClassSpecs . ')'
4 ClassSpecs: ClassSpecs . ',' ClassAttributes
5 | ClassSpecs . ',' ForeignKeys
6 | ClassSpecs . ',' Specialization
7 | ClassSpecs . ',' DisjointConstraints
',' shift, and go to state 12
')' shift, and go to state 13
State 10
3 ClassSpecs: Self .
$default reduce using rule 3 (ClassSpecs)
State 11
8 Self: SELF OID .
$default reduce using rule 8 (Self)
State 12
4 ClassSpecs: ClassSpecs ',' . ClassAttributes
5 | ClassSpecs ',' . ForeignKeys
6 | ClassSpecs ',' . Specialization
7 | ClassSpecs ',' . DisjointConstraints
IDENTIFIER shift, and go to state 14
ISA shift, and go to state 15
DISJOINT shift, and go to state 16
FOREIGN shift, and go to state 17
ClassAttributes go to state 18
ForeignKeys go to state 19
Specialization go to state 20
DisjointConstraints go to state 21
AttributeIdentifier go to state 22
State 13
2 TableDefn: CLASS ClassIdentifier '(' ClassSpecs ')' .
$default reduce using rule 2 (TableDefn)
State 14
16 AttributeIdentifier: IDENTIFIER .
$default reduce using rule 16 (AttributeIdentifier)
State 15
11 Specialization: ISA . ClassIdentifier
IDENTIFIER shift, and go to state 4
ClassIdentifier go to state 23
State 16
12 DisjointConstraints: DISJOINT . WITH ClassIdentifier
WITH shift, and go to state 24
State 17
10 ForeignKeys: FOREIGN . KEY AttributeIdentifier REFERENCES ClassIdentifier
KEY shift, and go to state 25
State 18
4 ClassSpecs: ClassSpecs ',' ClassAttributes .
$default reduce using rule 4 (ClassSpecs)
State 19
5 ClassSpecs: ClassSpecs ',' ForeignKeys .
$default reduce using rule 5 (ClassSpecs)
State 20
6 ClassSpecs: ClassSpecs ',' Specialization .
$default reduce using rule 6 (ClassSpecs)
State 21
7 ClassSpecs: ClassSpecs ',' DisjointConstraints .
$default reduce using rule 7 (ClassSpecs)
State 22
9 ClassAttributes: AttributeIdentifier . Type
INTCLASS shift, and go to state 26
STRCLASS shift, and go to state 27
OID shift, and go to state 28
Type go to state 29
State 23
11 Specialization: ISA ClassIdentifier .
$default reduce using rule 11 (Specialization)
State 24
12 DisjointConstraints: DISJOINT WITH . ClassIdentifier
IDENTIFIER shift, and go to state 4
ClassIdentifier go to state 30
State 25
10 ForeignKeys: FOREIGN KEY . AttributeIdentifier REFERENCES ClassIdentifier
IDENTIFIER shift, and go to state 14
AttributeIdentifier go to state 31
State 26
13 Type: INTCLASS .
$default reduce using rule 13 (Type)
State 27
14 Type: STRCLASS .
$default reduce using rule 14 (Type)
State 28
15 Type: OID .
$default reduce using rule 15 (Type)
State 29
9 ClassAttributes: AttributeIdentifier Type .
$default reduce using rule 9 (ClassAttributes)
State 30
12 DisjointConstraints: DISJOINT WITH ClassIdentifier .
$default reduce using rule 12 (DisjointConstraints)
State 31
10 ForeignKeys: FOREIGN KEY AttributeIdentifier . REFERENCES ClassIdentifier
REFERENCES shift, and go to state 32
State 32
10 ForeignKeys: FOREIGN KEY AttributeIdentifier REFERENCES . ClassIdentifier
IDENTIFIER shift, and go to state 4
ClassIdentifier go to state 33
State 33
10 ForeignKeys: FOREIGN KEY AttributeIdentifier REFERENCES ClassIdentifier .
$default reduce using rule 10 (ForeignKeys)