Browse Source

Parser fix (system defn parallel comp grammar).

git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@680 bbc10eb1-c90d-0410-af57-cb519fbb1720
master
Dave Parker 18 years ago
parent
commit
2ba554804a
  1. 52
      prism/src/parser/PrismParser.java
  2. 20
      prism/src/parser/PrismParser.jj

52
prism/src/parser/PrismParser.java

@ -1168,19 +1168,19 @@ public class PrismParser implements PrismParserConstants {
// System definition component // System definition component
static final public SystemDefn SystemDefn() throws ParseException { static final public SystemDefn SystemDefn() throws ParseException {
SystemDefn ret; SystemDefn ret;
ret = SystemInterleaved();
ret = SystemFullParallel();
{if (true) return ret;} {if (true) return ret;}
throw new Error("Missing return statement in function"); throw new Error("Missing return statement in function");
} }
// System definition component (interleaved parallel)
static final public SystemDefn SystemInterleaved() throws ParseException {
// System definition component (full parallel)
static final public SystemDefn SystemFullParallel() throws ParseException {
SystemDefn sys1 = null, sys2 = null; SystemDefn sys1 = null, sys2 = null;
SystemInterleaved par = null;
SystemFullParallel par = null;
Token begin; Token begin;
begin = getToken(1); begin = getToken(1);
sys1 = SystemFullParallel();
par = new SystemInterleaved(); par.addOperand(sys1);
sys1 = SystemInterleaved();
par = new SystemFullParallel(); par.addOperand(sys1);
label_12: label_12:
while (true) { while (true) {
if (jj_2_6(2147483647)) { if (jj_2_6(2147483647)) {
@ -1190,8 +1190,7 @@ public class PrismParser implements PrismParserConstants {
} }
jj_consume_token(OR); jj_consume_token(OR);
jj_consume_token(OR); jj_consume_token(OR);
jj_consume_token(OR);
sys2 = SystemFullParallel();
sys2 = SystemParallel();
par.addOperand(sys2); par.addOperand(sys2);
} }
if (par==null) { if (par==null) {
@ -1204,14 +1203,14 @@ public class PrismParser implements PrismParserConstants {
throw new Error("Missing return statement in function"); throw new Error("Missing return statement in function");
} }
// System definition component (full parallel)
static final public SystemDefn SystemFullParallel() throws ParseException {
// System definition component (interleaved parallel)
static final public SystemDefn SystemInterleaved() throws ParseException {
SystemDefn sys1 = null, sys2 = null; SystemDefn sys1 = null, sys2 = null;
SystemFullParallel par = null;
SystemInterleaved par = null;
Token begin; Token begin;
begin = getToken(1); begin = getToken(1);
sys1 = SystemParallel(); sys1 = SystemParallel();
par = new SystemFullParallel(); par.addOperand(sys1);
par = new SystemInterleaved(); par.addOperand(sys1);
label_13: label_13:
while (true) { while (true) {
if (jj_2_7(2147483647)) { if (jj_2_7(2147483647)) {
@ -1221,7 +1220,8 @@ public class PrismParser implements PrismParserConstants {
} }
jj_consume_token(OR); jj_consume_token(OR);
jj_consume_token(OR); jj_consume_token(OR);
sys2 = SystemParallel();
jj_consume_token(OR);
sys2 = SystemFullParallel();
par.addOperand(sys2); par.addOperand(sys2);
} }
if (par==null) { if (par==null) {
@ -2837,12 +2837,6 @@ public class PrismParser implements PrismParserConstants {
return false; return false;
} }
static final private boolean jj_3_7() {
if (jj_scan_token(OR)) return true;
if (jj_scan_token(OR)) return true;
return false;
}
static final private boolean jj_3R_68() { static final private boolean jj_3R_68() {
Token xsp; Token xsp;
xsp = jj_scanpos; xsp = jj_scanpos;
@ -2865,6 +2859,13 @@ public class PrismParser implements PrismParserConstants {
return false; return false;
} }
static final private boolean jj_3_7() {
if (jj_scan_token(OR)) return true;
if (jj_scan_token(OR)) return true;
if (jj_scan_token(OR)) return true;
return false;
}
static final private boolean jj_3R_121() { static final private boolean jj_3R_121() {
if (jj_scan_token(LBRACE)) return true; if (jj_scan_token(LBRACE)) return true;
if (jj_3R_33()) return true; if (jj_3R_33()) return true;
@ -3009,6 +3010,12 @@ public class PrismParser implements PrismParserConstants {
return false; return false;
} }
static final private boolean jj_3_6() {
if (jj_scan_token(OR)) return true;
if (jj_scan_token(OR)) return true;
return false;
}
static final private boolean jj_3R_123() { static final private boolean jj_3R_123() {
if (jj_3R_53()) return true; if (jj_3R_53()) return true;
if (jj_3R_33()) return true; if (jj_3R_33()) return true;
@ -3022,13 +3029,6 @@ public class PrismParser implements PrismParserConstants {
return false; return false;
} }
static final private boolean jj_3_6() {
if (jj_scan_token(OR)) return true;
if (jj_scan_token(OR)) return true;
if (jj_scan_token(OR)) return true;
return false;
}
static final private boolean jj_3R_109() { static final private boolean jj_3R_109() {
if (jj_scan_token(R)) return true; if (jj_scan_token(R)) return true;
Token xsp; Token xsp;

20
prism/src/parser/PrismParser.jj

@ -806,22 +806,22 @@ SystemDefn SystemDefn() :
SystemDefn ret; SystemDefn ret;
} }
{ {
ret = SystemInterleaved()
ret = SystemFullParallel()
{ return ret; } { return ret; }
} }
// System definition component (interleaved parallel)
// System definition component (full parallel)
SystemDefn SystemInterleaved() :
SystemDefn SystemFullParallel() :
{ {
SystemDefn sys1 = null, sys2 = null; SystemDefn sys1 = null, sys2 = null;
SystemInterleaved par = null;
SystemFullParallel par = null;
Token begin; Token begin;
} }
{ {
{ begin = getToken(1); } { begin = getToken(1); }
sys1 = SystemFullParallel()
( { par = new SystemInterleaved(); par.addOperand(sys1); } ( LOOKAHEAD(<OR> <OR> <OR>) <OR> <OR> <OR> sys2 = SystemFullParallel() { par.addOperand(sys2); } )* )
sys1 = SystemInterleaved()
( { par = new SystemFullParallel(); par.addOperand(sys1); } ( LOOKAHEAD(<OR> <OR>) <OR> <OR> sys2 = SystemParallel() { par.addOperand(sys2); } )* )
{ {
if (par==null) { if (par==null) {
return sys1; return sys1;
@ -833,18 +833,18 @@ SystemDefn SystemInterleaved() :
} }
} }
// System definition component (full parallel)
// System definition component (interleaved parallel)
SystemDefn SystemFullParallel() :
SystemDefn SystemInterleaved() :
{ {
SystemDefn sys1 = null, sys2 = null; SystemDefn sys1 = null, sys2 = null;
SystemFullParallel par = null;
SystemInterleaved par = null;
Token begin; Token begin;
} }
{ {
{ begin = getToken(1); } { begin = getToken(1); }
sys1 = SystemParallel() sys1 = SystemParallel()
( { par = new SystemFullParallel(); par.addOperand(sys1); } ( LOOKAHEAD(<OR> <OR>) <OR> <OR> sys2 = SystemParallel() { par.addOperand(sys2); } )* )
( { par = new SystemInterleaved(); par.addOperand(sys1); } ( LOOKAHEAD(<OR> <OR> <OR>) <OR> <OR> <OR> sys2 = SystemFullParallel() { par.addOperand(sys2); } )* )
{ {
if (par==null) { if (par==null) {
return sys1; return sys1;

Loading…
Cancel
Save