Skip to content

Commit b8c74b5

Browse files
committed
commented not important now
1 parent 7d04d20 commit b8c74b5

File tree

4 files changed

+34
-135
lines changed

4 files changed

+34
-135
lines changed

src/cup/parser.cup

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -51,30 +51,30 @@ start with program;
5151

5252
/* grammar */
5353

54-
program ::= rel_def | statment | expr_var;
55-
rel_def ::= VAR:v1 REL:r VAR:v2 L_BRA statment_def R_BRA {: System.out.println("znaleziono def relacji\n"); :}
56-
;
54+
program ::= statment | expr_var;//rel_def |
5755

58-
statment_def ::= VAR:v1 GT VAR:v2 {: System.out.println("ciało relacji\n"); :}
59-
| VAR:v1 LT VAR:v2 {: System.out.println("ciało relacji\n"); :}
60-
| VAR:v1 {: System.out.println("ciało relacji\n"); :}
61-
;
6256

63-
statment ::= VAR:v1 IS expr_var:e1 SEMI {: System.out.println("Statement\n"+v1+e1); variables_.put(v1,e1); :}
57+
statment ::= VAR:v1 IS expr_var:e1 SEMI {: System.out.println("Statement\n"+v1+e1); variables_.put(v1,e1); :}
6458
;
6559

66-
expr_rel ::= NUMBER:n1 REL:r NUMBER:n2 {: System.out.println("expr_rel\n"); :}
67-
;
6860

69-
expr_var ::= NUMBER:n1 {: System.out.println("expr\n"+n1); RESULT = n1; :}
70-
| VAR:v1 {: System.out.println("expr\n"+v1); RESULT = variables_.get(v1);:}
71-
| expr_rel:r {: System.out.println("expr\n"); :}
61+
expr_var ::= NUMBER:n1 {: System.out.println("expr\n"+n1); RESULT = n1; :}
62+
| VAR:v1 {: System.out.println("expr\n"+v1); RESULT = variables_.get(v1);:}
63+
| expr_rel:r {: System.out.println("expr\n"); :}
7264
;
65+
//rel_def ::= VAR:v1 REL:r VAR:v2 L_BRA statment_def R_BRA {: System.out.println("znaleziono def relacji\n"); :}
66+
// ;
7367

68+
//statment_def ::= VAR:v1 GT VAR:v2 {: System.out.println("ciało relacji\n"); :}
69+
// | VAR:v1 LT VAR:v2 {: System.out.println("ciało relacji\n"); :}
70+
// | VAR:v1 {: System.out.println("ciało relacji\n"); :}
71+
// ;
7472
//expr_set ::= SET_VAR:s1 IS L_BRA set_content R_BRA {: System.out.println("set\n"); :}
7573
// ;
7674
//set_content ::= NUMBER:n1 SET_DELI
7775
// | NUMBER:n1
7876
// ;
7977

78+
//expr_rel ::= NUMBER:n1 REL:r NUMBER:n2 {: System.out.println("expr_rel\n"); :}
79+
// ;
8080

src/jflex/test.flex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ SEMI = ";"
102102
<YYINITIAL> {SET_VAR} {return symbolFactory.newSymbol("SET_VAR",sym.SET_VAR, yytext());}
103103
<YYINITIAL> {SET_OPERATORS} {return symbolFactory.newSymbol("SET_OPERATORS",sym.SET_OPERATORS, yytext());}
104104
<YYINITIAL> {SET_DELI} {return symbolFactory.newSymbol("SET_DELI",sym.SET_DELI);}
105-
<YYINITIAL> {SEMI} {return symbolFactory.newSymbol("SEMI",sym.SEMI);}
105+
<YYINITIAL> {SEMI} {System.out.println(";");return symbolFactory.newSymbol("SEMI",sym.SEMI);}
106106

107107
[^] { emit_warning("Unrecognized character '" +yytext()+"' -- ignored"); }
108108
//[^] { throw new RuntimeException("Illegal character <" + yytext() + ">"); }

src/main/java/TestLexer.java

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/main/java/parser.java

Lines changed: 19 additions & 120 deletions
Original file line numberDiff line numberDiff line change
@@ -36,49 +36,35 @@ public final Class getSymbolContainer() {
3636
/** Production table. */
3737
protected static final short _production_table[][] =
3838
unpackFromStrings(new String[] {
39-
"\000\015\000\002\002\004\000\002\007\003\000\002\007" +
40-
"\003\000\002\007\003\000\002\004\010\000\002\005\005" +
41-
"\000\002\005\005\000\002\005\003\000\002\006\006\000" +
42-
"\002\003\005\000\002\002\003\000\002\002\003\000\002" +
43-
"\002\003" });
39+
"\000\007\000\002\002\004\000\002\007\003\000\002\007" +
40+
"\003\000\002\006\006\000\002\002\003\000\002\002\003" +
41+
"\000\002\002\003" });
4442

4543
/** Access to production table. */
4644
public short[][] production_table() {return _production_table;}
4745

4846
/** Parse-action table. */
4947
protected static final short[][] _action_table =
5048
unpackFromStrings(new String[] {
51-
"\000\031\000\006\016\010\017\005\001\002\000\004\002" +
52-
"\ufffe\001\002\000\010\002\ufff6\010\016\014\017\001\002" +
53-
"\000\004\002\015\001\002\000\004\002\uffff\001\002\000" +
54-
"\010\002\ufff7\013\ufff7\014\013\001\002\000\006\002\ufff5" +
55-
"\013\ufff5\001\002\000\004\002\000\001\002\000\004\016" +
56-
"\014\001\002\000\006\002\ufff8\013\ufff8\001\002\000\004" +
57-
"\002\001\001\002\000\006\016\010\017\031\001\002\000" +
58-
"\004\017\020\001\002\000\004\006\021\001\002\000\004" +
59-
"\017\022\001\002\000\010\004\026\005\025\007\ufffa\001" +
60-
"\002\000\004\007\024\001\002\000\004\002\ufffd\001\002" +
61-
"\000\004\017\030\001\002\000\004\017\027\001\002\000" +
62-
"\004\007\ufffc\001\002\000\004\007\ufffb\001\002\000\004" +
63-
"\013\ufff6\001\002\000\004\013\033\001\002\000\004\002" +
64-
"\ufff9\001\002" });
49+
"\000\014\000\006\016\010\017\005\001\002\000\004\002" +
50+
"\uffff\001\002\000\006\002\ufffc\010\013\001\002\000\004" +
51+
"\002\012\001\002\000\004\002\000\001\002\000\006\002" +
52+
"\ufffd\013\ufffd\001\002\000\006\002\ufffb\013\ufffb\001\002" +
53+
"\000\004\002\001\001\002\000\006\016\010\017\015\001" +
54+
"\002\000\004\013\016\001\002\000\004\013\ufffc\001\002" +
55+
"\000\004\002\ufffe\001\002" });
6556

6657
/** Access to parse-action table. */
6758
public short[][] action_table() {return _action_table;}
6859

6960
/** <code>reduce_goto</code> table. */
7061
protected static final short[][] _reduce_table =
7162
unpackFromStrings(new String[] {
72-
"\000\031\000\014\002\003\003\010\004\011\006\006\007" +
73-
"\005\001\001\000\002\001\001\000\002\001\001\000\002" +
74-
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
63+
"\000\014\000\012\002\003\003\010\006\006\007\005\001" +
7564
"\001\000\002\001\001\000\002\001\001\000\002\001\001" +
76-
"\000\002\001\001\000\006\002\031\003\010\001\001\000" +
77-
"\002\001\001\000\002\001\001\000\004\005\022\001\001" +
7865
"\000\002\001\001\000\002\001\001\000\002\001\001\000" +
79-
"\002\001\001\000\002\001\001\000\002\001\001\000\002" +
80-
"\001\001\000\002\001\001\000\002\001\001\000\002\001" +
81-
"\001" });
66+
"\002\001\001\000\006\002\013\003\010\001\001\000\002" +
67+
"\001\001\000\002\001\001\000\002\001\001" });
8268

8369
/** Access to <code>reduce_goto</code> table. */
8470
public short[][] reduce_table() {return _reduce_table;}
@@ -190,7 +176,7 @@ class CUP$parser$actions {
190176
return CUP$parser$result;
191177

192178
/*. . . . . . . . . . . . . . . . . . . .*/
193-
case 1: // program ::= rel_def
179+
case 1: // program ::= statment
194180
{
195181
Object RESULT =null;
196182

@@ -199,7 +185,7 @@ class CUP$parser$actions {
199185
return CUP$parser$result;
200186

201187
/*. . . . . . . . . . . . . . . . . . . .*/
202-
case 2: // program ::= statment
188+
case 2: // program ::= expr_var
203189
{
204190
Object RESULT =null;
205191

@@ -208,76 +194,7 @@ class CUP$parser$actions {
208194
return CUP$parser$result;
209195

210196
/*. . . . . . . . . . . . . . . . . . . .*/
211-
case 3: // program ::= expr_var
212-
{
213-
Object RESULT =null;
214-
215-
CUP$parser$result = parser.getSymbolFactory().newSymbol("program",5, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
216-
}
217-
return CUP$parser$result;
218-
219-
/*. . . . . . . . . . . . . . . . . . . .*/
220-
case 4: // rel_def ::= VAR REL VAR L_BRA statment_def R_BRA
221-
{
222-
Object RESULT =null;
223-
int v1left = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).left;
224-
int v1right = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)).right;
225-
String v1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value;
226-
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).left;
227-
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-4)).right;
228-
String r = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-4)).value;
229-
int v2left = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
230-
int v2right = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).right;
231-
String v2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
232-
System.out.println("znaleziono def relacji\n");
233-
CUP$parser$result = parser.getSymbolFactory().newSymbol("rel_def",2, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-5)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
234-
}
235-
return CUP$parser$result;
236-
237-
/*. . . . . . . . . . . . . . . . . . . .*/
238-
case 5: // statment_def ::= VAR GT VAR
239-
{
240-
Object RESULT =null;
241-
int v1left = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
242-
int v1right = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
243-
String v1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
244-
int v2left = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
245-
int v2right = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
246-
String v2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
247-
System.out.println("ciało relacji\n");
248-
CUP$parser$result = parser.getSymbolFactory().newSymbol("statment_def",3, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
249-
}
250-
return CUP$parser$result;
251-
252-
/*. . . . . . . . . . . . . . . . . . . .*/
253-
case 6: // statment_def ::= VAR LT VAR
254-
{
255-
Object RESULT =null;
256-
int v1left = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
257-
int v1right = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
258-
String v1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
259-
int v2left = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
260-
int v2right = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
261-
String v2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
262-
System.out.println("ciało relacji\n");
263-
CUP$parser$result = parser.getSymbolFactory().newSymbol("statment_def",3, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
264-
}
265-
return CUP$parser$result;
266-
267-
/*. . . . . . . . . . . . . . . . . . . .*/
268-
case 7: // statment_def ::= VAR
269-
{
270-
Object RESULT =null;
271-
int v1left = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
272-
int v1right = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
273-
String v1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
274-
System.out.println("ciało relacji\n");
275-
CUP$parser$result = parser.getSymbolFactory().newSymbol("statment_def",3, ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
276-
}
277-
return CUP$parser$result;
278-
279-
/*. . . . . . . . . . . . . . . . . . . .*/
280-
case 8: // statment ::= VAR IS expr_var SEMI
197+
case 3: // statment ::= VAR IS expr_var SEMI
281198
{
282199
Object RESULT =null;
283200
int v1left = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-3)).left;
@@ -292,25 +209,7 @@ class CUP$parser$actions {
292209
return CUP$parser$result;
293210

294211
/*. . . . . . . . . . . . . . . . . . . .*/
295-
case 9: // expr_rel ::= NUMBER REL NUMBER
296-
{
297-
Integer RESULT =null;
298-
int n1left = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).left;
299-
int n1right = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)).right;
300-
Integer n1 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
301-
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).left;
302-
int rright = ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-1)).right;
303-
String r = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
304-
int n2left = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
305-
int n2right = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).right;
306-
Integer n2 = (Integer)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
307-
System.out.println("expr_rel\n");
308-
CUP$parser$result = parser.getSymbolFactory().newSymbol("expr_rel",1, ((java_cup.runtime.Symbol)CUP$parser$stack.elementAt(CUP$parser$top-2)), ((java_cup.runtime.Symbol)CUP$parser$stack.peek()), RESULT);
309-
}
310-
return CUP$parser$result;
311-
312-
/*. . . . . . . . . . . . . . . . . . . .*/
313-
case 10: // expr_var ::= NUMBER
212+
case 4: // expr_var ::= NUMBER
314213
{
315214
Integer RESULT =null;
316215
int n1left = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
@@ -322,7 +221,7 @@ class CUP$parser$actions {
322221
return CUP$parser$result;
323222

324223
/*. . . . . . . . . . . . . . . . . . . .*/
325-
case 11: // expr_var ::= VAR
224+
case 5: // expr_var ::= VAR
326225
{
327226
Integer RESULT =null;
328227
int v1left = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;
@@ -334,7 +233,7 @@ class CUP$parser$actions {
334233
return CUP$parser$result;
335234

336235
/*. . . . . . . . . . . . . . . . . . . .*/
337-
case 12: // expr_var ::= expr_rel
236+
case 6: // expr_var ::= expr_rel
338237
{
339238
Integer RESULT =null;
340239
int rleft = ((java_cup.runtime.Symbol)CUP$parser$stack.peek()).left;

0 commit comments

Comments
 (0)