|
@@ 8114-8274 (lines=161) @@
|
| 8111 |
|
|
| 8112 |
|
// $ANTLR start "consumable_resource_consumption_component_decision" |
| 8113 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:170:1: consumable_resource_consumption_component_decision : ( '<' parameter ( ',' parameter )* '>' )? 'CONSUMPTION' '(' par_value ')' -> ^( 'CONSUMPTION' par_value ( parameter )* ) ; |
| 8114 |
|
public final ddl3Parser.consumable_resource_consumption_component_decision_return consumable_resource_consumption_component_decision() throws RecognitionException { |
| 8115 |
|
ddl3Parser.consumable_resource_consumption_component_decision_return retval = new ddl3Parser.consumable_resource_consumption_component_decision_return(); |
| 8116 |
|
retval.start = input.LT(1); |
| 8117 |
|
int consumable_resource_consumption_component_decision_StartIndex = input.index(); |
| 8118 |
|
|
| 8119 |
|
Object root_0 = null; |
| 8120 |
|
|
| 8121 |
|
Token char_literal314=null; |
| 8122 |
|
Token char_literal316=null; |
| 8123 |
|
Token char_literal318=null; |
| 8124 |
|
Token string_literal319=null; |
| 8125 |
|
Token char_literal320=null; |
| 8126 |
|
Token char_literal322=null; |
| 8127 |
|
ParserRuleReturnScope parameter315 =null; |
| 8128 |
|
ParserRuleReturnScope parameter317 =null; |
| 8129 |
|
ParserRuleReturnScope par_value321 =null; |
| 8130 |
|
|
| 8131 |
|
Object char_literal314_tree=null; |
| 8132 |
|
Object char_literal316_tree=null; |
| 8133 |
|
Object char_literal318_tree=null; |
| 8134 |
|
Object string_literal319_tree=null; |
| 8135 |
|
Object char_literal320_tree=null; |
| 8136 |
|
Object char_literal322_tree=null; |
| 8137 |
|
RewriteRuleTokenStream stream_11=new RewriteRuleTokenStream(adaptor,"token 11"); |
| 8138 |
|
RewriteRuleTokenStream stream_23=new RewriteRuleTokenStream(adaptor,"token 23"); |
| 8139 |
|
RewriteRuleTokenStream stream_12=new RewriteRuleTokenStream(adaptor,"token 12"); |
| 8140 |
|
RewriteRuleTokenStream stream_36=new RewriteRuleTokenStream(adaptor,"token 36"); |
| 8141 |
|
RewriteRuleTokenStream stream_15=new RewriteRuleTokenStream(adaptor,"token 15"); |
| 8142 |
|
RewriteRuleTokenStream stream_20=new RewriteRuleTokenStream(adaptor,"token 20"); |
| 8143 |
|
RewriteRuleSubtreeStream stream_par_value=new RewriteRuleSubtreeStream(adaptor,"rule par_value"); |
| 8144 |
|
RewriteRuleSubtreeStream stream_parameter=new RewriteRuleSubtreeStream(adaptor,"rule parameter"); |
| 8145 |
|
|
| 8146 |
|
try { |
| 8147 |
|
if ( state.backtracking>0 && alreadyParsedRule(input, 41) ) { return retval; } |
| 8148 |
|
|
| 8149 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:171:2: ( ( '<' parameter ( ',' parameter )* '>' )? 'CONSUMPTION' '(' par_value ')' -> ^( 'CONSUMPTION' par_value ( parameter )* ) ) |
| 8150 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:171:4: ( '<' parameter ( ',' parameter )* '>' )? 'CONSUMPTION' '(' par_value ')' |
| 8151 |
|
{ |
| 8152 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:171:4: ( '<' parameter ( ',' parameter )* '>' )? |
| 8153 |
|
int alt54=2; |
| 8154 |
|
int LA54_0 = input.LA(1); |
| 8155 |
|
if ( (LA54_0==20) ) { |
| 8156 |
|
alt54=1; |
| 8157 |
|
} |
| 8158 |
|
switch (alt54) { |
| 8159 |
|
case 1 : |
| 8160 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:171:5: '<' parameter ( ',' parameter )* '>' |
| 8161 |
|
{ |
| 8162 |
|
char_literal314=(Token)match(input,20,FOLLOW_20_in_consumable_resource_consumption_component_decision1967); if (state.failed) return retval; |
| 8163 |
|
if ( state.backtracking==0 ) stream_20.add(char_literal314); |
| 8164 |
|
|
| 8165 |
|
pushFollow(FOLLOW_parameter_in_consumable_resource_consumption_component_decision1969); |
| 8166 |
|
parameter315=parameter(); |
| 8167 |
|
state._fsp--; |
| 8168 |
|
if (state.failed) return retval; |
| 8169 |
|
if ( state.backtracking==0 ) stream_parameter.add(parameter315.getTree()); |
| 8170 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:171:19: ( ',' parameter )* |
| 8171 |
|
loop53: |
| 8172 |
|
while (true) { |
| 8173 |
|
int alt53=2; |
| 8174 |
|
int LA53_0 = input.LA(1); |
| 8175 |
|
if ( (LA53_0==15) ) { |
| 8176 |
|
alt53=1; |
| 8177 |
|
} |
| 8178 |
|
|
| 8179 |
|
switch (alt53) { |
| 8180 |
|
case 1 : |
| 8181 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:171:20: ',' parameter |
| 8182 |
|
{ |
| 8183 |
|
char_literal316=(Token)match(input,15,FOLLOW_15_in_consumable_resource_consumption_component_decision1972); if (state.failed) return retval; |
| 8184 |
|
if ( state.backtracking==0 ) stream_15.add(char_literal316); |
| 8185 |
|
|
| 8186 |
|
pushFollow(FOLLOW_parameter_in_consumable_resource_consumption_component_decision1974); |
| 8187 |
|
parameter317=parameter(); |
| 8188 |
|
state._fsp--; |
| 8189 |
|
if (state.failed) return retval; |
| 8190 |
|
if ( state.backtracking==0 ) stream_parameter.add(parameter317.getTree()); |
| 8191 |
|
} |
| 8192 |
|
break; |
| 8193 |
|
|
| 8194 |
|
default : |
| 8195 |
|
break loop53; |
| 8196 |
|
} |
| 8197 |
|
} |
| 8198 |
|
|
| 8199 |
|
char_literal318=(Token)match(input,23,FOLLOW_23_in_consumable_resource_consumption_component_decision1978); if (state.failed) return retval; |
| 8200 |
|
if ( state.backtracking==0 ) stream_23.add(char_literal318); |
| 8201 |
|
|
| 8202 |
|
} |
| 8203 |
|
break; |
| 8204 |
|
|
| 8205 |
|
} |
| 8206 |
|
|
| 8207 |
|
string_literal319=(Token)match(input,36,FOLLOW_36_in_consumable_resource_consumption_component_decision1982); if (state.failed) return retval; |
| 8208 |
|
if ( state.backtracking==0 ) stream_36.add(string_literal319); |
| 8209 |
|
|
| 8210 |
|
char_literal320=(Token)match(input,11,FOLLOW_11_in_consumable_resource_consumption_component_decision1984); if (state.failed) return retval; |
| 8211 |
|
if ( state.backtracking==0 ) stream_11.add(char_literal320); |
| 8212 |
|
|
| 8213 |
|
pushFollow(FOLLOW_par_value_in_consumable_resource_consumption_component_decision1986); |
| 8214 |
|
par_value321=par_value(); |
| 8215 |
|
state._fsp--; |
| 8216 |
|
if (state.failed) return retval; |
| 8217 |
|
if ( state.backtracking==0 ) stream_par_value.add(par_value321.getTree()); |
| 8218 |
|
char_literal322=(Token)match(input,12,FOLLOW_12_in_consumable_resource_consumption_component_decision1988); if (state.failed) return retval; |
| 8219 |
|
if ( state.backtracking==0 ) stream_12.add(char_literal322); |
| 8220 |
|
|
| 8221 |
|
// AST REWRITE |
| 8222 |
|
// elements: parameter, 36, par_value |
| 8223 |
|
// token labels: |
| 8224 |
|
// rule labels: retval |
| 8225 |
|
// token list labels: |
| 8226 |
|
// rule list labels: |
| 8227 |
|
// wildcard labels: |
| 8228 |
|
if ( state.backtracking==0 ) { |
| 8229 |
|
retval.tree = root_0; |
| 8230 |
|
RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); |
| 8231 |
|
|
| 8232 |
|
root_0 = (Object)adaptor.nil(); |
| 8233 |
|
// 171:74: -> ^( 'CONSUMPTION' par_value ( parameter )* ) |
| 8234 |
|
{ |
| 8235 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:171:76: ^( 'CONSUMPTION' par_value ( parameter )* ) |
| 8236 |
|
{ |
| 8237 |
|
Object root_1 = (Object)adaptor.nil(); |
| 8238 |
|
root_1 = (Object)adaptor.becomeRoot(new DDLConsumableResourceComponentDecision(stream_36.nextToken()), root_1); |
| 8239 |
|
adaptor.addChild(root_1, stream_par_value.nextTree()); |
| 8240 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:171:142: ( parameter )* |
| 8241 |
|
while ( stream_parameter.hasNext() ) { |
| 8242 |
|
adaptor.addChild(root_1, stream_parameter.nextTree()); |
| 8243 |
|
} |
| 8244 |
|
stream_parameter.reset(); |
| 8245 |
|
|
| 8246 |
|
adaptor.addChild(root_0, root_1); |
| 8247 |
|
} |
| 8248 |
|
|
| 8249 |
|
} |
| 8250 |
|
|
| 8251 |
|
|
| 8252 |
|
retval.tree = root_0; |
| 8253 |
|
} |
| 8254 |
|
|
| 8255 |
|
} |
| 8256 |
|
|
| 8257 |
|
retval.stop = input.LT(-1); |
| 8258 |
|
|
| 8259 |
|
if ( state.backtracking==0 ) { |
| 8260 |
|
retval.tree = (Object)adaptor.rulePostProcessing(root_0); |
| 8261 |
|
adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); |
| 8262 |
|
} |
| 8263 |
|
} |
| 8264 |
|
catch (RecognitionException re) { |
| 8265 |
|
reportError(re); |
| 8266 |
|
recover(input,re); |
| 8267 |
|
retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); |
| 8268 |
|
} |
| 8269 |
|
finally { |
| 8270 |
|
// do for sure before leaving |
| 8271 |
|
if ( state.backtracking>0 ) { memoize(input, 41, consumable_resource_consumption_component_decision_StartIndex); } |
| 8272 |
|
|
| 8273 |
|
} |
| 8274 |
|
return retval; |
| 8275 |
|
} |
| 8276 |
|
// $ANTLR end "consumable_resource_consumption_component_decision" |
| 8277 |
|
|
|
@@ 7940-8100 (lines=161) @@
|
| 7937 |
|
|
| 7938 |
|
// $ANTLR start "consumable_resource_production_component_decision" |
| 7939 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:167:1: consumable_resource_production_component_decision : ( '<' parameter ( ',' parameter )* '>' )? 'PRODUCTION' '(' par_value ')' -> ^( 'PRODUCTION' par_value ( parameter )* ) ; |
| 7940 |
|
public final ddl3Parser.consumable_resource_production_component_decision_return consumable_resource_production_component_decision() throws RecognitionException { |
| 7941 |
|
ddl3Parser.consumable_resource_production_component_decision_return retval = new ddl3Parser.consumable_resource_production_component_decision_return(); |
| 7942 |
|
retval.start = input.LT(1); |
| 7943 |
|
int consumable_resource_production_component_decision_StartIndex = input.index(); |
| 7944 |
|
|
| 7945 |
|
Object root_0 = null; |
| 7946 |
|
|
| 7947 |
|
Token char_literal305=null; |
| 7948 |
|
Token char_literal307=null; |
| 7949 |
|
Token char_literal309=null; |
| 7950 |
|
Token string_literal310=null; |
| 7951 |
|
Token char_literal311=null; |
| 7952 |
|
Token char_literal313=null; |
| 7953 |
|
ParserRuleReturnScope parameter306 =null; |
| 7954 |
|
ParserRuleReturnScope parameter308 =null; |
| 7955 |
|
ParserRuleReturnScope par_value312 =null; |
| 7956 |
|
|
| 7957 |
|
Object char_literal305_tree=null; |
| 7958 |
|
Object char_literal307_tree=null; |
| 7959 |
|
Object char_literal309_tree=null; |
| 7960 |
|
Object string_literal310_tree=null; |
| 7961 |
|
Object char_literal311_tree=null; |
| 7962 |
|
Object char_literal313_tree=null; |
| 7963 |
|
RewriteRuleTokenStream stream_11=new RewriteRuleTokenStream(adaptor,"token 11"); |
| 7964 |
|
RewriteRuleTokenStream stream_23=new RewriteRuleTokenStream(adaptor,"token 23"); |
| 7965 |
|
RewriteRuleTokenStream stream_12=new RewriteRuleTokenStream(adaptor,"token 12"); |
| 7966 |
|
RewriteRuleTokenStream stream_15=new RewriteRuleTokenStream(adaptor,"token 15"); |
| 7967 |
|
RewriteRuleTokenStream stream_62=new RewriteRuleTokenStream(adaptor,"token 62"); |
| 7968 |
|
RewriteRuleTokenStream stream_20=new RewriteRuleTokenStream(adaptor,"token 20"); |
| 7969 |
|
RewriteRuleSubtreeStream stream_par_value=new RewriteRuleSubtreeStream(adaptor,"rule par_value"); |
| 7970 |
|
RewriteRuleSubtreeStream stream_parameter=new RewriteRuleSubtreeStream(adaptor,"rule parameter"); |
| 7971 |
|
|
| 7972 |
|
try { |
| 7973 |
|
if ( state.backtracking>0 && alreadyParsedRule(input, 40) ) { return retval; } |
| 7974 |
|
|
| 7975 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:168:2: ( ( '<' parameter ( ',' parameter )* '>' )? 'PRODUCTION' '(' par_value ')' -> ^( 'PRODUCTION' par_value ( parameter )* ) ) |
| 7976 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:168:4: ( '<' parameter ( ',' parameter )* '>' )? 'PRODUCTION' '(' par_value ')' |
| 7977 |
|
{ |
| 7978 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:168:4: ( '<' parameter ( ',' parameter )* '>' )? |
| 7979 |
|
int alt52=2; |
| 7980 |
|
int LA52_0 = input.LA(1); |
| 7981 |
|
if ( (LA52_0==20) ) { |
| 7982 |
|
alt52=1; |
| 7983 |
|
} |
| 7984 |
|
switch (alt52) { |
| 7985 |
|
case 1 : |
| 7986 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:168:5: '<' parameter ( ',' parameter )* '>' |
| 7987 |
|
{ |
| 7988 |
|
char_literal305=(Token)match(input,20,FOLLOW_20_in_consumable_resource_production_component_decision1921); if (state.failed) return retval; |
| 7989 |
|
if ( state.backtracking==0 ) stream_20.add(char_literal305); |
| 7990 |
|
|
| 7991 |
|
pushFollow(FOLLOW_parameter_in_consumable_resource_production_component_decision1923); |
| 7992 |
|
parameter306=parameter(); |
| 7993 |
|
state._fsp--; |
| 7994 |
|
if (state.failed) return retval; |
| 7995 |
|
if ( state.backtracking==0 ) stream_parameter.add(parameter306.getTree()); |
| 7996 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:168:19: ( ',' parameter )* |
| 7997 |
|
loop51: |
| 7998 |
|
while (true) { |
| 7999 |
|
int alt51=2; |
| 8000 |
|
int LA51_0 = input.LA(1); |
| 8001 |
|
if ( (LA51_0==15) ) { |
| 8002 |
|
alt51=1; |
| 8003 |
|
} |
| 8004 |
|
|
| 8005 |
|
switch (alt51) { |
| 8006 |
|
case 1 : |
| 8007 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:168:20: ',' parameter |
| 8008 |
|
{ |
| 8009 |
|
char_literal307=(Token)match(input,15,FOLLOW_15_in_consumable_resource_production_component_decision1926); if (state.failed) return retval; |
| 8010 |
|
if ( state.backtracking==0 ) stream_15.add(char_literal307); |
| 8011 |
|
|
| 8012 |
|
pushFollow(FOLLOW_parameter_in_consumable_resource_production_component_decision1928); |
| 8013 |
|
parameter308=parameter(); |
| 8014 |
|
state._fsp--; |
| 8015 |
|
if (state.failed) return retval; |
| 8016 |
|
if ( state.backtracking==0 ) stream_parameter.add(parameter308.getTree()); |
| 8017 |
|
} |
| 8018 |
|
break; |
| 8019 |
|
|
| 8020 |
|
default : |
| 8021 |
|
break loop51; |
| 8022 |
|
} |
| 8023 |
|
} |
| 8024 |
|
|
| 8025 |
|
char_literal309=(Token)match(input,23,FOLLOW_23_in_consumable_resource_production_component_decision1932); if (state.failed) return retval; |
| 8026 |
|
if ( state.backtracking==0 ) stream_23.add(char_literal309); |
| 8027 |
|
|
| 8028 |
|
} |
| 8029 |
|
break; |
| 8030 |
|
|
| 8031 |
|
} |
| 8032 |
|
|
| 8033 |
|
string_literal310=(Token)match(input,62,FOLLOW_62_in_consumable_resource_production_component_decision1936); if (state.failed) return retval; |
| 8034 |
|
if ( state.backtracking==0 ) stream_62.add(string_literal310); |
| 8035 |
|
|
| 8036 |
|
char_literal311=(Token)match(input,11,FOLLOW_11_in_consumable_resource_production_component_decision1938); if (state.failed) return retval; |
| 8037 |
|
if ( state.backtracking==0 ) stream_11.add(char_literal311); |
| 8038 |
|
|
| 8039 |
|
pushFollow(FOLLOW_par_value_in_consumable_resource_production_component_decision1940); |
| 8040 |
|
par_value312=par_value(); |
| 8041 |
|
state._fsp--; |
| 8042 |
|
if (state.failed) return retval; |
| 8043 |
|
if ( state.backtracking==0 ) stream_par_value.add(par_value312.getTree()); |
| 8044 |
|
char_literal313=(Token)match(input,12,FOLLOW_12_in_consumable_resource_production_component_decision1942); if (state.failed) return retval; |
| 8045 |
|
if ( state.backtracking==0 ) stream_12.add(char_literal313); |
| 8046 |
|
|
| 8047 |
|
// AST REWRITE |
| 8048 |
|
// elements: parameter, 62, par_value |
| 8049 |
|
// token labels: |
| 8050 |
|
// rule labels: retval |
| 8051 |
|
// token list labels: |
| 8052 |
|
// rule list labels: |
| 8053 |
|
// wildcard labels: |
| 8054 |
|
if ( state.backtracking==0 ) { |
| 8055 |
|
retval.tree = root_0; |
| 8056 |
|
RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); |
| 8057 |
|
|
| 8058 |
|
root_0 = (Object)adaptor.nil(); |
| 8059 |
|
// 168:73: -> ^( 'PRODUCTION' par_value ( parameter )* ) |
| 8060 |
|
{ |
| 8061 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:168:75: ^( 'PRODUCTION' par_value ( parameter )* ) |
| 8062 |
|
{ |
| 8063 |
|
Object root_1 = (Object)adaptor.nil(); |
| 8064 |
|
root_1 = (Object)adaptor.becomeRoot(new DDLConsumableResourceComponentDecision(stream_62.nextToken()), root_1); |
| 8065 |
|
adaptor.addChild(root_1, stream_par_value.nextTree()); |
| 8066 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:168:140: ( parameter )* |
| 8067 |
|
while ( stream_parameter.hasNext() ) { |
| 8068 |
|
adaptor.addChild(root_1, stream_parameter.nextTree()); |
| 8069 |
|
} |
| 8070 |
|
stream_parameter.reset(); |
| 8071 |
|
|
| 8072 |
|
adaptor.addChild(root_0, root_1); |
| 8073 |
|
} |
| 8074 |
|
|
| 8075 |
|
} |
| 8076 |
|
|
| 8077 |
|
|
| 8078 |
|
retval.tree = root_0; |
| 8079 |
|
} |
| 8080 |
|
|
| 8081 |
|
} |
| 8082 |
|
|
| 8083 |
|
retval.stop = input.LT(-1); |
| 8084 |
|
|
| 8085 |
|
if ( state.backtracking==0 ) { |
| 8086 |
|
retval.tree = (Object)adaptor.rulePostProcessing(root_0); |
| 8087 |
|
adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); |
| 8088 |
|
} |
| 8089 |
|
} |
| 8090 |
|
catch (RecognitionException re) { |
| 8091 |
|
reportError(re); |
| 8092 |
|
recover(input,re); |
| 8093 |
|
retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); |
| 8094 |
|
} |
| 8095 |
|
finally { |
| 8096 |
|
// do for sure before leaving |
| 8097 |
|
if ( state.backtracking>0 ) { memoize(input, 40, consumable_resource_production_component_decision_StartIndex); } |
| 8098 |
|
|
| 8099 |
|
} |
| 8100 |
|
return retval; |
| 8101 |
|
} |
| 8102 |
|
// $ANTLR end "consumable_resource_production_component_decision" |
| 8103 |
|
|
|
@@ 7687-7847 (lines=161) @@
|
| 7684 |
|
|
| 7685 |
|
// $ANTLR start "renewable_resource_component_decision" |
| 7686 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:161:1: renewable_resource_component_decision : ( '<' parameter ( ',' parameter )* '>' )? 'REQUIREMENT' '(' par_value ')' -> ^( 'REQUIREMENT' par_value ( parameter )* ) ; |
| 7687 |
|
public final ddl3Parser.renewable_resource_component_decision_return renewable_resource_component_decision() throws RecognitionException { |
| 7688 |
|
ddl3Parser.renewable_resource_component_decision_return retval = new ddl3Parser.renewable_resource_component_decision_return(); |
| 7689 |
|
retval.start = input.LT(1); |
| 7690 |
|
int renewable_resource_component_decision_StartIndex = input.index(); |
| 7691 |
|
|
| 7692 |
|
Object root_0 = null; |
| 7693 |
|
|
| 7694 |
|
Token char_literal294=null; |
| 7695 |
|
Token char_literal296=null; |
| 7696 |
|
Token char_literal298=null; |
| 7697 |
|
Token string_literal299=null; |
| 7698 |
|
Token char_literal300=null; |
| 7699 |
|
Token char_literal302=null; |
| 7700 |
|
ParserRuleReturnScope parameter295 =null; |
| 7701 |
|
ParserRuleReturnScope parameter297 =null; |
| 7702 |
|
ParserRuleReturnScope par_value301 =null; |
| 7703 |
|
|
| 7704 |
|
Object char_literal294_tree=null; |
| 7705 |
|
Object char_literal296_tree=null; |
| 7706 |
|
Object char_literal298_tree=null; |
| 7707 |
|
Object string_literal299_tree=null; |
| 7708 |
|
Object char_literal300_tree=null; |
| 7709 |
|
Object char_literal302_tree=null; |
| 7710 |
|
RewriteRuleTokenStream stream_11=new RewriteRuleTokenStream(adaptor,"token 11"); |
| 7711 |
|
RewriteRuleTokenStream stream_23=new RewriteRuleTokenStream(adaptor,"token 23"); |
| 7712 |
|
RewriteRuleTokenStream stream_12=new RewriteRuleTokenStream(adaptor,"token 12"); |
| 7713 |
|
RewriteRuleTokenStream stream_15=new RewriteRuleTokenStream(adaptor,"token 15"); |
| 7714 |
|
RewriteRuleTokenStream stream_63=new RewriteRuleTokenStream(adaptor,"token 63"); |
| 7715 |
|
RewriteRuleTokenStream stream_20=new RewriteRuleTokenStream(adaptor,"token 20"); |
| 7716 |
|
RewriteRuleSubtreeStream stream_par_value=new RewriteRuleSubtreeStream(adaptor,"rule par_value"); |
| 7717 |
|
RewriteRuleSubtreeStream stream_parameter=new RewriteRuleSubtreeStream(adaptor,"rule parameter"); |
| 7718 |
|
|
| 7719 |
|
try { |
| 7720 |
|
if ( state.backtracking>0 && alreadyParsedRule(input, 38) ) { return retval; } |
| 7721 |
|
|
| 7722 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:162:2: ( ( '<' parameter ( ',' parameter )* '>' )? 'REQUIREMENT' '(' par_value ')' -> ^( 'REQUIREMENT' par_value ( parameter )* ) ) |
| 7723 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:162:4: ( '<' parameter ( ',' parameter )* '>' )? 'REQUIREMENT' '(' par_value ')' |
| 7724 |
|
{ |
| 7725 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:162:4: ( '<' parameter ( ',' parameter )* '>' )? |
| 7726 |
|
int alt49=2; |
| 7727 |
|
int LA49_0 = input.LA(1); |
| 7728 |
|
if ( (LA49_0==20) ) { |
| 7729 |
|
alt49=1; |
| 7730 |
|
} |
| 7731 |
|
switch (alt49) { |
| 7732 |
|
case 1 : |
| 7733 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:162:5: '<' parameter ( ',' parameter )* '>' |
| 7734 |
|
{ |
| 7735 |
|
char_literal294=(Token)match(input,20,FOLLOW_20_in_renewable_resource_component_decision1860); if (state.failed) return retval; |
| 7736 |
|
if ( state.backtracking==0 ) stream_20.add(char_literal294); |
| 7737 |
|
|
| 7738 |
|
pushFollow(FOLLOW_parameter_in_renewable_resource_component_decision1862); |
| 7739 |
|
parameter295=parameter(); |
| 7740 |
|
state._fsp--; |
| 7741 |
|
if (state.failed) return retval; |
| 7742 |
|
if ( state.backtracking==0 ) stream_parameter.add(parameter295.getTree()); |
| 7743 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:162:19: ( ',' parameter )* |
| 7744 |
|
loop48: |
| 7745 |
|
while (true) { |
| 7746 |
|
int alt48=2; |
| 7747 |
|
int LA48_0 = input.LA(1); |
| 7748 |
|
if ( (LA48_0==15) ) { |
| 7749 |
|
alt48=1; |
| 7750 |
|
} |
| 7751 |
|
|
| 7752 |
|
switch (alt48) { |
| 7753 |
|
case 1 : |
| 7754 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:162:20: ',' parameter |
| 7755 |
|
{ |
| 7756 |
|
char_literal296=(Token)match(input,15,FOLLOW_15_in_renewable_resource_component_decision1865); if (state.failed) return retval; |
| 7757 |
|
if ( state.backtracking==0 ) stream_15.add(char_literal296); |
| 7758 |
|
|
| 7759 |
|
pushFollow(FOLLOW_parameter_in_renewable_resource_component_decision1867); |
| 7760 |
|
parameter297=parameter(); |
| 7761 |
|
state._fsp--; |
| 7762 |
|
if (state.failed) return retval; |
| 7763 |
|
if ( state.backtracking==0 ) stream_parameter.add(parameter297.getTree()); |
| 7764 |
|
} |
| 7765 |
|
break; |
| 7766 |
|
|
| 7767 |
|
default : |
| 7768 |
|
break loop48; |
| 7769 |
|
} |
| 7770 |
|
} |
| 7771 |
|
|
| 7772 |
|
char_literal298=(Token)match(input,23,FOLLOW_23_in_renewable_resource_component_decision1871); if (state.failed) return retval; |
| 7773 |
|
if ( state.backtracking==0 ) stream_23.add(char_literal298); |
| 7774 |
|
|
| 7775 |
|
} |
| 7776 |
|
break; |
| 7777 |
|
|
| 7778 |
|
} |
| 7779 |
|
|
| 7780 |
|
string_literal299=(Token)match(input,63,FOLLOW_63_in_renewable_resource_component_decision1875); if (state.failed) return retval; |
| 7781 |
|
if ( state.backtracking==0 ) stream_63.add(string_literal299); |
| 7782 |
|
|
| 7783 |
|
char_literal300=(Token)match(input,11,FOLLOW_11_in_renewable_resource_component_decision1877); if (state.failed) return retval; |
| 7784 |
|
if ( state.backtracking==0 ) stream_11.add(char_literal300); |
| 7785 |
|
|
| 7786 |
|
pushFollow(FOLLOW_par_value_in_renewable_resource_component_decision1879); |
| 7787 |
|
par_value301=par_value(); |
| 7788 |
|
state._fsp--; |
| 7789 |
|
if (state.failed) return retval; |
| 7790 |
|
if ( state.backtracking==0 ) stream_par_value.add(par_value301.getTree()); |
| 7791 |
|
char_literal302=(Token)match(input,12,FOLLOW_12_in_renewable_resource_component_decision1881); if (state.failed) return retval; |
| 7792 |
|
if ( state.backtracking==0 ) stream_12.add(char_literal302); |
| 7793 |
|
|
| 7794 |
|
// AST REWRITE |
| 7795 |
|
// elements: parameter, 63, par_value |
| 7796 |
|
// token labels: |
| 7797 |
|
// rule labels: retval |
| 7798 |
|
// token list labels: |
| 7799 |
|
// rule list labels: |
| 7800 |
|
// wildcard labels: |
| 7801 |
|
if ( state.backtracking==0 ) { |
| 7802 |
|
retval.tree = root_0; |
| 7803 |
|
RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); |
| 7804 |
|
|
| 7805 |
|
root_0 = (Object)adaptor.nil(); |
| 7806 |
|
// 162:74: -> ^( 'REQUIREMENT' par_value ( parameter )* ) |
| 7807 |
|
{ |
| 7808 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:162:76: ^( 'REQUIREMENT' par_value ( parameter )* ) |
| 7809 |
|
{ |
| 7810 |
|
Object root_1 = (Object)adaptor.nil(); |
| 7811 |
|
root_1 = (Object)adaptor.becomeRoot(new DDLRenewableResourceComponentDecision(stream_63.nextToken()), root_1); |
| 7812 |
|
adaptor.addChild(root_1, stream_par_value.nextTree()); |
| 7813 |
|
// /home/alessandro/opt/antlr/ddl3/ddl3.g:162:141: ( parameter )* |
| 7814 |
|
while ( stream_parameter.hasNext() ) { |
| 7815 |
|
adaptor.addChild(root_1, stream_parameter.nextTree()); |
| 7816 |
|
} |
| 7817 |
|
stream_parameter.reset(); |
| 7818 |
|
|
| 7819 |
|
adaptor.addChild(root_0, root_1); |
| 7820 |
|
} |
| 7821 |
|
|
| 7822 |
|
} |
| 7823 |
|
|
| 7824 |
|
|
| 7825 |
|
retval.tree = root_0; |
| 7826 |
|
} |
| 7827 |
|
|
| 7828 |
|
} |
| 7829 |
|
|
| 7830 |
|
retval.stop = input.LT(-1); |
| 7831 |
|
|
| 7832 |
|
if ( state.backtracking==0 ) { |
| 7833 |
|
retval.tree = (Object)adaptor.rulePostProcessing(root_0); |
| 7834 |
|
adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); |
| 7835 |
|
} |
| 7836 |
|
} |
| 7837 |
|
catch (RecognitionException re) { |
| 7838 |
|
reportError(re); |
| 7839 |
|
recover(input,re); |
| 7840 |
|
retval.tree = (Object)adaptor.errorNode(input, retval.start, input.LT(-1), re); |
| 7841 |
|
} |
| 7842 |
|
finally { |
| 7843 |
|
// do for sure before leaving |
| 7844 |
|
if ( state.backtracking>0 ) { memoize(input, 38, renewable_resource_component_decision_StartIndex); } |
| 7845 |
|
|
| 7846 |
|
} |
| 7847 |
|
return retval; |
| 7848 |
|
} |
| 7849 |
|
// $ANTLR end "renewable_resource_component_decision" |
| 7850 |
|
|