# $ANTLR 3.1.3 Mar 17, 2009 19:23:44 sdl92.g 2014-10-26 11:44:06 import sys from antlr3 import * from antlr3.compat import set, frozenset from antlr3.tree import * # for convenience in actions HIDDEN = BaseRecognizer.HIDDEN # token types NUMBER_OF_INSTANCES=60 COMMENT2=210 MANTISSA=167 ROUTE=79 MOD=159 GROUND=44 PARAM=65 NOT=161 SEQOF=82 TEXTAREA_CONTENT=103 EOF=-1 ACTION=4 CREATE=148 IMPORT=171 FPAR=43 NEXTSTATE=59 RETURN=78 THIS=149 CHANNEL=13 VIAPATH=113 ENDCONNECTION=126 EXPORT=32 EQ=142 INFORMAL_TEXT=49 GEODE=175 D=184 E=187 F=194 GE=147 G=195 A=181 IMPLIES=152 B=203 C=185 L=186 M=191 N=182 O=196 TERMINATOR=100 H=197 I=193 J=204 ELSE=27 K=188 U=200 T=198 W=202 V=201 STOP=91 Q=211 INT=124 P=189 S=192 R=190 VALUE=109 Y=183 X=199 FI=35 Z=212 MINUS_INFINITY=166 WS=209 OUT=132 NONE=133 INPUT_NONE=52 CONSTANT=22 GT=144 CALL=138 END=177 FLOATING_LABEL=41 IFTHENELSE=47 T__215=215 T__216=216 T__213=213 T__214=214 T__219=219 T__217=217 T__218=218 INPUT=51 ENDSUBSTRUCTURE=131 FLOAT=40 SUBSTRUCTURE=130 PAREN=68 ASTERISK=129 INOUT=50 STR=206 STIMULUS=90 SELECTOR=81 THEN=104 ENDDECISION=140 OPEN_RANGE=62 SIGNAL=85 ENDSYSTEM=114 PLUS=155 CHOICE=14 TASK_BODY=99 PARAMS=67 CLOSED_RANGE=16 STATE=88 STATELIST=89 TO=106 ASSIG_OP=178 SIGNALROUTE=119 ENDSYNTYPE=30 SORT=87 SET=84 TEXT=101 SEMI=127 TEXTAREA=102 BLOCK=12 CIF=15 START=125 DECISION=25 DIV=158 PROCESS=73 STRING=92 INPUTLIST=53 EXTERNAL=34 LT=145 EXPONENT=169 TRANSITION=107 ENDBLOCK=118 RESET=77 ENDNEWTYPE=29 SIGNAL_LIST=86 ENDTEXT=31 CONNECTION=21 SYSTEM=97 CONNECT=20 L_PAREN=135 PROCEDURE_CALL=71 BASE=168 COMMENT=17 SYNONYM=94 ENDALTERNATIVE=139 ARRAY=8 ACTIVE=170 ENDFOR=151 FIELD_NAME=37 OCTSTR=61 VIEW=172 EMPTYSTR=28 ENDCHANNEL=115 NULL=164 ANSWER=7 CONDITIONAL=19 PRIMARY=69 TASK=98 REFERENCED=121 ALPHA=207 SEQUENCE=83 VARIABLE=110 PRIORITY=134 SPECIFIC=174 OR=153 COMPOSITE_STATE=18 FIELD=36 USE=108 FROM=116 ENDPROCEDURE=123 FALSE=163 OUTPUT=63 SYNONYM_LIST=95 APPEND=157 L_BRACKET=179 DIGITS=26 HYPERLINK=45 NEWTYPE=58 Exponent=208 FOR=42 ENDSTATE=128 PROCEDURE_NAME=72 CONSTANTS=23 AND=120 ID=150 FLOAT2=39 IF=46 IN=48 PROVIDED=74 COMMA=137 ALL=5 ASNFILENAME=176 DOT=205 EXPRESSION=33 WITH=117 BITSTR=11 XOR=154 DASH=156 DCL=24 ENDPROCESS=122 RANGE=76 VIA=112 SAVE=80 LITERAL=56 STRUCT=93 FIELDS=38 REM=160 TRUE=162 R_BRACKET=180 PROCEDURE=70 JOIN=54 R_PAREN=136 OUTPUT_BODY=64 ANY=141 NEQ=143 QUESTION=75 LABEL=55 PARAMNAMES=66 PLUS_INFINITY=165 ASN1=9 KEEP=173 NEG=57 ASSIGN=10 VARIABLES=111 ALTERNATIVE=6 SYNTYPE=96 TIMER=105 LE=146 # token names tokenNames = [ "", "", "", "", "ACTION", "ALL", "ALTERNATIVE", "ANSWER", "ARRAY", "ASN1", "ASSIGN", "BITSTR", "BLOCK", "CHANNEL", "CHOICE", "CIF", "CLOSED_RANGE", "COMMENT", "COMPOSITE_STATE", "CONDITIONAL", "CONNECT", "CONNECTION", "CONSTANT", "CONSTANTS", "DCL", "DECISION", "DIGITS", "ELSE", "EMPTYSTR", "ENDNEWTYPE", "ENDSYNTYPE", "ENDTEXT", "EXPORT", "EXPRESSION", "EXTERNAL", "FI", "FIELD", "FIELD_NAME", "FIELDS", "FLOAT2", "FLOAT", "FLOATING_LABEL", "FOR", "FPAR", "GROUND", "HYPERLINK", "IF", "IFTHENELSE", "IN", "INFORMAL_TEXT", "INOUT", "INPUT", "INPUT_NONE", "INPUTLIST", "JOIN", "LABEL", "LITERAL", "NEG", "NEWTYPE", "NEXTSTATE", "NUMBER_OF_INSTANCES", "OCTSTR", "OPEN_RANGE", "OUTPUT", "OUTPUT_BODY", "PARAM", "PARAMNAMES", "PARAMS", "PAREN", "PRIMARY", "PROCEDURE", "PROCEDURE_CALL", "PROCEDURE_NAME", "PROCESS", "PROVIDED", "QUESTION", "RANGE", "RESET", "RETURN", "ROUTE", "SAVE", "SELECTOR", "SEQOF", "SEQUENCE", "SET", "SIGNAL", "SIGNAL_LIST", "SORT", "STATE", "STATELIST", "STIMULUS", "STOP", "STRING", "STRUCT", "SYNONYM", "SYNONYM_LIST", "SYNTYPE", "SYSTEM", "TASK", "TASK_BODY", "TERMINATOR", "TEXT", "TEXTAREA", "TEXTAREA_CONTENT", "THEN", "TIMER", "TO", "TRANSITION", "USE", "VALUE", "VARIABLE", "VARIABLES", "VIA", "VIAPATH", "ENDSYSTEM", "ENDCHANNEL", "FROM", "WITH", "ENDBLOCK", "SIGNALROUTE", "AND", "REFERENCED", "ENDPROCESS", "ENDPROCEDURE", "INT", "START", "ENDCONNECTION", "SEMI", "ENDSTATE", "ASTERISK", "SUBSTRUCTURE", "ENDSUBSTRUCTURE", "OUT", "NONE", "PRIORITY", "L_PAREN", "R_PAREN", "COMMA", "CALL", "ENDALTERNATIVE", "ENDDECISION", "ANY", "EQ", "NEQ", "GT", "LT", "LE", "GE", "CREATE", "THIS", "ID", "ENDFOR", "IMPLIES", "OR", "XOR", "PLUS", "DASH", "APPEND", "DIV", "MOD", "REM", "NOT", "TRUE", "FALSE", "NULL", "PLUS_INFINITY", "MINUS_INFINITY", "MANTISSA", "BASE", "EXPONENT", "ACTIVE", "IMPORT", "VIEW", "KEEP", "SPECIFIC", "GEODE", "ASNFILENAME", "END", "ASSIG_OP", "L_BRACKET", "R_BRACKET", "A", "N", "Y", "D", "C", "L", "E", "K", "P", "R", "M", "S", "I", "F", "G", "O", "H", "T", "X", "U", "V", "W", "B", "J", "DOT", "STR", "ALPHA", "Exponent", "WS", "COMMENT2", "Q", "Z", "':'", "'!'", "'(.'", "'.)'", "'ERROR'", "'/* CIF'", "'*/'" ] class sdl92Parser(Parser): grammarFileName = "sdl92.g" antlr_version = version_str_to_tuple("3.1.3 Mar 17, 2009 19:23:44") antlr_version_str = "3.1.3 Mar 17, 2009 19:23:44" tokenNames = tokenNames def __init__(self, input, state=None, *args, **kwargs): if state is None: state = RecognizerSharedState() super(sdl92Parser, self).__init__(input, state, *args, **kwargs) self.dfa19 = self.DFA19( self, 19, eot = self.DFA19_eot, eof = self.DFA19_eof, min = self.DFA19_min, max = self.DFA19_max, accept = self.DFA19_accept, special = self.DFA19_special, transition = self.DFA19_transition ) self.dfa30 = self.DFA30( self, 30, eot = self.DFA30_eot, eof = self.DFA30_eof, min = self.DFA30_min, max = self.DFA30_max, accept = self.DFA30_accept, special = self.DFA30_special, transition = self.DFA30_transition ) self.dfa37 = self.DFA37( self, 37, eot = self.DFA37_eot, eof = self.DFA37_eof, min = self.DFA37_min, max = self.DFA37_max, accept = self.DFA37_accept, special = self.DFA37_special, transition = self.DFA37_transition ) self.dfa43 = self.DFA43( self, 43, eot = self.DFA43_eot, eof = self.DFA43_eof, min = self.DFA43_min, max = self.DFA43_max, accept = self.DFA43_accept, special = self.DFA43_special, transition = self.DFA43_transition ) self.dfa44 = self.DFA44( self, 44, eot = self.DFA44_eot, eof = self.DFA44_eof, min = self.DFA44_min, max = self.DFA44_max, accept = self.DFA44_accept, special = self.DFA44_special, transition = self.DFA44_transition ) self.dfa48 = self.DFA48( self, 48, eot = self.DFA48_eot, eof = self.DFA48_eof, min = self.DFA48_min, max = self.DFA48_max, accept = self.DFA48_accept, special = self.DFA48_special, transition = self.DFA48_transition ) self.dfa66 = self.DFA66( self, 66, eot = self.DFA66_eot, eof = self.DFA66_eof, min = self.DFA66_min, max = self.DFA66_max, accept = self.DFA66_accept, special = self.DFA66_special, transition = self.DFA66_transition ) self.dfa67 = self.DFA67( self, 67, eot = self.DFA67_eot, eof = self.DFA67_eof, min = self.DFA67_min, max = self.DFA67_max, accept = self.DFA67_accept, special = self.DFA67_special, transition = self.DFA67_transition ) self.dfa68 = self.DFA68( self, 68, eot = self.DFA68_eot, eof = self.DFA68_eof, min = self.DFA68_min, max = self.DFA68_max, accept = self.DFA68_accept, special = self.DFA68_special, transition = self.DFA68_transition ) self.dfa72 = self.DFA72( self, 72, eot = self.DFA72_eot, eof = self.DFA72_eof, min = self.DFA72_min, max = self.DFA72_max, accept = self.DFA72_accept, special = self.DFA72_special, transition = self.DFA72_transition ) self.dfa83 = self.DFA83( self, 83, eot = self.DFA83_eot, eof = self.DFA83_eof, min = self.DFA83_min, max = self.DFA83_max, accept = self.DFA83_accept, special = self.DFA83_special, transition = self.DFA83_transition ) self.dfa84 = self.DFA84( self, 84, eot = self.DFA84_eot, eof = self.DFA84_eof, min = self.DFA84_min, max = self.DFA84_max, accept = self.DFA84_accept, special = self.DFA84_special, transition = self.DFA84_transition ) self.dfa92 = self.DFA92( self, 92, eot = self.DFA92_eot, eof = self.DFA92_eof, min = self.DFA92_min, max = self.DFA92_max, accept = self.DFA92_accept, special = self.DFA92_special, transition = self.DFA92_transition ) self.dfa89 = self.DFA89( self, 89, eot = self.DFA89_eot, eof = self.DFA89_eof, min = self.DFA89_min, max = self.DFA89_max, accept = self.DFA89_accept, special = self.DFA89_special, transition = self.DFA89_transition ) self.dfa90 = self.DFA90( self, 90, eot = self.DFA90_eot, eof = self.DFA90_eof, min = self.DFA90_min, max = self.DFA90_max, accept = self.DFA90_accept, special = self.DFA90_special, transition = self.DFA90_transition ) self.dfa91 = self.DFA91( self, 91, eot = self.DFA91_eot, eof = self.DFA91_eof, min = self.DFA91_min, max = self.DFA91_max, accept = self.DFA91_accept, special = self.DFA91_special, transition = self.DFA91_transition ) self.dfa93 = self.DFA93( self, 93, eot = self.DFA93_eot, eof = self.DFA93_eof, min = self.DFA93_min, max = self.DFA93_max, accept = self.DFA93_accept, special = self.DFA93_special, transition = self.DFA93_transition ) self.dfa94 = self.DFA94( self, 94, eot = self.DFA94_eot, eof = self.DFA94_eof, min = self.DFA94_min, max = self.DFA94_max, accept = self.DFA94_accept, special = self.DFA94_special, transition = self.DFA94_transition ) self.dfa105 = self.DFA105( self, 105, eot = self.DFA105_eot, eof = self.DFA105_eof, min = self.DFA105_min, max = self.DFA105_max, accept = self.DFA105_accept, special = self.DFA105_special, transition = self.DFA105_transition ) self.dfa103 = self.DFA103( self, 103, eot = self.DFA103_eot, eof = self.DFA103_eof, min = self.DFA103_min, max = self.DFA103_max, accept = self.DFA103_accept, special = self.DFA103_special, transition = self.DFA103_transition ) self.dfa113 = self.DFA113( self, 113, eot = self.DFA113_eot, eof = self.DFA113_eof, min = self.DFA113_min, max = self.DFA113_max, accept = self.DFA113_accept, special = self.DFA113_special, transition = self.DFA113_transition ) self.dfa119 = self.DFA119( self, 119, eot = self.DFA119_eot, eof = self.DFA119_eof, min = self.DFA119_min, max = self.DFA119_max, accept = self.DFA119_accept, special = self.DFA119_special, transition = self.DFA119_transition ) self.dfa152 = self.DFA152( self, 152, eot = self.DFA152_eot, eof = self.DFA152_eof, min = self.DFA152_min, max = self.DFA152_max, accept = self.DFA152_accept, special = self.DFA152_special, transition = self.DFA152_transition ) self.dfa157 = self.DFA157( self, 157, eot = self.DFA157_eot, eof = self.DFA157_eof, min = self.DFA157_min, max = self.DFA157_max, accept = self.DFA157_accept, special = self.DFA157_special, transition = self.DFA157_transition ) self.dfa158 = self.DFA158( self, 158, eot = self.DFA158_eot, eof = self.DFA158_eof, min = self.DFA158_min, max = self.DFA158_max, accept = self.DFA158_accept, special = self.DFA158_special, transition = self.DFA158_transition ) self.dfa162 = self.DFA162( self, 162, eot = self.DFA162_eot, eof = self.DFA162_eof, min = self.DFA162_min, max = self.DFA162_max, accept = self.DFA162_accept, special = self.DFA162_special, transition = self.DFA162_transition ) self.dfa171 = self.DFA171( self, 171, eot = self.DFA171_eot, eof = self.DFA171_eof, min = self.DFA171_min, max = self.DFA171_max, accept = self.DFA171_accept, special = self.DFA171_special, transition = self.DFA171_transition ) self._adaptor = None self.adaptor = CommonTreeAdaptor() def getTreeAdaptor(self): return self._adaptor def setTreeAdaptor(self, adaptor): self._adaptor = adaptor adaptor = property(getTreeAdaptor, setTreeAdaptor) class pr_file_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.pr_file_return, self).__init__() self.tree = None # $ANTLR start "pr_file" # sdl92.g:138:1: pr_file : ( use_clause | system_definition | process_definition )+ ; def pr_file(self, ): retval = self.pr_file_return() retval.start = self.input.LT(1) root_0 = None use_clause1 = None system_definition2 = None process_definition3 = None try: try: # sdl92.g:139:9: ( ( use_clause | system_definition | process_definition )+ ) # sdl92.g:139:17: ( use_clause | system_definition | process_definition )+ pass root_0 = self._adaptor.nil() # sdl92.g:139:17: ( use_clause | system_definition | process_definition )+ cnt1 = 0 while True: #loop1 alt1 = 4 LA1 = self.input.LA(1) if LA1 == 218: LA1_2 = self.input.LA(2) if (LA1_2 == ANSWER or LA1_2 == COMMENT or LA1_2 == CONNECT or LA1_2 == DECISION or LA1_2 == INPUT or (JOIN <= LA1_2 <= LABEL) or LA1_2 == NEXTSTATE or LA1_2 == OUTPUT or (PROCEDURE <= LA1_2 <= PROCEDURE_CALL) or (PROCESS <= LA1_2 <= PROVIDED) or LA1_2 == RETURN or LA1_2 == STATE or LA1_2 == STOP or LA1_2 == TASK or LA1_2 == TEXT or LA1_2 == START) : alt1 = 3 elif (LA1_2 == KEEP) : alt1 = 1 elif LA1 == USE: alt1 = 1 elif LA1 == SYSTEM: alt1 = 2 elif LA1 == PROCESS: alt1 = 3 if alt1 == 1: # sdl92.g:139:18: use_clause pass self._state.following.append(self.FOLLOW_use_clause_in_pr_file1288) use_clause1 = self.use_clause() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, use_clause1.tree) elif alt1 == 2: # sdl92.g:140:19: system_definition pass self._state.following.append(self.FOLLOW_system_definition_in_pr_file1308) system_definition2 = self.system_definition() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, system_definition2.tree) elif alt1 == 3: # sdl92.g:141:19: process_definition pass self._state.following.append(self.FOLLOW_process_definition_in_pr_file1328) process_definition3 = self.process_definition() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, process_definition3.tree) else: if cnt1 >= 1: break #loop1 if self._state.backtracking > 0: raise BacktrackingFailed eee = EarlyExitException(1, self.input) raise eee cnt1 += 1 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "pr_file" class system_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.system_definition_return, self).__init__() self.tree = None # $ANTLR start "system_definition" # sdl92.g:144:1: system_definition : SYSTEM system_name end ( entity_in_system )* ENDSYSTEM ( system_name )? end -> ^( SYSTEM system_name ( entity_in_system )* ) ; def system_definition(self, ): retval = self.system_definition_return() retval.start = self.input.LT(1) root_0 = None SYSTEM4 = None ENDSYSTEM8 = None system_name5 = None end6 = None entity_in_system7 = None system_name9 = None end10 = None SYSTEM4_tree = None ENDSYSTEM8_tree = None stream_ENDSYSTEM = RewriteRuleTokenStream(self._adaptor, "token ENDSYSTEM") stream_SYSTEM = RewriteRuleTokenStream(self._adaptor, "token SYSTEM") stream_entity_in_system = RewriteRuleSubtreeStream(self._adaptor, "rule entity_in_system") stream_system_name = RewriteRuleSubtreeStream(self._adaptor, "rule system_name") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:145:9: ( SYSTEM system_name end ( entity_in_system )* ENDSYSTEM ( system_name )? end -> ^( SYSTEM system_name ( entity_in_system )* ) ) # sdl92.g:145:17: SYSTEM system_name end ( entity_in_system )* ENDSYSTEM ( system_name )? end pass SYSTEM4=self.match(self.input, SYSTEM, self.FOLLOW_SYSTEM_in_system_definition1353) if self._state.backtracking == 0: stream_SYSTEM.add(SYSTEM4) self._state.following.append(self.FOLLOW_system_name_in_system_definition1355) system_name5 = self.system_name() self._state.following.pop() if self._state.backtracking == 0: stream_system_name.add(system_name5.tree) self._state.following.append(self.FOLLOW_end_in_system_definition1357) end6 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end6.tree) # sdl92.g:146:17: ( entity_in_system )* while True: #loop2 alt2 = 2 LA2_0 = self.input.LA(1) if ((BLOCK <= LA2_0 <= CHANNEL) or LA2_0 == PROCEDURE or LA2_0 == SIGNAL or LA2_0 == 218) : alt2 = 1 if alt2 == 1: # sdl92.g:0:0: entity_in_system pass self._state.following.append(self.FOLLOW_entity_in_system_in_system_definition1375) entity_in_system7 = self.entity_in_system() self._state.following.pop() if self._state.backtracking == 0: stream_entity_in_system.add(entity_in_system7.tree) else: break #loop2 ENDSYSTEM8=self.match(self.input, ENDSYSTEM, self.FOLLOW_ENDSYSTEM_in_system_definition1394) if self._state.backtracking == 0: stream_ENDSYSTEM.add(ENDSYSTEM8) # sdl92.g:147:27: ( system_name )? alt3 = 2 LA3_0 = self.input.LA(1) if (LA3_0 == ID) : alt3 = 1 if alt3 == 1: # sdl92.g:0:0: system_name pass self._state.following.append(self.FOLLOW_system_name_in_system_definition1396) system_name9 = self.system_name() self._state.following.pop() if self._state.backtracking == 0: stream_system_name.add(system_name9.tree) self._state.following.append(self.FOLLOW_end_in_system_definition1399) end10 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end10.tree) # AST Rewrite # elements: entity_in_system, system_name, SYSTEM # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 148:9: -> ^( SYSTEM system_name ( entity_in_system )* ) # sdl92.g:148:17: ^( SYSTEM system_name ( entity_in_system )* ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_SYSTEM.nextNode(), root_1) self._adaptor.addChild(root_1, stream_system_name.nextTree()) # sdl92.g:148:38: ( entity_in_system )* while stream_entity_in_system.hasNext(): self._adaptor.addChild(root_1, stream_entity_in_system.nextTree()) stream_entity_in_system.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "system_definition" class use_clause_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.use_clause_return, self).__init__() self.tree = None # $ANTLR start "use_clause" # sdl92.g:151:1: use_clause : ( use_asn1 )? USE package_name end -> ^( USE ( use_asn1 )? ( end )? package_name ) ; def use_clause(self, ): retval = self.use_clause_return() retval.start = self.input.LT(1) root_0 = None USE12 = None use_asn111 = None package_name13 = None end14 = None USE12_tree = None stream_USE = RewriteRuleTokenStream(self._adaptor, "token USE") stream_use_asn1 = RewriteRuleSubtreeStream(self._adaptor, "rule use_asn1") stream_package_name = RewriteRuleSubtreeStream(self._adaptor, "rule package_name") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:152:9: ( ( use_asn1 )? USE package_name end -> ^( USE ( use_asn1 )? ( end )? package_name ) ) # sdl92.g:152:17: ( use_asn1 )? USE package_name end pass # sdl92.g:152:17: ( use_asn1 )? alt4 = 2 LA4_0 = self.input.LA(1) if (LA4_0 == 218) : alt4 = 1 if alt4 == 1: # sdl92.g:0:0: use_asn1 pass self._state.following.append(self.FOLLOW_use_asn1_in_use_clause1446) use_asn111 = self.use_asn1() self._state.following.pop() if self._state.backtracking == 0: stream_use_asn1.add(use_asn111.tree) USE12=self.match(self.input, USE, self.FOLLOW_USE_in_use_clause1465) if self._state.backtracking == 0: stream_USE.add(USE12) self._state.following.append(self.FOLLOW_package_name_in_use_clause1467) package_name13 = self.package_name() self._state.following.pop() if self._state.backtracking == 0: stream_package_name.add(package_name13.tree) self._state.following.append(self.FOLLOW_end_in_use_clause1469) end14 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end14.tree) # AST Rewrite # elements: USE, end, package_name, use_asn1 # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 154:9: -> ^( USE ( use_asn1 )? ( end )? package_name ) # sdl92.g:154:17: ^( USE ( use_asn1 )? ( end )? package_name ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_USE.nextNode(), root_1) # sdl92.g:154:23: ( use_asn1 )? if stream_use_asn1.hasNext(): self._adaptor.addChild(root_1, stream_use_asn1.nextTree()) stream_use_asn1.reset(); # sdl92.g:154:33: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); self._adaptor.addChild(root_1, stream_package_name.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "use_clause" class entity_in_system_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.entity_in_system_return, self).__init__() self.tree = None # $ANTLR start "entity_in_system" # sdl92.g:160:1: entity_in_system : ( signal_declaration | text_area | procedure | channel | block_definition ); def entity_in_system(self, ): retval = self.entity_in_system_return() retval.start = self.input.LT(1) root_0 = None signal_declaration15 = None text_area16 = None procedure17 = None channel18 = None block_definition19 = None try: try: # sdl92.g:161:9: ( signal_declaration | text_area | procedure | channel | block_definition ) alt5 = 5 LA5 = self.input.LA(1) if LA5 == 218: LA5_1 = self.input.LA(2) if (self.synpred7_sdl92()) : alt5 = 1 elif (self.synpred8_sdl92()) : alt5 = 2 elif (self.synpred9_sdl92()) : alt5 = 3 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 5, 1, self.input) raise nvae elif LA5 == SIGNAL: alt5 = 1 elif LA5 == PROCEDURE: alt5 = 3 elif LA5 == CHANNEL: alt5 = 4 elif LA5 == BLOCK: alt5 = 5 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 5, 0, self.input) raise nvae if alt5 == 1: # sdl92.g:161:17: signal_declaration pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_signal_declaration_in_entity_in_system1521) signal_declaration15 = self.signal_declaration() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, signal_declaration15.tree) elif alt5 == 2: # sdl92.g:162:19: text_area pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_text_area_in_entity_in_system1541) text_area16 = self.text_area() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, text_area16.tree) elif alt5 == 3: # sdl92.g:163:19: procedure pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_procedure_in_entity_in_system1561) procedure17 = self.procedure() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, procedure17.tree) elif alt5 == 4: # sdl92.g:164:19: channel pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_channel_in_entity_in_system1581) channel18 = self.channel() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, channel18.tree) elif alt5 == 5: # sdl92.g:165:19: block_definition pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_block_definition_in_entity_in_system1601) block_definition19 = self.block_definition() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, block_definition19.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "entity_in_system" class signal_declaration_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.signal_declaration_return, self).__init__() self.tree = None # $ANTLR start "signal_declaration" # sdl92.g:170:1: signal_declaration : ( paramnames )? SIGNAL signal_id ( input_params )? end -> ^( SIGNAL ( paramnames )? signal_id ( input_params )? ) ; def signal_declaration(self, ): retval = self.signal_declaration_return() retval.start = self.input.LT(1) root_0 = None SIGNAL21 = None paramnames20 = None signal_id22 = None input_params23 = None end24 = None SIGNAL21_tree = None stream_SIGNAL = RewriteRuleTokenStream(self._adaptor, "token SIGNAL") stream_input_params = RewriteRuleSubtreeStream(self._adaptor, "rule input_params") stream_paramnames = RewriteRuleSubtreeStream(self._adaptor, "rule paramnames") stream_signal_id = RewriteRuleSubtreeStream(self._adaptor, "rule signal_id") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:171:9: ( ( paramnames )? SIGNAL signal_id ( input_params )? end -> ^( SIGNAL ( paramnames )? signal_id ( input_params )? ) ) # sdl92.g:171:17: ( paramnames )? SIGNAL signal_id ( input_params )? end pass # sdl92.g:171:17: ( paramnames )? alt6 = 2 LA6_0 = self.input.LA(1) if (LA6_0 == 218) : alt6 = 1 if alt6 == 1: # sdl92.g:0:0: paramnames pass self._state.following.append(self.FOLLOW_paramnames_in_signal_declaration1625) paramnames20 = self.paramnames() self._state.following.pop() if self._state.backtracking == 0: stream_paramnames.add(paramnames20.tree) SIGNAL21=self.match(self.input, SIGNAL, self.FOLLOW_SIGNAL_in_signal_declaration1644) if self._state.backtracking == 0: stream_SIGNAL.add(SIGNAL21) self._state.following.append(self.FOLLOW_signal_id_in_signal_declaration1646) signal_id22 = self.signal_id() self._state.following.pop() if self._state.backtracking == 0: stream_signal_id.add(signal_id22.tree) # sdl92.g:172:34: ( input_params )? alt7 = 2 LA7_0 = self.input.LA(1) if (LA7_0 == L_PAREN) : alt7 = 1 if alt7 == 1: # sdl92.g:0:0: input_params pass self._state.following.append(self.FOLLOW_input_params_in_signal_declaration1648) input_params23 = self.input_params() self._state.following.pop() if self._state.backtracking == 0: stream_input_params.add(input_params23.tree) self._state.following.append(self.FOLLOW_end_in_signal_declaration1651) end24 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end24.tree) # AST Rewrite # elements: signal_id, input_params, paramnames, SIGNAL # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 173:9: -> ^( SIGNAL ( paramnames )? signal_id ( input_params )? ) # sdl92.g:173:17: ^( SIGNAL ( paramnames )? signal_id ( input_params )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_SIGNAL.nextNode(), root_1) # sdl92.g:173:26: ( paramnames )? if stream_paramnames.hasNext(): self._adaptor.addChild(root_1, stream_paramnames.nextTree()) stream_paramnames.reset(); self._adaptor.addChild(root_1, stream_signal_id.nextTree()) # sdl92.g:173:48: ( input_params )? if stream_input_params.hasNext(): self._adaptor.addChild(root_1, stream_input_params.nextTree()) stream_input_params.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "signal_declaration" class channel_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.channel_return, self).__init__() self.tree = None # $ANTLR start "channel" # sdl92.g:176:1: channel : CHANNEL channel_id ( route )+ ENDCHANNEL end -> ^( CHANNEL channel_id ( route )+ ) ; def channel(self, ): retval = self.channel_return() retval.start = self.input.LT(1) root_0 = None CHANNEL25 = None ENDCHANNEL28 = None channel_id26 = None route27 = None end29 = None CHANNEL25_tree = None ENDCHANNEL28_tree = None stream_CHANNEL = RewriteRuleTokenStream(self._adaptor, "token CHANNEL") stream_ENDCHANNEL = RewriteRuleTokenStream(self._adaptor, "token ENDCHANNEL") stream_route = RewriteRuleSubtreeStream(self._adaptor, "rule route") stream_channel_id = RewriteRuleSubtreeStream(self._adaptor, "rule channel_id") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:177:9: ( CHANNEL channel_id ( route )+ ENDCHANNEL end -> ^( CHANNEL channel_id ( route )+ ) ) # sdl92.g:177:17: CHANNEL channel_id ( route )+ ENDCHANNEL end pass CHANNEL25=self.match(self.input, CHANNEL, self.FOLLOW_CHANNEL_in_channel1701) if self._state.backtracking == 0: stream_CHANNEL.add(CHANNEL25) self._state.following.append(self.FOLLOW_channel_id_in_channel1703) channel_id26 = self.channel_id() self._state.following.pop() if self._state.backtracking == 0: stream_channel_id.add(channel_id26.tree) # sdl92.g:178:17: ( route )+ cnt8 = 0 while True: #loop8 alt8 = 2 LA8_0 = self.input.LA(1) if (LA8_0 == FROM) : alt8 = 1 if alt8 == 1: # sdl92.g:0:0: route pass self._state.following.append(self.FOLLOW_route_in_channel1721) route27 = self.route() self._state.following.pop() if self._state.backtracking == 0: stream_route.add(route27.tree) else: if cnt8 >= 1: break #loop8 if self._state.backtracking > 0: raise BacktrackingFailed eee = EarlyExitException(8, self.input) raise eee cnt8 += 1 ENDCHANNEL28=self.match(self.input, ENDCHANNEL, self.FOLLOW_ENDCHANNEL_in_channel1740) if self._state.backtracking == 0: stream_ENDCHANNEL.add(ENDCHANNEL28) self._state.following.append(self.FOLLOW_end_in_channel1742) end29 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end29.tree) # AST Rewrite # elements: channel_id, CHANNEL, route # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 180:9: -> ^( CHANNEL channel_id ( route )+ ) # sdl92.g:180:17: ^( CHANNEL channel_id ( route )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_CHANNEL.nextNode(), root_1) self._adaptor.addChild(root_1, stream_channel_id.nextTree()) # sdl92.g:180:38: ( route )+ if not (stream_route.hasNext()): raise RewriteEarlyExitException() while stream_route.hasNext(): self._adaptor.addChild(root_1, stream_route.nextTree()) stream_route.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "channel" class route_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.route_return, self).__init__() self.tree = None # $ANTLR start "route" # sdl92.g:183:1: route : FROM source_id TO dest_id WITH signal_id ( ',' signal_id )* end -> ^( ROUTE source_id dest_id ( signal_id )+ ) ; def route(self, ): retval = self.route_return() retval.start = self.input.LT(1) root_0 = None FROM30 = None TO32 = None WITH34 = None char_literal36 = None source_id31 = None dest_id33 = None signal_id35 = None signal_id37 = None end38 = None FROM30_tree = None TO32_tree = None WITH34_tree = None char_literal36_tree = None stream_FROM = RewriteRuleTokenStream(self._adaptor, "token FROM") stream_TO = RewriteRuleTokenStream(self._adaptor, "token TO") stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_WITH = RewriteRuleTokenStream(self._adaptor, "token WITH") stream_source_id = RewriteRuleSubtreeStream(self._adaptor, "rule source_id") stream_dest_id = RewriteRuleSubtreeStream(self._adaptor, "rule dest_id") stream_signal_id = RewriteRuleSubtreeStream(self._adaptor, "rule signal_id") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:184:9: ( FROM source_id TO dest_id WITH signal_id ( ',' signal_id )* end -> ^( ROUTE source_id dest_id ( signal_id )+ ) ) # sdl92.g:184:17: FROM source_id TO dest_id WITH signal_id ( ',' signal_id )* end pass FROM30=self.match(self.input, FROM, self.FOLLOW_FROM_in_route1789) if self._state.backtracking == 0: stream_FROM.add(FROM30) self._state.following.append(self.FOLLOW_source_id_in_route1791) source_id31 = self.source_id() self._state.following.pop() if self._state.backtracking == 0: stream_source_id.add(source_id31.tree) TO32=self.match(self.input, TO, self.FOLLOW_TO_in_route1793) if self._state.backtracking == 0: stream_TO.add(TO32) self._state.following.append(self.FOLLOW_dest_id_in_route1795) dest_id33 = self.dest_id() self._state.following.pop() if self._state.backtracking == 0: stream_dest_id.add(dest_id33.tree) WITH34=self.match(self.input, WITH, self.FOLLOW_WITH_in_route1797) if self._state.backtracking == 0: stream_WITH.add(WITH34) self._state.following.append(self.FOLLOW_signal_id_in_route1799) signal_id35 = self.signal_id() self._state.following.pop() if self._state.backtracking == 0: stream_signal_id.add(signal_id35.tree) # sdl92.g:184:58: ( ',' signal_id )* while True: #loop9 alt9 = 2 LA9_0 = self.input.LA(1) if (LA9_0 == COMMA) : alt9 = 1 if alt9 == 1: # sdl92.g:184:59: ',' signal_id pass char_literal36=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_route1802) if self._state.backtracking == 0: stream_COMMA.add(char_literal36) self._state.following.append(self.FOLLOW_signal_id_in_route1804) signal_id37 = self.signal_id() self._state.following.pop() if self._state.backtracking == 0: stream_signal_id.add(signal_id37.tree) else: break #loop9 self._state.following.append(self.FOLLOW_end_in_route1808) end38 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end38.tree) # AST Rewrite # elements: signal_id, dest_id, source_id # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 185:9: -> ^( ROUTE source_id dest_id ( signal_id )+ ) # sdl92.g:185:17: ^( ROUTE source_id dest_id ( signal_id )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(ROUTE, "ROUTE"), root_1) self._adaptor.addChild(root_1, stream_source_id.nextTree()) self._adaptor.addChild(root_1, stream_dest_id.nextTree()) # sdl92.g:185:43: ( signal_id )+ if not (stream_signal_id.hasNext()): raise RewriteEarlyExitException() while stream_signal_id.hasNext(): self._adaptor.addChild(root_1, stream_signal_id.nextTree()) stream_signal_id.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "route" class block_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.block_definition_return, self).__init__() self.tree = None # $ANTLR start "block_definition" # sdl92.g:188:1: block_definition : BLOCK block_id end ( entity_in_block )* ENDBLOCK end -> ^( BLOCK block_id ( entity_in_block )* ) ; def block_definition(self, ): retval = self.block_definition_return() retval.start = self.input.LT(1) root_0 = None BLOCK39 = None ENDBLOCK43 = None block_id40 = None end41 = None entity_in_block42 = None end44 = None BLOCK39_tree = None ENDBLOCK43_tree = None stream_ENDBLOCK = RewriteRuleTokenStream(self._adaptor, "token ENDBLOCK") stream_BLOCK = RewriteRuleTokenStream(self._adaptor, "token BLOCK") stream_entity_in_block = RewriteRuleSubtreeStream(self._adaptor, "rule entity_in_block") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") stream_block_id = RewriteRuleSubtreeStream(self._adaptor, "rule block_id") try: try: # sdl92.g:189:9: ( BLOCK block_id end ( entity_in_block )* ENDBLOCK end -> ^( BLOCK block_id ( entity_in_block )* ) ) # sdl92.g:189:17: BLOCK block_id end ( entity_in_block )* ENDBLOCK end pass BLOCK39=self.match(self.input, BLOCK, self.FOLLOW_BLOCK_in_block_definition1857) if self._state.backtracking == 0: stream_BLOCK.add(BLOCK39) self._state.following.append(self.FOLLOW_block_id_in_block_definition1859) block_id40 = self.block_id() self._state.following.pop() if self._state.backtracking == 0: stream_block_id.add(block_id40.tree) self._state.following.append(self.FOLLOW_end_in_block_definition1861) end41 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end41.tree) # sdl92.g:190:17: ( entity_in_block )* while True: #loop10 alt10 = 2 LA10_0 = self.input.LA(1) if (LA10_0 == BLOCK or LA10_0 == CONNECT or LA10_0 == PROCESS or LA10_0 == SIGNAL or LA10_0 == SIGNALROUTE or LA10_0 == 218) : alt10 = 1 if alt10 == 1: # sdl92.g:0:0: entity_in_block pass self._state.following.append(self.FOLLOW_entity_in_block_in_block_definition1879) entity_in_block42 = self.entity_in_block() self._state.following.pop() if self._state.backtracking == 0: stream_entity_in_block.add(entity_in_block42.tree) else: break #loop10 ENDBLOCK43=self.match(self.input, ENDBLOCK, self.FOLLOW_ENDBLOCK_in_block_definition1898) if self._state.backtracking == 0: stream_ENDBLOCK.add(ENDBLOCK43) self._state.following.append(self.FOLLOW_end_in_block_definition1900) end44 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end44.tree) # AST Rewrite # elements: block_id, entity_in_block, BLOCK # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 192:9: -> ^( BLOCK block_id ( entity_in_block )* ) # sdl92.g:192:17: ^( BLOCK block_id ( entity_in_block )* ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_BLOCK.nextNode(), root_1) self._adaptor.addChild(root_1, stream_block_id.nextTree()) # sdl92.g:192:34: ( entity_in_block )* while stream_entity_in_block.hasNext(): self._adaptor.addChild(root_1, stream_entity_in_block.nextTree()) stream_entity_in_block.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "block_definition" class entity_in_block_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.entity_in_block_return, self).__init__() self.tree = None # $ANTLR start "entity_in_block" # sdl92.g:199:1: entity_in_block : ( signal_declaration | signalroute | connection | block_definition | process_definition ); def entity_in_block(self, ): retval = self.entity_in_block_return() retval.start = self.input.LT(1) root_0 = None signal_declaration45 = None signalroute46 = None connection47 = None block_definition48 = None process_definition49 = None try: try: # sdl92.g:200:9: ( signal_declaration | signalroute | connection | block_definition | process_definition ) alt11 = 5 LA11 = self.input.LA(1) if LA11 == 218: LA11_1 = self.input.LA(2) if (LA11_1 == ANSWER or LA11_1 == COMMENT or LA11_1 == CONNECT or LA11_1 == DECISION or LA11_1 == INPUT or (JOIN <= LA11_1 <= LABEL) or LA11_1 == NEXTSTATE or LA11_1 == OUTPUT or (PROCEDURE <= LA11_1 <= PROCEDURE_CALL) or (PROCESS <= LA11_1 <= PROVIDED) or LA11_1 == RETURN or LA11_1 == STATE or LA11_1 == STOP or LA11_1 == TASK or LA11_1 == TEXT or LA11_1 == START) : alt11 = 5 elif (LA11_1 == KEEP) : alt11 = 1 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 11, 1, self.input) raise nvae elif LA11 == SIGNAL: alt11 = 1 elif LA11 == SIGNALROUTE: alt11 = 2 elif LA11 == CONNECT: alt11 = 3 elif LA11 == BLOCK: alt11 = 4 elif LA11 == PROCESS: alt11 = 5 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 11, 0, self.input) raise nvae if alt11 == 1: # sdl92.g:200:17: signal_declaration pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_signal_declaration_in_entity_in_block1949) signal_declaration45 = self.signal_declaration() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, signal_declaration45.tree) elif alt11 == 2: # sdl92.g:201:19: signalroute pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_signalroute_in_entity_in_block1969) signalroute46 = self.signalroute() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, signalroute46.tree) elif alt11 == 3: # sdl92.g:202:19: connection pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_connection_in_entity_in_block1989) connection47 = self.connection() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, connection47.tree) elif alt11 == 4: # sdl92.g:203:19: block_definition pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_block_definition_in_entity_in_block2009) block_definition48 = self.block_definition() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, block_definition48.tree) elif alt11 == 5: # sdl92.g:204:19: process_definition pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_process_definition_in_entity_in_block2029) process_definition49 = self.process_definition() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, process_definition49.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "entity_in_block" class signalroute_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.signalroute_return, self).__init__() self.tree = None # $ANTLR start "signalroute" # sdl92.g:207:1: signalroute : SIGNALROUTE route_id ( route )+ -> ^( SIGNALROUTE route_id ( route )+ ) ; def signalroute(self, ): retval = self.signalroute_return() retval.start = self.input.LT(1) root_0 = None SIGNALROUTE50 = None route_id51 = None route52 = None SIGNALROUTE50_tree = None stream_SIGNALROUTE = RewriteRuleTokenStream(self._adaptor, "token SIGNALROUTE") stream_route_id = RewriteRuleSubtreeStream(self._adaptor, "rule route_id") stream_route = RewriteRuleSubtreeStream(self._adaptor, "rule route") try: try: # sdl92.g:208:9: ( SIGNALROUTE route_id ( route )+ -> ^( SIGNALROUTE route_id ( route )+ ) ) # sdl92.g:208:17: SIGNALROUTE route_id ( route )+ pass SIGNALROUTE50=self.match(self.input, SIGNALROUTE, self.FOLLOW_SIGNALROUTE_in_signalroute2052) if self._state.backtracking == 0: stream_SIGNALROUTE.add(SIGNALROUTE50) self._state.following.append(self.FOLLOW_route_id_in_signalroute2054) route_id51 = self.route_id() self._state.following.pop() if self._state.backtracking == 0: stream_route_id.add(route_id51.tree) # sdl92.g:209:17: ( route )+ cnt12 = 0 while True: #loop12 alt12 = 2 LA12_0 = self.input.LA(1) if (LA12_0 == FROM) : alt12 = 1 if alt12 == 1: # sdl92.g:0:0: route pass self._state.following.append(self.FOLLOW_route_in_signalroute2072) route52 = self.route() self._state.following.pop() if self._state.backtracking == 0: stream_route.add(route52.tree) else: if cnt12 >= 1: break #loop12 if self._state.backtracking > 0: raise BacktrackingFailed eee = EarlyExitException(12, self.input) raise eee cnt12 += 1 # AST Rewrite # elements: route, SIGNALROUTE, route_id # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 210:9: -> ^( SIGNALROUTE route_id ( route )+ ) # sdl92.g:210:17: ^( SIGNALROUTE route_id ( route )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_SIGNALROUTE.nextNode(), root_1) self._adaptor.addChild(root_1, stream_route_id.nextTree()) # sdl92.g:210:40: ( route )+ if not (stream_route.hasNext()): raise RewriteEarlyExitException() while stream_route.hasNext(): self._adaptor.addChild(root_1, stream_route.nextTree()) stream_route.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "signalroute" class connection_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.connection_return, self).__init__() self.tree = None # $ANTLR start "connection" # sdl92.g:213:1: connection : CONNECT channel_id AND route_id end -> ^( CONNECTION channel_id route_id ) ; def connection(self, ): retval = self.connection_return() retval.start = self.input.LT(1) root_0 = None CONNECT53 = None AND55 = None channel_id54 = None route_id56 = None end57 = None CONNECT53_tree = None AND55_tree = None stream_CONNECT = RewriteRuleTokenStream(self._adaptor, "token CONNECT") stream_AND = RewriteRuleTokenStream(self._adaptor, "token AND") stream_route_id = RewriteRuleSubtreeStream(self._adaptor, "rule route_id") stream_channel_id = RewriteRuleSubtreeStream(self._adaptor, "rule channel_id") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:214:9: ( CONNECT channel_id AND route_id end -> ^( CONNECTION channel_id route_id ) ) # sdl92.g:214:17: CONNECT channel_id AND route_id end pass CONNECT53=self.match(self.input, CONNECT, self.FOLLOW_CONNECT_in_connection2120) if self._state.backtracking == 0: stream_CONNECT.add(CONNECT53) self._state.following.append(self.FOLLOW_channel_id_in_connection2122) channel_id54 = self.channel_id() self._state.following.pop() if self._state.backtracking == 0: stream_channel_id.add(channel_id54.tree) AND55=self.match(self.input, AND, self.FOLLOW_AND_in_connection2124) if self._state.backtracking == 0: stream_AND.add(AND55) self._state.following.append(self.FOLLOW_route_id_in_connection2126) route_id56 = self.route_id() self._state.following.pop() if self._state.backtracking == 0: stream_route_id.add(route_id56.tree) self._state.following.append(self.FOLLOW_end_in_connection2128) end57 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end57.tree) # AST Rewrite # elements: route_id, channel_id # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 215:9: -> ^( CONNECTION channel_id route_id ) # sdl92.g:215:17: ^( CONNECTION channel_id route_id ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(CONNECTION, "CONNECTION"), root_1) self._adaptor.addChild(root_1, stream_channel_id.nextTree()) self._adaptor.addChild(root_1, stream_route_id.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "connection" class process_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.process_definition_return, self).__init__() self.tree = None # $ANTLR start "process_definition" # sdl92.g:218:1: process_definition : ( PROCESS process_id ( number_of_instances )? REFERENCED end -> ^( PROCESS process_id ( number_of_instances )? REFERENCED ) | ( cif )? PROCESS process_id ( number_of_instances )? end ( text_area | procedure | composite_state )* ( processBody )? ENDPROCESS ( process_id )? end -> ^( PROCESS ( cif )? process_id ( number_of_instances )? ( end )? ( text_area )* ( procedure )* ( composite_state )* ( processBody )? ) ); def process_definition(self, ): retval = self.process_definition_return() retval.start = self.input.LT(1) root_0 = None PROCESS58 = None REFERENCED61 = None PROCESS64 = None ENDPROCESS72 = None process_id59 = None number_of_instances60 = None end62 = None cif63 = None process_id65 = None number_of_instances66 = None end67 = None text_area68 = None procedure69 = None composite_state70 = None processBody71 = None process_id73 = None end74 = None PROCESS58_tree = None REFERENCED61_tree = None PROCESS64_tree = None ENDPROCESS72_tree = None stream_REFERENCED = RewriteRuleTokenStream(self._adaptor, "token REFERENCED") stream_PROCESS = RewriteRuleTokenStream(self._adaptor, "token PROCESS") stream_ENDPROCESS = RewriteRuleTokenStream(self._adaptor, "token ENDPROCESS") stream_composite_state = RewriteRuleSubtreeStream(self._adaptor, "rule composite_state") stream_process_id = RewriteRuleSubtreeStream(self._adaptor, "rule process_id") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_processBody = RewriteRuleSubtreeStream(self._adaptor, "rule processBody") stream_text_area = RewriteRuleSubtreeStream(self._adaptor, "rule text_area") stream_number_of_instances = RewriteRuleSubtreeStream(self._adaptor, "rule number_of_instances") stream_procedure = RewriteRuleSubtreeStream(self._adaptor, "rule procedure") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:219:9: ( PROCESS process_id ( number_of_instances )? REFERENCED end -> ^( PROCESS process_id ( number_of_instances )? REFERENCED ) | ( cif )? PROCESS process_id ( number_of_instances )? end ( text_area | procedure | composite_state )* ( processBody )? ENDPROCESS ( process_id )? end -> ^( PROCESS ( cif )? process_id ( number_of_instances )? ( end )? ( text_area )* ( procedure )* ( composite_state )* ( processBody )? ) ) alt19 = 2 alt19 = self.dfa19.predict(self.input) if alt19 == 1: # sdl92.g:219:17: PROCESS process_id ( number_of_instances )? REFERENCED end pass PROCESS58=self.match(self.input, PROCESS, self.FOLLOW_PROCESS_in_process_definition2174) if self._state.backtracking == 0: stream_PROCESS.add(PROCESS58) self._state.following.append(self.FOLLOW_process_id_in_process_definition2176) process_id59 = self.process_id() self._state.following.pop() if self._state.backtracking == 0: stream_process_id.add(process_id59.tree) # sdl92.g:219:36: ( number_of_instances )? alt13 = 2 LA13_0 = self.input.LA(1) if (LA13_0 == L_PAREN) : alt13 = 1 if alt13 == 1: # sdl92.g:0:0: number_of_instances pass self._state.following.append(self.FOLLOW_number_of_instances_in_process_definition2178) number_of_instances60 = self.number_of_instances() self._state.following.pop() if self._state.backtracking == 0: stream_number_of_instances.add(number_of_instances60.tree) REFERENCED61=self.match(self.input, REFERENCED, self.FOLLOW_REFERENCED_in_process_definition2181) if self._state.backtracking == 0: stream_REFERENCED.add(REFERENCED61) self._state.following.append(self.FOLLOW_end_in_process_definition2183) end62 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end62.tree) # AST Rewrite # elements: number_of_instances, process_id, PROCESS, REFERENCED # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 220:9: -> ^( PROCESS process_id ( number_of_instances )? REFERENCED ) # sdl92.g:220:17: ^( PROCESS process_id ( number_of_instances )? REFERENCED ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_PROCESS.nextNode(), root_1) self._adaptor.addChild(root_1, stream_process_id.nextTree()) # sdl92.g:220:38: ( number_of_instances )? if stream_number_of_instances.hasNext(): self._adaptor.addChild(root_1, stream_number_of_instances.nextTree()) stream_number_of_instances.reset(); self._adaptor.addChild(root_1, stream_REFERENCED.nextNode()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt19 == 2: # sdl92.g:221:19: ( cif )? PROCESS process_id ( number_of_instances )? end ( text_area | procedure | composite_state )* ( processBody )? ENDPROCESS ( process_id )? end pass # sdl92.g:221:19: ( cif )? alt14 = 2 LA14_0 = self.input.LA(1) if (LA14_0 == 218) : alt14 = 1 if alt14 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_process_definition2229) cif63 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif63.tree) PROCESS64=self.match(self.input, PROCESS, self.FOLLOW_PROCESS_in_process_definition2232) if self._state.backtracking == 0: stream_PROCESS.add(PROCESS64) self._state.following.append(self.FOLLOW_process_id_in_process_definition2234) process_id65 = self.process_id() self._state.following.pop() if self._state.backtracking == 0: stream_process_id.add(process_id65.tree) # sdl92.g:221:43: ( number_of_instances )? alt15 = 2 LA15_0 = self.input.LA(1) if (LA15_0 == L_PAREN) : alt15 = 1 if alt15 == 1: # sdl92.g:0:0: number_of_instances pass self._state.following.append(self.FOLLOW_number_of_instances_in_process_definition2236) number_of_instances66 = self.number_of_instances() self._state.following.pop() if self._state.backtracking == 0: stream_number_of_instances.add(number_of_instances66.tree) self._state.following.append(self.FOLLOW_end_in_process_definition2239) end67 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end67.tree) # sdl92.g:222:17: ( text_area | procedure | composite_state )* while True: #loop16 alt16 = 4 LA16 = self.input.LA(1) if LA16 == 218: LA16_1 = self.input.LA(2) if (self.synpred25_sdl92()) : alt16 = 1 elif (self.synpred26_sdl92()) : alt16 = 2 elif LA16 == STATE: LA16_3 = self.input.LA(2) if (self.synpred27_sdl92()) : alt16 = 3 elif LA16 == PROCEDURE: alt16 = 2 if alt16 == 1: # sdl92.g:222:18: text_area pass self._state.following.append(self.FOLLOW_text_area_in_process_definition2258) text_area68 = self.text_area() self._state.following.pop() if self._state.backtracking == 0: stream_text_area.add(text_area68.tree) elif alt16 == 2: # sdl92.g:222:30: procedure pass self._state.following.append(self.FOLLOW_procedure_in_process_definition2262) procedure69 = self.procedure() self._state.following.pop() if self._state.backtracking == 0: stream_procedure.add(procedure69.tree) elif alt16 == 3: # sdl92.g:222:42: composite_state pass self._state.following.append(self.FOLLOW_composite_state_in_process_definition2266) composite_state70 = self.composite_state() self._state.following.pop() if self._state.backtracking == 0: stream_composite_state.add(composite_state70.tree) else: break #loop16 # sdl92.g:223:17: ( processBody )? alt17 = 2 LA17_0 = self.input.LA(1) if (LA17_0 == CONNECTION or LA17_0 == STATE or LA17_0 == START or LA17_0 == 218) : alt17 = 1 elif (LA17_0 == ENDPROCESS) : LA17_2 = self.input.LA(2) if (self.synpred28_sdl92()) : alt17 = 1 if alt17 == 1: # sdl92.g:0:0: processBody pass self._state.following.append(self.FOLLOW_processBody_in_process_definition2286) processBody71 = self.processBody() self._state.following.pop() if self._state.backtracking == 0: stream_processBody.add(processBody71.tree) ENDPROCESS72=self.match(self.input, ENDPROCESS, self.FOLLOW_ENDPROCESS_in_process_definition2289) if self._state.backtracking == 0: stream_ENDPROCESS.add(ENDPROCESS72) # sdl92.g:223:41: ( process_id )? alt18 = 2 LA18_0 = self.input.LA(1) if (LA18_0 == ID) : alt18 = 1 if alt18 == 1: # sdl92.g:0:0: process_id pass self._state.following.append(self.FOLLOW_process_id_in_process_definition2291) process_id73 = self.process_id() self._state.following.pop() if self._state.backtracking == 0: stream_process_id.add(process_id73.tree) self._state.following.append(self.FOLLOW_end_in_process_definition2310) end74 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end74.tree) # AST Rewrite # elements: number_of_instances, procedure, process_id, end, composite_state, text_area, cif, PROCESS, processBody # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 225:9: -> ^( PROCESS ( cif )? process_id ( number_of_instances )? ( end )? ( text_area )* ( procedure )* ( composite_state )* ( processBody )? ) # sdl92.g:225:17: ^( PROCESS ( cif )? process_id ( number_of_instances )? ( end )? ( text_area )* ( procedure )* ( composite_state )* ( processBody )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_PROCESS.nextNode(), root_1) # sdl92.g:225:27: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); self._adaptor.addChild(root_1, stream_process_id.nextTree()) # sdl92.g:225:43: ( number_of_instances )? if stream_number_of_instances.hasNext(): self._adaptor.addChild(root_1, stream_number_of_instances.nextTree()) stream_number_of_instances.reset(); # sdl92.g:225:64: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); # sdl92.g:226:17: ( text_area )* while stream_text_area.hasNext(): self._adaptor.addChild(root_1, stream_text_area.nextTree()) stream_text_area.reset(); # sdl92.g:226:28: ( procedure )* while stream_procedure.hasNext(): self._adaptor.addChild(root_1, stream_procedure.nextTree()) stream_procedure.reset(); # sdl92.g:226:39: ( composite_state )* while stream_composite_state.hasNext(): self._adaptor.addChild(root_1, stream_composite_state.nextTree()) stream_composite_state.reset(); # sdl92.g:226:56: ( processBody )? if stream_processBody.hasNext(): self._adaptor.addChild(root_1, stream_processBody.nextTree()) stream_processBody.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "process_definition" class procedure_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.procedure_return, self).__init__() self.tree = None # $ANTLR start "procedure" # sdl92.g:231:1: procedure : ( cif )? PROCEDURE procedure_id end ( fpar )? ( text_area | procedure )* ( ( ( processBody )? ENDPROCEDURE ( procedure_id )? ) | EXTERNAL ) end -> ^( PROCEDURE ( cif )? procedure_id ( end )? ( fpar )? ( text_area )* ( procedure )* ( processBody )? ( EXTERNAL )? ) ; def procedure(self, ): retval = self.procedure_return() retval.start = self.input.LT(1) root_0 = None PROCEDURE76 = None ENDPROCEDURE83 = None EXTERNAL85 = None cif75 = None procedure_id77 = None end78 = None fpar79 = None text_area80 = None procedure81 = None processBody82 = None procedure_id84 = None end86 = None PROCEDURE76_tree = None ENDPROCEDURE83_tree = None EXTERNAL85_tree = None stream_EXTERNAL = RewriteRuleTokenStream(self._adaptor, "token EXTERNAL") stream_ENDPROCEDURE = RewriteRuleTokenStream(self._adaptor, "token ENDPROCEDURE") stream_PROCEDURE = RewriteRuleTokenStream(self._adaptor, "token PROCEDURE") stream_procedure_id = RewriteRuleSubtreeStream(self._adaptor, "rule procedure_id") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_fpar = RewriteRuleSubtreeStream(self._adaptor, "rule fpar") stream_processBody = RewriteRuleSubtreeStream(self._adaptor, "rule processBody") stream_text_area = RewriteRuleSubtreeStream(self._adaptor, "rule text_area") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") stream_procedure = RewriteRuleSubtreeStream(self._adaptor, "rule procedure") try: try: # sdl92.g:232:9: ( ( cif )? PROCEDURE procedure_id end ( fpar )? ( text_area | procedure )* ( ( ( processBody )? ENDPROCEDURE ( procedure_id )? ) | EXTERNAL ) end -> ^( PROCEDURE ( cif )? procedure_id ( end )? ( fpar )? ( text_area )* ( procedure )* ( processBody )? ( EXTERNAL )? ) ) # sdl92.g:232:17: ( cif )? PROCEDURE procedure_id end ( fpar )? ( text_area | procedure )* ( ( ( processBody )? ENDPROCEDURE ( procedure_id )? ) | EXTERNAL ) end pass # sdl92.g:232:17: ( cif )? alt20 = 2 LA20_0 = self.input.LA(1) if (LA20_0 == 218) : alt20 = 1 if alt20 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_procedure2393) cif75 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif75.tree) PROCEDURE76=self.match(self.input, PROCEDURE, self.FOLLOW_PROCEDURE_in_procedure2412) if self._state.backtracking == 0: stream_PROCEDURE.add(PROCEDURE76) self._state.following.append(self.FOLLOW_procedure_id_in_procedure2414) procedure_id77 = self.procedure_id() self._state.following.pop() if self._state.backtracking == 0: stream_procedure_id.add(procedure_id77.tree) self._state.following.append(self.FOLLOW_end_in_procedure2416) end78 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end78.tree) # sdl92.g:234:17: ( fpar )? alt21 = 2 LA21_0 = self.input.LA(1) if (LA21_0 == FPAR) : alt21 = 1 if alt21 == 1: # sdl92.g:0:0: fpar pass self._state.following.append(self.FOLLOW_fpar_in_procedure2434) fpar79 = self.fpar() self._state.following.pop() if self._state.backtracking == 0: stream_fpar.add(fpar79.tree) # sdl92.g:235:17: ( text_area | procedure )* while True: #loop22 alt22 = 3 LA22_0 = self.input.LA(1) if (LA22_0 == 218) : LA22_1 = self.input.LA(2) if (self.synpred32_sdl92()) : alt22 = 1 elif (self.synpred33_sdl92()) : alt22 = 2 elif (LA22_0 == PROCEDURE) : alt22 = 2 if alt22 == 1: # sdl92.g:235:18: text_area pass self._state.following.append(self.FOLLOW_text_area_in_procedure2454) text_area80 = self.text_area() self._state.following.pop() if self._state.backtracking == 0: stream_text_area.add(text_area80.tree) elif alt22 == 2: # sdl92.g:235:30: procedure pass self._state.following.append(self.FOLLOW_procedure_in_procedure2458) procedure81 = self.procedure() self._state.following.pop() if self._state.backtracking == 0: stream_procedure.add(procedure81.tree) else: break #loop22 # sdl92.g:236:17: ( ( ( processBody )? ENDPROCEDURE ( procedure_id )? ) | EXTERNAL ) alt25 = 2 LA25_0 = self.input.LA(1) if (LA25_0 == EOF or LA25_0 == CONNECTION or LA25_0 == STATE or (ENDPROCESS <= LA25_0 <= ENDPROCEDURE) or LA25_0 == START or LA25_0 == 218) : alt25 = 1 elif (LA25_0 == EXTERNAL) : alt25 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 25, 0, self.input) raise nvae if alt25 == 1: # sdl92.g:236:18: ( ( processBody )? ENDPROCEDURE ( procedure_id )? ) pass # sdl92.g:236:18: ( ( processBody )? ENDPROCEDURE ( procedure_id )? ) # sdl92.g:236:19: ( processBody )? ENDPROCEDURE ( procedure_id )? pass # sdl92.g:236:19: ( processBody )? alt23 = 2 LA23_0 = self.input.LA(1) if (LA23_0 == CONNECTION or LA23_0 == STATE or LA23_0 == START or LA23_0 == 218) : alt23 = 1 elif (LA23_0 == ENDPROCEDURE) : LA23_2 = self.input.LA(2) if (self.synpred34_sdl92()) : alt23 = 1 if alt23 == 1: # sdl92.g:0:0: processBody pass self._state.following.append(self.FOLLOW_processBody_in_procedure2480) processBody82 = self.processBody() self._state.following.pop() if self._state.backtracking == 0: stream_processBody.add(processBody82.tree) ENDPROCEDURE83=self.match(self.input, ENDPROCEDURE, self.FOLLOW_ENDPROCEDURE_in_procedure2483) if self._state.backtracking == 0: stream_ENDPROCEDURE.add(ENDPROCEDURE83) # sdl92.g:236:45: ( procedure_id )? alt24 = 2 LA24_0 = self.input.LA(1) if (LA24_0 == ID) : alt24 = 1 if alt24 == 1: # sdl92.g:0:0: procedure_id pass self._state.following.append(self.FOLLOW_procedure_id_in_procedure2485) procedure_id84 = self.procedure_id() self._state.following.pop() if self._state.backtracking == 0: stream_procedure_id.add(procedure_id84.tree) elif alt25 == 2: # sdl92.g:236:62: EXTERNAL pass EXTERNAL85=self.match(self.input, EXTERNAL, self.FOLLOW_EXTERNAL_in_procedure2491) if self._state.backtracking == 0: stream_EXTERNAL.add(EXTERNAL85) self._state.following.append(self.FOLLOW_end_in_procedure2510) end86 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end86.tree) # AST Rewrite # elements: processBody, cif, text_area, EXTERNAL, fpar, PROCEDURE, procedure_id, procedure, end # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 238:9: -> ^( PROCEDURE ( cif )? procedure_id ( end )? ( fpar )? ( text_area )* ( procedure )* ( processBody )? ( EXTERNAL )? ) # sdl92.g:238:17: ^( PROCEDURE ( cif )? procedure_id ( end )? ( fpar )? ( text_area )* ( procedure )* ( processBody )? ( EXTERNAL )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_PROCEDURE.nextNode(), root_1) # sdl92.g:238:29: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); self._adaptor.addChild(root_1, stream_procedure_id.nextTree()) # sdl92.g:238:47: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); # sdl92.g:238:52: ( fpar )? if stream_fpar.hasNext(): self._adaptor.addChild(root_1, stream_fpar.nextTree()) stream_fpar.reset(); # sdl92.g:239:17: ( text_area )* while stream_text_area.hasNext(): self._adaptor.addChild(root_1, stream_text_area.nextTree()) stream_text_area.reset(); # sdl92.g:239:28: ( procedure )* while stream_procedure.hasNext(): self._adaptor.addChild(root_1, stream_procedure.nextTree()) stream_procedure.reset(); # sdl92.g:239:39: ( processBody )? if stream_processBody.hasNext(): self._adaptor.addChild(root_1, stream_processBody.nextTree()) stream_processBody.reset(); # sdl92.g:239:52: ( EXTERNAL )? if stream_EXTERNAL.hasNext(): self._adaptor.addChild(root_1, stream_EXTERNAL.nextNode()) stream_EXTERNAL.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "procedure" class fpar_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.fpar_return, self).__init__() self.tree = None # $ANTLR start "fpar" # sdl92.g:243:1: fpar : FPAR formal_variable_param ( ',' formal_variable_param )* end -> ^( FPAR ( formal_variable_param )+ ) ; def fpar(self, ): retval = self.fpar_return() retval.start = self.input.LT(1) root_0 = None FPAR87 = None char_literal89 = None formal_variable_param88 = None formal_variable_param90 = None end91 = None FPAR87_tree = None char_literal89_tree = None stream_FPAR = RewriteRuleTokenStream(self._adaptor, "token FPAR") stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") stream_formal_variable_param = RewriteRuleSubtreeStream(self._adaptor, "rule formal_variable_param") try: try: # sdl92.g:244:9: ( FPAR formal_variable_param ( ',' formal_variable_param )* end -> ^( FPAR ( formal_variable_param )+ ) ) # sdl92.g:244:17: FPAR formal_variable_param ( ',' formal_variable_param )* end pass FPAR87=self.match(self.input, FPAR, self.FOLLOW_FPAR_in_fpar2592) if self._state.backtracking == 0: stream_FPAR.add(FPAR87) self._state.following.append(self.FOLLOW_formal_variable_param_in_fpar2594) formal_variable_param88 = self.formal_variable_param() self._state.following.pop() if self._state.backtracking == 0: stream_formal_variable_param.add(formal_variable_param88.tree) # sdl92.g:245:17: ( ',' formal_variable_param )* while True: #loop26 alt26 = 2 LA26_0 = self.input.LA(1) if (LA26_0 == COMMA) : alt26 = 1 if alt26 == 1: # sdl92.g:245:18: ',' formal_variable_param pass char_literal89=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_fpar2613) if self._state.backtracking == 0: stream_COMMA.add(char_literal89) self._state.following.append(self.FOLLOW_formal_variable_param_in_fpar2615) formal_variable_param90 = self.formal_variable_param() self._state.following.pop() if self._state.backtracking == 0: stream_formal_variable_param.add(formal_variable_param90.tree) else: break #loop26 self._state.following.append(self.FOLLOW_end_in_fpar2635) end91 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end91.tree) # AST Rewrite # elements: FPAR, formal_variable_param # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 247:9: -> ^( FPAR ( formal_variable_param )+ ) # sdl92.g:247:17: ^( FPAR ( formal_variable_param )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_FPAR.nextNode(), root_1) # sdl92.g:247:24: ( formal_variable_param )+ if not (stream_formal_variable_param.hasNext()): raise RewriteEarlyExitException() while stream_formal_variable_param.hasNext(): self._adaptor.addChild(root_1, stream_formal_variable_param.nextTree()) stream_formal_variable_param.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "fpar" class formal_variable_param_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.formal_variable_param_return, self).__init__() self.tree = None # $ANTLR start "formal_variable_param" # sdl92.g:250:1: formal_variable_param : ( INOUT | IN )? variable_id ( ',' variable_id )* sort -> ^( PARAM ( INOUT )? ( IN )? ( variable_id )+ sort ) ; def formal_variable_param(self, ): retval = self.formal_variable_param_return() retval.start = self.input.LT(1) root_0 = None INOUT92 = None IN93 = None char_literal95 = None variable_id94 = None variable_id96 = None sort97 = None INOUT92_tree = None IN93_tree = None char_literal95_tree = None stream_IN = RewriteRuleTokenStream(self._adaptor, "token IN") stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_INOUT = RewriteRuleTokenStream(self._adaptor, "token INOUT") stream_sort = RewriteRuleSubtreeStream(self._adaptor, "rule sort") stream_variable_id = RewriteRuleSubtreeStream(self._adaptor, "rule variable_id") try: try: # sdl92.g:251:9: ( ( INOUT | IN )? variable_id ( ',' variable_id )* sort -> ^( PARAM ( INOUT )? ( IN )? ( variable_id )+ sort ) ) # sdl92.g:251:17: ( INOUT | IN )? variable_id ( ',' variable_id )* sort pass # sdl92.g:251:17: ( INOUT | IN )? alt27 = 3 LA27_0 = self.input.LA(1) if (LA27_0 == INOUT) : alt27 = 1 elif (LA27_0 == IN) : alt27 = 2 if alt27 == 1: # sdl92.g:251:18: INOUT pass INOUT92=self.match(self.input, INOUT, self.FOLLOW_INOUT_in_formal_variable_param2681) if self._state.backtracking == 0: stream_INOUT.add(INOUT92) elif alt27 == 2: # sdl92.g:251:26: IN pass IN93=self.match(self.input, IN, self.FOLLOW_IN_in_formal_variable_param2685) if self._state.backtracking == 0: stream_IN.add(IN93) self._state.following.append(self.FOLLOW_variable_id_in_formal_variable_param2705) variable_id94 = self.variable_id() self._state.following.pop() if self._state.backtracking == 0: stream_variable_id.add(variable_id94.tree) # sdl92.g:252:29: ( ',' variable_id )* while True: #loop28 alt28 = 2 LA28_0 = self.input.LA(1) if (LA28_0 == COMMA) : alt28 = 1 if alt28 == 1: # sdl92.g:252:30: ',' variable_id pass char_literal95=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_formal_variable_param2708) if self._state.backtracking == 0: stream_COMMA.add(char_literal95) self._state.following.append(self.FOLLOW_variable_id_in_formal_variable_param2710) variable_id96 = self.variable_id() self._state.following.pop() if self._state.backtracking == 0: stream_variable_id.add(variable_id96.tree) else: break #loop28 self._state.following.append(self.FOLLOW_sort_in_formal_variable_param2714) sort97 = self.sort() self._state.following.pop() if self._state.backtracking == 0: stream_sort.add(sort97.tree) # AST Rewrite # elements: IN, sort, variable_id, INOUT # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 253:9: -> ^( PARAM ( INOUT )? ( IN )? ( variable_id )+ sort ) # sdl92.g:253:17: ^( PARAM ( INOUT )? ( IN )? ( variable_id )+ sort ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(PARAM, "PARAM"), root_1) # sdl92.g:253:25: ( INOUT )? if stream_INOUT.hasNext(): self._adaptor.addChild(root_1, stream_INOUT.nextNode()) stream_INOUT.reset(); # sdl92.g:253:32: ( IN )? if stream_IN.hasNext(): self._adaptor.addChild(root_1, stream_IN.nextNode()) stream_IN.reset(); # sdl92.g:253:36: ( variable_id )+ if not (stream_variable_id.hasNext()): raise RewriteEarlyExitException() while stream_variable_id.hasNext(): self._adaptor.addChild(root_1, stream_variable_id.nextTree()) stream_variable_id.reset() self._adaptor.addChild(root_1, stream_sort.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "formal_variable_param" class text_area_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.text_area_return, self).__init__() self.tree = None # $ANTLR start "text_area" # sdl92.g:257:1: text_area : cif ( content )? cif_end_text -> ^( TEXTAREA cif ( content )? cif_end_text ) ; def text_area(self, ): retval = self.text_area_return() retval.start = self.input.LT(1) root_0 = None cif98 = None content99 = None cif_end_text100 = None stream_content = RewriteRuleSubtreeStream(self._adaptor, "rule content") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_cif_end_text = RewriteRuleSubtreeStream(self._adaptor, "rule cif_end_text") try: try: # sdl92.g:258:9: ( cif ( content )? cif_end_text -> ^( TEXTAREA cif ( content )? cif_end_text ) ) # sdl92.g:258:17: cif ( content )? cif_end_text pass self._state.following.append(self.FOLLOW_cif_in_text_area2768) cif98 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif98.tree) # sdl92.g:259:17: ( content )? alt29 = 2 LA29_0 = self.input.LA(1) if (LA29_0 == 218) : LA29_1 = self.input.LA(2) if (self.synpred41_sdl92()) : alt29 = 1 elif (LA29_0 == DCL or LA29_0 == FPAR or LA29_0 == NEWTYPE or LA29_0 == PROCEDURE or LA29_0 == SIGNAL or LA29_0 == SYNONYM or LA29_0 == SYNTYPE or LA29_0 == TIMER or LA29_0 == USE) : alt29 = 1 if alt29 == 1: # sdl92.g:0:0: content pass self._state.following.append(self.FOLLOW_content_in_text_area2786) content99 = self.content() self._state.following.pop() if self._state.backtracking == 0: stream_content.add(content99.tree) self._state.following.append(self.FOLLOW_cif_end_text_in_text_area2805) cif_end_text100 = self.cif_end_text() self._state.following.pop() if self._state.backtracking == 0: stream_cif_end_text.add(cif_end_text100.tree) # AST Rewrite # elements: cif_end_text, content, cif # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 261:9: -> ^( TEXTAREA cif ( content )? cif_end_text ) # sdl92.g:261:17: ^( TEXTAREA cif ( content )? cif_end_text ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(TEXTAREA, "TEXTAREA"), root_1) self._adaptor.addChild(root_1, stream_cif.nextTree()) # sdl92.g:261:32: ( content )? if stream_content.hasNext(): self._adaptor.addChild(root_1, stream_content.nextTree()) stream_content.reset(); self._adaptor.addChild(root_1, stream_cif_end_text.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "text_area" class content_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.content_return, self).__init__() self.tree = None # $ANTLR start "content" # sdl92.g:266:1: content : ( procedure | use_clause | signal_declaration | fpar | timer_declaration | syntype_definition | newtype_definition | variable_definition | synonym_definition )* -> ^( TEXTAREA_CONTENT ( fpar )* ( procedure )* ( variable_definition )* ( syntype_definition )* ( newtype_definition )* ( timer_declaration )* ( signal_declaration )* ( use_clause )* ( synonym_definition )* ) ; def content(self, ): retval = self.content_return() retval.start = self.input.LT(1) root_0 = None procedure101 = None use_clause102 = None signal_declaration103 = None fpar104 = None timer_declaration105 = None syntype_definition106 = None newtype_definition107 = None variable_definition108 = None synonym_definition109 = None stream_use_clause = RewriteRuleSubtreeStream(self._adaptor, "rule use_clause") stream_timer_declaration = RewriteRuleSubtreeStream(self._adaptor, "rule timer_declaration") stream_signal_declaration = RewriteRuleSubtreeStream(self._adaptor, "rule signal_declaration") stream_syntype_definition = RewriteRuleSubtreeStream(self._adaptor, "rule syntype_definition") stream_variable_definition = RewriteRuleSubtreeStream(self._adaptor, "rule variable_definition") stream_synonym_definition = RewriteRuleSubtreeStream(self._adaptor, "rule synonym_definition") stream_fpar = RewriteRuleSubtreeStream(self._adaptor, "rule fpar") stream_newtype_definition = RewriteRuleSubtreeStream(self._adaptor, "rule newtype_definition") stream_procedure = RewriteRuleSubtreeStream(self._adaptor, "rule procedure") try: try: # sdl92.g:267:9: ( ( procedure | use_clause | signal_declaration | fpar | timer_declaration | syntype_definition | newtype_definition | variable_definition | synonym_definition )* -> ^( TEXTAREA_CONTENT ( fpar )* ( procedure )* ( variable_definition )* ( syntype_definition )* ( newtype_definition )* ( timer_declaration )* ( signal_declaration )* ( use_clause )* ( synonym_definition )* ) ) # sdl92.g:267:18: ( procedure | use_clause | signal_declaration | fpar | timer_declaration | syntype_definition | newtype_definition | variable_definition | synonym_definition )* pass # sdl92.g:267:18: ( procedure | use_clause | signal_declaration | fpar | timer_declaration | syntype_definition | newtype_definition | variable_definition | synonym_definition )* while True: #loop30 alt30 = 10 alt30 = self.dfa30.predict(self.input) if alt30 == 1: # sdl92.g:267:19: procedure pass self._state.following.append(self.FOLLOW_procedure_in_content2858) procedure101 = self.procedure() self._state.following.pop() if self._state.backtracking == 0: stream_procedure.add(procedure101.tree) elif alt30 == 2: # sdl92.g:268:20: use_clause pass self._state.following.append(self.FOLLOW_use_clause_in_content2879) use_clause102 = self.use_clause() self._state.following.pop() if self._state.backtracking == 0: stream_use_clause.add(use_clause102.tree) elif alt30 == 3: # sdl92.g:269:20: signal_declaration pass self._state.following.append(self.FOLLOW_signal_declaration_in_content2900) signal_declaration103 = self.signal_declaration() self._state.following.pop() if self._state.backtracking == 0: stream_signal_declaration.add(signal_declaration103.tree) elif alt30 == 4: # sdl92.g:270:20: fpar pass self._state.following.append(self.FOLLOW_fpar_in_content2921) fpar104 = self.fpar() self._state.following.pop() if self._state.backtracking == 0: stream_fpar.add(fpar104.tree) elif alt30 == 5: # sdl92.g:271:20: timer_declaration pass self._state.following.append(self.FOLLOW_timer_declaration_in_content2942) timer_declaration105 = self.timer_declaration() self._state.following.pop() if self._state.backtracking == 0: stream_timer_declaration.add(timer_declaration105.tree) elif alt30 == 6: # sdl92.g:272:20: syntype_definition pass self._state.following.append(self.FOLLOW_syntype_definition_in_content2963) syntype_definition106 = self.syntype_definition() self._state.following.pop() if self._state.backtracking == 0: stream_syntype_definition.add(syntype_definition106.tree) elif alt30 == 7: # sdl92.g:273:20: newtype_definition pass self._state.following.append(self.FOLLOW_newtype_definition_in_content2984) newtype_definition107 = self.newtype_definition() self._state.following.pop() if self._state.backtracking == 0: stream_newtype_definition.add(newtype_definition107.tree) elif alt30 == 8: # sdl92.g:274:20: variable_definition pass self._state.following.append(self.FOLLOW_variable_definition_in_content3005) variable_definition108 = self.variable_definition() self._state.following.pop() if self._state.backtracking == 0: stream_variable_definition.add(variable_definition108.tree) elif alt30 == 9: # sdl92.g:275:20: synonym_definition pass self._state.following.append(self.FOLLOW_synonym_definition_in_content3026) synonym_definition109 = self.synonym_definition() self._state.following.pop() if self._state.backtracking == 0: stream_synonym_definition.add(synonym_definition109.tree) else: break #loop30 # AST Rewrite # elements: use_clause, procedure, variable_definition, syntype_definition, synonym_definition, fpar, signal_declaration, timer_declaration, newtype_definition # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 276:9: -> ^( TEXTAREA_CONTENT ( fpar )* ( procedure )* ( variable_definition )* ( syntype_definition )* ( newtype_definition )* ( timer_declaration )* ( signal_declaration )* ( use_clause )* ( synonym_definition )* ) # sdl92.g:276:18: ^( TEXTAREA_CONTENT ( fpar )* ( procedure )* ( variable_definition )* ( syntype_definition )* ( newtype_definition )* ( timer_declaration )* ( signal_declaration )* ( use_clause )* ( synonym_definition )* ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(TEXTAREA_CONTENT, "TEXTAREA_CONTENT"), root_1) # sdl92.g:276:37: ( fpar )* while stream_fpar.hasNext(): self._adaptor.addChild(root_1, stream_fpar.nextTree()) stream_fpar.reset(); # sdl92.g:276:43: ( procedure )* while stream_procedure.hasNext(): self._adaptor.addChild(root_1, stream_procedure.nextTree()) stream_procedure.reset(); # sdl92.g:276:54: ( variable_definition )* while stream_variable_definition.hasNext(): self._adaptor.addChild(root_1, stream_variable_definition.nextTree()) stream_variable_definition.reset(); # sdl92.g:277:20: ( syntype_definition )* while stream_syntype_definition.hasNext(): self._adaptor.addChild(root_1, stream_syntype_definition.nextTree()) stream_syntype_definition.reset(); # sdl92.g:277:40: ( newtype_definition )* while stream_newtype_definition.hasNext(): self._adaptor.addChild(root_1, stream_newtype_definition.nextTree()) stream_newtype_definition.reset(); # sdl92.g:277:60: ( timer_declaration )* while stream_timer_declaration.hasNext(): self._adaptor.addChild(root_1, stream_timer_declaration.nextTree()) stream_timer_declaration.reset(); # sdl92.g:278:20: ( signal_declaration )* while stream_signal_declaration.hasNext(): self._adaptor.addChild(root_1, stream_signal_declaration.nextTree()) stream_signal_declaration.reset(); # sdl92.g:278:40: ( use_clause )* while stream_use_clause.hasNext(): self._adaptor.addChild(root_1, stream_use_clause.nextTree()) stream_use_clause.reset(); # sdl92.g:278:52: ( synonym_definition )* while stream_synonym_definition.hasNext(): self._adaptor.addChild(root_1, stream_synonym_definition.nextTree()) stream_synonym_definition.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "content" class timer_declaration_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.timer_declaration_return, self).__init__() self.tree = None # $ANTLR start "timer_declaration" # sdl92.g:281:1: timer_declaration : TIMER timer_id ( ',' timer_id )* end -> ^( TIMER ( timer_id )+ ) ; def timer_declaration(self, ): retval = self.timer_declaration_return() retval.start = self.input.LT(1) root_0 = None TIMER110 = None char_literal112 = None timer_id111 = None timer_id113 = None end114 = None TIMER110_tree = None char_literal112_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_TIMER = RewriteRuleTokenStream(self._adaptor, "token TIMER") stream_timer_id = RewriteRuleSubtreeStream(self._adaptor, "rule timer_id") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:282:9: ( TIMER timer_id ( ',' timer_id )* end -> ^( TIMER ( timer_id )+ ) ) # sdl92.g:282:17: TIMER timer_id ( ',' timer_id )* end pass TIMER110=self.match(self.input, TIMER, self.FOLLOW_TIMER_in_timer_declaration3136) if self._state.backtracking == 0: stream_TIMER.add(TIMER110) self._state.following.append(self.FOLLOW_timer_id_in_timer_declaration3138) timer_id111 = self.timer_id() self._state.following.pop() if self._state.backtracking == 0: stream_timer_id.add(timer_id111.tree) # sdl92.g:283:17: ( ',' timer_id )* while True: #loop31 alt31 = 2 LA31_0 = self.input.LA(1) if (LA31_0 == COMMA) : alt31 = 1 if alt31 == 1: # sdl92.g:283:18: ',' timer_id pass char_literal112=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_timer_declaration3157) if self._state.backtracking == 0: stream_COMMA.add(char_literal112) self._state.following.append(self.FOLLOW_timer_id_in_timer_declaration3159) timer_id113 = self.timer_id() self._state.following.pop() if self._state.backtracking == 0: stream_timer_id.add(timer_id113.tree) else: break #loop31 self._state.following.append(self.FOLLOW_end_in_timer_declaration3179) end114 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end114.tree) # AST Rewrite # elements: TIMER, timer_id # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 285:9: -> ^( TIMER ( timer_id )+ ) # sdl92.g:285:17: ^( TIMER ( timer_id )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_TIMER.nextNode(), root_1) # sdl92.g:285:25: ( timer_id )+ if not (stream_timer_id.hasNext()): raise RewriteEarlyExitException() while stream_timer_id.hasNext(): self._adaptor.addChild(root_1, stream_timer_id.nextTree()) stream_timer_id.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "timer_declaration" class syntype_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.syntype_definition_return, self).__init__() self.tree = None # $ANTLR start "syntype_definition" # sdl92.g:287:1: syntype_definition : SYNTYPE syntype_name '=' parent_sort ( CONSTANTS ( range_condition ( ',' range_condition )* ) )? ENDSYNTYPE ( syntype_name )? end -> ^( SYNTYPE syntype_name parent_sort ( range_condition )* ) ; def syntype_definition(self, ): retval = self.syntype_definition_return() retval.start = self.input.LT(1) root_0 = None SYNTYPE115 = None char_literal117 = None CONSTANTS119 = None char_literal121 = None ENDSYNTYPE123 = None syntype_name116 = None parent_sort118 = None range_condition120 = None range_condition122 = None syntype_name124 = None end125 = None SYNTYPE115_tree = None char_literal117_tree = None CONSTANTS119_tree = None char_literal121_tree = None ENDSYNTYPE123_tree = None stream_CONSTANTS = RewriteRuleTokenStream(self._adaptor, "token CONSTANTS") stream_EQ = RewriteRuleTokenStream(self._adaptor, "token EQ") stream_SYNTYPE = RewriteRuleTokenStream(self._adaptor, "token SYNTYPE") stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_ENDSYNTYPE = RewriteRuleTokenStream(self._adaptor, "token ENDSYNTYPE") stream_syntype_name = RewriteRuleSubtreeStream(self._adaptor, "rule syntype_name") stream_parent_sort = RewriteRuleSubtreeStream(self._adaptor, "rule parent_sort") stream_range_condition = RewriteRuleSubtreeStream(self._adaptor, "rule range_condition") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:288:9: ( SYNTYPE syntype_name '=' parent_sort ( CONSTANTS ( range_condition ( ',' range_condition )* ) )? ENDSYNTYPE ( syntype_name )? end -> ^( SYNTYPE syntype_name parent_sort ( range_condition )* ) ) # sdl92.g:288:17: SYNTYPE syntype_name '=' parent_sort ( CONSTANTS ( range_condition ( ',' range_condition )* ) )? ENDSYNTYPE ( syntype_name )? end pass SYNTYPE115=self.match(self.input, SYNTYPE, self.FOLLOW_SYNTYPE_in_syntype_definition3223) if self._state.backtracking == 0: stream_SYNTYPE.add(SYNTYPE115) self._state.following.append(self.FOLLOW_syntype_name_in_syntype_definition3225) syntype_name116 = self.syntype_name() self._state.following.pop() if self._state.backtracking == 0: stream_syntype_name.add(syntype_name116.tree) char_literal117=self.match(self.input, EQ, self.FOLLOW_EQ_in_syntype_definition3227) if self._state.backtracking == 0: stream_EQ.add(char_literal117) self._state.following.append(self.FOLLOW_parent_sort_in_syntype_definition3229) parent_sort118 = self.parent_sort() self._state.following.pop() if self._state.backtracking == 0: stream_parent_sort.add(parent_sort118.tree) # sdl92.g:289:17: ( CONSTANTS ( range_condition ( ',' range_condition )* ) )? alt33 = 2 LA33_0 = self.input.LA(1) if (LA33_0 == CONSTANTS) : alt33 = 1 if alt33 == 1: # sdl92.g:289:18: CONSTANTS ( range_condition ( ',' range_condition )* ) pass CONSTANTS119=self.match(self.input, CONSTANTS, self.FOLLOW_CONSTANTS_in_syntype_definition3248) if self._state.backtracking == 0: stream_CONSTANTS.add(CONSTANTS119) # sdl92.g:289:28: ( range_condition ( ',' range_condition )* ) # sdl92.g:289:29: range_condition ( ',' range_condition )* pass self._state.following.append(self.FOLLOW_range_condition_in_syntype_definition3251) range_condition120 = self.range_condition() self._state.following.pop() if self._state.backtracking == 0: stream_range_condition.add(range_condition120.tree) # sdl92.g:289:45: ( ',' range_condition )* while True: #loop32 alt32 = 2 LA32_0 = self.input.LA(1) if (LA32_0 == COMMA) : alt32 = 1 if alt32 == 1: # sdl92.g:289:46: ',' range_condition pass char_literal121=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_syntype_definition3254) if self._state.backtracking == 0: stream_COMMA.add(char_literal121) self._state.following.append(self.FOLLOW_range_condition_in_syntype_definition3256) range_condition122 = self.range_condition() self._state.following.pop() if self._state.backtracking == 0: stream_range_condition.add(range_condition122.tree) else: break #loop32 ENDSYNTYPE123=self.match(self.input, ENDSYNTYPE, self.FOLLOW_ENDSYNTYPE_in_syntype_definition3280) if self._state.backtracking == 0: stream_ENDSYNTYPE.add(ENDSYNTYPE123) # sdl92.g:290:28: ( syntype_name )? alt34 = 2 LA34_0 = self.input.LA(1) if (LA34_0 == ID) : alt34 = 1 if alt34 == 1: # sdl92.g:0:0: syntype_name pass self._state.following.append(self.FOLLOW_syntype_name_in_syntype_definition3282) syntype_name124 = self.syntype_name() self._state.following.pop() if self._state.backtracking == 0: stream_syntype_name.add(syntype_name124.tree) self._state.following.append(self.FOLLOW_end_in_syntype_definition3285) end125 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end125.tree) # AST Rewrite # elements: range_condition, syntype_name, parent_sort, SYNTYPE # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 291:9: -> ^( SYNTYPE syntype_name parent_sort ( range_condition )* ) # sdl92.g:291:17: ^( SYNTYPE syntype_name parent_sort ( range_condition )* ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_SYNTYPE.nextNode(), root_1) self._adaptor.addChild(root_1, stream_syntype_name.nextTree()) self._adaptor.addChild(root_1, stream_parent_sort.nextTree()) # sdl92.g:291:52: ( range_condition )* while stream_range_condition.hasNext(): self._adaptor.addChild(root_1, stream_range_condition.nextTree()) stream_range_condition.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "syntype_definition" class syntype_name_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.syntype_name_return, self).__init__() self.tree = None # $ANTLR start "syntype_name" # sdl92.g:293:1: syntype_name : sort ; def syntype_name(self, ): retval = self.syntype_name_return() retval.start = self.input.LT(1) root_0 = None sort126 = None try: try: # sdl92.g:294:9: ( sort ) # sdl92.g:294:17: sort pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_sort_in_syntype_name3333) sort126 = self.sort() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, sort126.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "syntype_name" class parent_sort_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.parent_sort_return, self).__init__() self.tree = None # $ANTLR start "parent_sort" # sdl92.g:296:1: parent_sort : sort ; def parent_sort(self, ): retval = self.parent_sort_return() retval.start = self.input.LT(1) root_0 = None sort127 = None try: try: # sdl92.g:297:9: ( sort ) # sdl92.g:297:17: sort pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_sort_in_parent_sort3355) sort127 = self.sort() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, sort127.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "parent_sort" class newtype_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.newtype_definition_return, self).__init__() self.tree = None # $ANTLR start "newtype_definition" # sdl92.g:299:1: newtype_definition : NEWTYPE type_name ( array_definition | structure_definition )? ENDNEWTYPE ( type_name )? end -> ^( NEWTYPE type_name ( array_definition )* ( structure_definition )* ) ; def newtype_definition(self, ): retval = self.newtype_definition_return() retval.start = self.input.LT(1) root_0 = None NEWTYPE128 = None ENDNEWTYPE132 = None type_name129 = None array_definition130 = None structure_definition131 = None type_name133 = None end134 = None NEWTYPE128_tree = None ENDNEWTYPE132_tree = None stream_NEWTYPE = RewriteRuleTokenStream(self._adaptor, "token NEWTYPE") stream_ENDNEWTYPE = RewriteRuleTokenStream(self._adaptor, "token ENDNEWTYPE") stream_structure_definition = RewriteRuleSubtreeStream(self._adaptor, "rule structure_definition") stream_type_name = RewriteRuleSubtreeStream(self._adaptor, "rule type_name") stream_array_definition = RewriteRuleSubtreeStream(self._adaptor, "rule array_definition") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:300:9: ( NEWTYPE type_name ( array_definition | structure_definition )? ENDNEWTYPE ( type_name )? end -> ^( NEWTYPE type_name ( array_definition )* ( structure_definition )* ) ) # sdl92.g:300:17: NEWTYPE type_name ( array_definition | structure_definition )? ENDNEWTYPE ( type_name )? end pass NEWTYPE128=self.match(self.input, NEWTYPE, self.FOLLOW_NEWTYPE_in_newtype_definition3377) if self._state.backtracking == 0: stream_NEWTYPE.add(NEWTYPE128) self._state.following.append(self.FOLLOW_type_name_in_newtype_definition3379) type_name129 = self.type_name() self._state.following.pop() if self._state.backtracking == 0: stream_type_name.add(type_name129.tree) # sdl92.g:300:35: ( array_definition | structure_definition )? alt35 = 3 LA35_0 = self.input.LA(1) if (LA35_0 == ARRAY) : alt35 = 1 elif (LA35_0 == STRUCT) : alt35 = 2 if alt35 == 1: # sdl92.g:300:36: array_definition pass self._state.following.append(self.FOLLOW_array_definition_in_newtype_definition3382) array_definition130 = self.array_definition() self._state.following.pop() if self._state.backtracking == 0: stream_array_definition.add(array_definition130.tree) elif alt35 == 2: # sdl92.g:300:53: structure_definition pass self._state.following.append(self.FOLLOW_structure_definition_in_newtype_definition3384) structure_definition131 = self.structure_definition() self._state.following.pop() if self._state.backtracking == 0: stream_structure_definition.add(structure_definition131.tree) ENDNEWTYPE132=self.match(self.input, ENDNEWTYPE, self.FOLLOW_ENDNEWTYPE_in_newtype_definition3404) if self._state.backtracking == 0: stream_ENDNEWTYPE.add(ENDNEWTYPE132) # sdl92.g:301:28: ( type_name )? alt36 = 2 LA36_0 = self.input.LA(1) if (LA36_0 == ID) : alt36 = 1 if alt36 == 1: # sdl92.g:0:0: type_name pass self._state.following.append(self.FOLLOW_type_name_in_newtype_definition3406) type_name133 = self.type_name() self._state.following.pop() if self._state.backtracking == 0: stream_type_name.add(type_name133.tree) self._state.following.append(self.FOLLOW_end_in_newtype_definition3409) end134 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end134.tree) # AST Rewrite # elements: NEWTYPE, structure_definition, array_definition, type_name # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 302:9: -> ^( NEWTYPE type_name ( array_definition )* ( structure_definition )* ) # sdl92.g:302:17: ^( NEWTYPE type_name ( array_definition )* ( structure_definition )* ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_NEWTYPE.nextNode(), root_1) self._adaptor.addChild(root_1, stream_type_name.nextTree()) # sdl92.g:302:37: ( array_definition )* while stream_array_definition.hasNext(): self._adaptor.addChild(root_1, stream_array_definition.nextTree()) stream_array_definition.reset(); # sdl92.g:302:55: ( structure_definition )* while stream_structure_definition.hasNext(): self._adaptor.addChild(root_1, stream_structure_definition.nextTree()) stream_structure_definition.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "newtype_definition" class type_name_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.type_name_return, self).__init__() self.tree = None # $ANTLR start "type_name" # sdl92.g:305:1: type_name : sort ; def type_name(self, ): retval = self.type_name_return() retval.start = self.input.LT(1) root_0 = None sort135 = None try: try: # sdl92.g:306:9: ( sort ) # sdl92.g:306:17: sort pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_sort_in_type_name3459) sort135 = self.sort() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, sort135.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "type_name" class array_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.array_definition_return, self).__init__() self.tree = None # $ANTLR start "array_definition" # sdl92.g:308:1: array_definition : ARRAY '(' sort ',' sort ')' -> ^( ARRAY sort sort ) ; def array_definition(self, ): retval = self.array_definition_return() retval.start = self.input.LT(1) root_0 = None ARRAY136 = None char_literal137 = None char_literal139 = None char_literal141 = None sort138 = None sort140 = None ARRAY136_tree = None char_literal137_tree = None char_literal139_tree = None char_literal141_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_ARRAY = RewriteRuleTokenStream(self._adaptor, "token ARRAY") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_sort = RewriteRuleSubtreeStream(self._adaptor, "rule sort") try: try: # sdl92.g:309:9: ( ARRAY '(' sort ',' sort ')' -> ^( ARRAY sort sort ) ) # sdl92.g:309:17: ARRAY '(' sort ',' sort ')' pass ARRAY136=self.match(self.input, ARRAY, self.FOLLOW_ARRAY_in_array_definition3481) if self._state.backtracking == 0: stream_ARRAY.add(ARRAY136) char_literal137=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_array_definition3483) if self._state.backtracking == 0: stream_L_PAREN.add(char_literal137) self._state.following.append(self.FOLLOW_sort_in_array_definition3485) sort138 = self.sort() self._state.following.pop() if self._state.backtracking == 0: stream_sort.add(sort138.tree) char_literal139=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_array_definition3487) if self._state.backtracking == 0: stream_COMMA.add(char_literal139) self._state.following.append(self.FOLLOW_sort_in_array_definition3489) sort140 = self.sort() self._state.following.pop() if self._state.backtracking == 0: stream_sort.add(sort140.tree) char_literal141=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_array_definition3491) if self._state.backtracking == 0: stream_R_PAREN.add(char_literal141) # AST Rewrite # elements: ARRAY, sort, sort # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 310:9: -> ^( ARRAY sort sort ) # sdl92.g:310:17: ^( ARRAY sort sort ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_ARRAY.nextNode(), root_1) self._adaptor.addChild(root_1, stream_sort.nextTree()) self._adaptor.addChild(root_1, stream_sort.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "array_definition" class structure_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.structure_definition_return, self).__init__() self.tree = None # $ANTLR start "structure_definition" # sdl92.g:312:1: structure_definition : STRUCT field_list end -> ^( STRUCT field_list ) ; def structure_definition(self, ): retval = self.structure_definition_return() retval.start = self.input.LT(1) root_0 = None STRUCT142 = None field_list143 = None end144 = None STRUCT142_tree = None stream_STRUCT = RewriteRuleTokenStream(self._adaptor, "token STRUCT") stream_field_list = RewriteRuleSubtreeStream(self._adaptor, "rule field_list") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:313:9: ( STRUCT field_list end -> ^( STRUCT field_list ) ) # sdl92.g:313:17: STRUCT field_list end pass STRUCT142=self.match(self.input, STRUCT, self.FOLLOW_STRUCT_in_structure_definition3536) if self._state.backtracking == 0: stream_STRUCT.add(STRUCT142) self._state.following.append(self.FOLLOW_field_list_in_structure_definition3538) field_list143 = self.field_list() self._state.following.pop() if self._state.backtracking == 0: stream_field_list.add(field_list143.tree) self._state.following.append(self.FOLLOW_end_in_structure_definition3540) end144 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end144.tree) # AST Rewrite # elements: field_list, STRUCT # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 314:9: -> ^( STRUCT field_list ) # sdl92.g:314:17: ^( STRUCT field_list ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_STRUCT.nextNode(), root_1) self._adaptor.addChild(root_1, stream_field_list.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "structure_definition" class field_list_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.field_list_return, self).__init__() self.tree = None # $ANTLR start "field_list" # sdl92.g:316:1: field_list : field_definition ( end field_definition )* -> ^( FIELDS ( field_definition )+ ) ; def field_list(self, ): retval = self.field_list_return() retval.start = self.input.LT(1) root_0 = None field_definition145 = None end146 = None field_definition147 = None stream_field_definition = RewriteRuleSubtreeStream(self._adaptor, "rule field_definition") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:317:9: ( field_definition ( end field_definition )* -> ^( FIELDS ( field_definition )+ ) ) # sdl92.g:317:17: field_definition ( end field_definition )* pass self._state.following.append(self.FOLLOW_field_definition_in_field_list3583) field_definition145 = self.field_definition() self._state.following.pop() if self._state.backtracking == 0: stream_field_definition.add(field_definition145.tree) # sdl92.g:317:34: ( end field_definition )* while True: #loop37 alt37 = 2 alt37 = self.dfa37.predict(self.input) if alt37 == 1: # sdl92.g:317:35: end field_definition pass self._state.following.append(self.FOLLOW_end_in_field_list3586) end146 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end146.tree) self._state.following.append(self.FOLLOW_field_definition_in_field_list3588) field_definition147 = self.field_definition() self._state.following.pop() if self._state.backtracking == 0: stream_field_definition.add(field_definition147.tree) else: break #loop37 # AST Rewrite # elements: field_definition # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 318:9: -> ^( FIELDS ( field_definition )+ ) # sdl92.g:318:17: ^( FIELDS ( field_definition )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(FIELDS, "FIELDS"), root_1) # sdl92.g:318:26: ( field_definition )+ if not (stream_field_definition.hasNext()): raise RewriteEarlyExitException() while stream_field_definition.hasNext(): self._adaptor.addChild(root_1, stream_field_definition.nextTree()) stream_field_definition.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "field_list" class field_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.field_definition_return, self).__init__() self.tree = None # $ANTLR start "field_definition" # sdl92.g:320:1: field_definition : field_name ( ',' field_name )* sort -> ^( FIELD ( field_name )+ sort ) ; def field_definition(self, ): retval = self.field_definition_return() retval.start = self.input.LT(1) root_0 = None char_literal149 = None field_name148 = None field_name150 = None sort151 = None char_literal149_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_field_name = RewriteRuleSubtreeStream(self._adaptor, "rule field_name") stream_sort = RewriteRuleSubtreeStream(self._adaptor, "rule sort") try: try: # sdl92.g:321:9: ( field_name ( ',' field_name )* sort -> ^( FIELD ( field_name )+ sort ) ) # sdl92.g:321:17: field_name ( ',' field_name )* sort pass self._state.following.append(self.FOLLOW_field_name_in_field_definition3634) field_name148 = self.field_name() self._state.following.pop() if self._state.backtracking == 0: stream_field_name.add(field_name148.tree) # sdl92.g:321:28: ( ',' field_name )* while True: #loop38 alt38 = 2 LA38_0 = self.input.LA(1) if (LA38_0 == COMMA) : alt38 = 1 if alt38 == 1: # sdl92.g:321:29: ',' field_name pass char_literal149=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_field_definition3637) if self._state.backtracking == 0: stream_COMMA.add(char_literal149) self._state.following.append(self.FOLLOW_field_name_in_field_definition3639) field_name150 = self.field_name() self._state.following.pop() if self._state.backtracking == 0: stream_field_name.add(field_name150.tree) else: break #loop38 self._state.following.append(self.FOLLOW_sort_in_field_definition3643) sort151 = self.sort() self._state.following.pop() if self._state.backtracking == 0: stream_sort.add(sort151.tree) # AST Rewrite # elements: sort, field_name # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 322:9: -> ^( FIELD ( field_name )+ sort ) # sdl92.g:322:17: ^( FIELD ( field_name )+ sort ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(FIELD, "FIELD"), root_1) # sdl92.g:322:25: ( field_name )+ if not (stream_field_name.hasNext()): raise RewriteEarlyExitException() while stream_field_name.hasNext(): self._adaptor.addChild(root_1, stream_field_name.nextTree()) stream_field_name.reset() self._adaptor.addChild(root_1, stream_sort.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "field_definition" class variable_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.variable_definition_return, self).__init__() self.tree = None # $ANTLR start "variable_definition" # sdl92.g:324:1: variable_definition : DCL variables_of_sort ( ',' variables_of_sort )* end -> ^( DCL ( variables_of_sort )+ ) ; def variable_definition(self, ): retval = self.variable_definition_return() retval.start = self.input.LT(1) root_0 = None DCL152 = None char_literal154 = None variables_of_sort153 = None variables_of_sort155 = None end156 = None DCL152_tree = None char_literal154_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_DCL = RewriteRuleTokenStream(self._adaptor, "token DCL") stream_variables_of_sort = RewriteRuleSubtreeStream(self._adaptor, "rule variables_of_sort") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:325:9: ( DCL variables_of_sort ( ',' variables_of_sort )* end -> ^( DCL ( variables_of_sort )+ ) ) # sdl92.g:325:17: DCL variables_of_sort ( ',' variables_of_sort )* end pass DCL152=self.match(self.input, DCL, self.FOLLOW_DCL_in_variable_definition3689) if self._state.backtracking == 0: stream_DCL.add(DCL152) self._state.following.append(self.FOLLOW_variables_of_sort_in_variable_definition3691) variables_of_sort153 = self.variables_of_sort() self._state.following.pop() if self._state.backtracking == 0: stream_variables_of_sort.add(variables_of_sort153.tree) # sdl92.g:326:17: ( ',' variables_of_sort )* while True: #loop39 alt39 = 2 LA39_0 = self.input.LA(1) if (LA39_0 == COMMA) : alt39 = 1 if alt39 == 1: # sdl92.g:326:18: ',' variables_of_sort pass char_literal154=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_variable_definition3710) if self._state.backtracking == 0: stream_COMMA.add(char_literal154) self._state.following.append(self.FOLLOW_variables_of_sort_in_variable_definition3712) variables_of_sort155 = self.variables_of_sort() self._state.following.pop() if self._state.backtracking == 0: stream_variables_of_sort.add(variables_of_sort155.tree) else: break #loop39 self._state.following.append(self.FOLLOW_end_in_variable_definition3732) end156 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end156.tree) # AST Rewrite # elements: DCL, variables_of_sort # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 328:9: -> ^( DCL ( variables_of_sort )+ ) # sdl92.g:328:17: ^( DCL ( variables_of_sort )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_DCL.nextNode(), root_1) # sdl92.g:328:23: ( variables_of_sort )+ if not (stream_variables_of_sort.hasNext()): raise RewriteEarlyExitException() while stream_variables_of_sort.hasNext(): self._adaptor.addChild(root_1, stream_variables_of_sort.nextTree()) stream_variables_of_sort.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "variable_definition" class synonym_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.synonym_definition_return, self).__init__() self.tree = None # $ANTLR start "synonym_definition" # sdl92.g:330:1: synonym_definition : internal_synonym_definition ; def synonym_definition(self, ): retval = self.synonym_definition_return() retval.start = self.input.LT(1) root_0 = None internal_synonym_definition157 = None try: try: # sdl92.g:331:9: ( internal_synonym_definition ) # sdl92.g:331:17: internal_synonym_definition pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_internal_synonym_definition_in_synonym_definition3776) internal_synonym_definition157 = self.internal_synonym_definition() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, internal_synonym_definition157.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "synonym_definition" class internal_synonym_definition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.internal_synonym_definition_return, self).__init__() self.tree = None # $ANTLR start "internal_synonym_definition" # sdl92.g:333:1: internal_synonym_definition : SYNONYM synonym_definition_item ( ',' synonym_definition_item )* end -> ^( SYNONYM_LIST ( synonym_definition_item )+ ) ; def internal_synonym_definition(self, ): retval = self.internal_synonym_definition_return() retval.start = self.input.LT(1) root_0 = None SYNONYM158 = None char_literal160 = None synonym_definition_item159 = None synonym_definition_item161 = None end162 = None SYNONYM158_tree = None char_literal160_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_SYNONYM = RewriteRuleTokenStream(self._adaptor, "token SYNONYM") stream_synonym_definition_item = RewriteRuleSubtreeStream(self._adaptor, "rule synonym_definition_item") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:334:9: ( SYNONYM synonym_definition_item ( ',' synonym_definition_item )* end -> ^( SYNONYM_LIST ( synonym_definition_item )+ ) ) # sdl92.g:334:17: SYNONYM synonym_definition_item ( ',' synonym_definition_item )* end pass SYNONYM158=self.match(self.input, SYNONYM, self.FOLLOW_SYNONYM_in_internal_synonym_definition3798) if self._state.backtracking == 0: stream_SYNONYM.add(SYNONYM158) self._state.following.append(self.FOLLOW_synonym_definition_item_in_internal_synonym_definition3800) synonym_definition_item159 = self.synonym_definition_item() self._state.following.pop() if self._state.backtracking == 0: stream_synonym_definition_item.add(synonym_definition_item159.tree) # sdl92.g:334:49: ( ',' synonym_definition_item )* while True: #loop40 alt40 = 2 LA40_0 = self.input.LA(1) if (LA40_0 == COMMA) : alt40 = 1 if alt40 == 1: # sdl92.g:334:50: ',' synonym_definition_item pass char_literal160=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_internal_synonym_definition3803) if self._state.backtracking == 0: stream_COMMA.add(char_literal160) self._state.following.append(self.FOLLOW_synonym_definition_item_in_internal_synonym_definition3805) synonym_definition_item161 = self.synonym_definition_item() self._state.following.pop() if self._state.backtracking == 0: stream_synonym_definition_item.add(synonym_definition_item161.tree) else: break #loop40 self._state.following.append(self.FOLLOW_end_in_internal_synonym_definition3825) end162 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end162.tree) # AST Rewrite # elements: synonym_definition_item # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 336:9: -> ^( SYNONYM_LIST ( synonym_definition_item )+ ) # sdl92.g:336:17: ^( SYNONYM_LIST ( synonym_definition_item )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(SYNONYM_LIST, "SYNONYM_LIST"), root_1) # sdl92.g:336:32: ( synonym_definition_item )+ if not (stream_synonym_definition_item.hasNext()): raise RewriteEarlyExitException() while stream_synonym_definition_item.hasNext(): self._adaptor.addChild(root_1, stream_synonym_definition_item.nextTree()) stream_synonym_definition_item.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "internal_synonym_definition" class synonym_definition_item_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.synonym_definition_item_return, self).__init__() self.tree = None # $ANTLR start "synonym_definition_item" # sdl92.g:338:1: synonym_definition_item : sort sort '=' ground_expression -> ^( SYNONYM sort sort ground_expression ) ; def synonym_definition_item(self, ): retval = self.synonym_definition_item_return() retval.start = self.input.LT(1) root_0 = None char_literal165 = None sort163 = None sort164 = None ground_expression166 = None char_literal165_tree = None stream_EQ = RewriteRuleTokenStream(self._adaptor, "token EQ") stream_sort = RewriteRuleSubtreeStream(self._adaptor, "rule sort") stream_ground_expression = RewriteRuleSubtreeStream(self._adaptor, "rule ground_expression") try: try: # sdl92.g:339:9: ( sort sort '=' ground_expression -> ^( SYNONYM sort sort ground_expression ) ) # sdl92.g:339:17: sort sort '=' ground_expression pass self._state.following.append(self.FOLLOW_sort_in_synonym_definition_item3869) sort163 = self.sort() self._state.following.pop() if self._state.backtracking == 0: stream_sort.add(sort163.tree) self._state.following.append(self.FOLLOW_sort_in_synonym_definition_item3871) sort164 = self.sort() self._state.following.pop() if self._state.backtracking == 0: stream_sort.add(sort164.tree) char_literal165=self.match(self.input, EQ, self.FOLLOW_EQ_in_synonym_definition_item3873) if self._state.backtracking == 0: stream_EQ.add(char_literal165) self._state.following.append(self.FOLLOW_ground_expression_in_synonym_definition_item3875) ground_expression166 = self.ground_expression() self._state.following.pop() if self._state.backtracking == 0: stream_ground_expression.add(ground_expression166.tree) # AST Rewrite # elements: ground_expression, sort, sort # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 340:9: -> ^( SYNONYM sort sort ground_expression ) # sdl92.g:340:17: ^( SYNONYM sort sort ground_expression ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(SYNONYM, "SYNONYM"), root_1) self._adaptor.addChild(root_1, stream_sort.nextTree()) self._adaptor.addChild(root_1, stream_sort.nextTree()) self._adaptor.addChild(root_1, stream_ground_expression.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "synonym_definition_item" class variables_of_sort_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.variables_of_sort_return, self).__init__() self.tree = None # $ANTLR start "variables_of_sort" # sdl92.g:342:1: variables_of_sort : variable_id ( ',' variable_id )* sort ( ':=' ground_expression )? -> ^( VARIABLES ( variable_id )+ sort ( ground_expression )? ) ; def variables_of_sort(self, ): retval = self.variables_of_sort_return() retval.start = self.input.LT(1) root_0 = None char_literal168 = None string_literal171 = None variable_id167 = None variable_id169 = None sort170 = None ground_expression172 = None char_literal168_tree = None string_literal171_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_ASSIG_OP = RewriteRuleTokenStream(self._adaptor, "token ASSIG_OP") stream_sort = RewriteRuleSubtreeStream(self._adaptor, "rule sort") stream_ground_expression = RewriteRuleSubtreeStream(self._adaptor, "rule ground_expression") stream_variable_id = RewriteRuleSubtreeStream(self._adaptor, "rule variable_id") try: try: # sdl92.g:343:9: ( variable_id ( ',' variable_id )* sort ( ':=' ground_expression )? -> ^( VARIABLES ( variable_id )+ sort ( ground_expression )? ) ) # sdl92.g:343:17: variable_id ( ',' variable_id )* sort ( ':=' ground_expression )? pass self._state.following.append(self.FOLLOW_variable_id_in_variables_of_sort3922) variable_id167 = self.variable_id() self._state.following.pop() if self._state.backtracking == 0: stream_variable_id.add(variable_id167.tree) # sdl92.g:343:29: ( ',' variable_id )* while True: #loop41 alt41 = 2 LA41_0 = self.input.LA(1) if (LA41_0 == COMMA) : alt41 = 1 if alt41 == 1: # sdl92.g:343:30: ',' variable_id pass char_literal168=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_variables_of_sort3925) if self._state.backtracking == 0: stream_COMMA.add(char_literal168) self._state.following.append(self.FOLLOW_variable_id_in_variables_of_sort3927) variable_id169 = self.variable_id() self._state.following.pop() if self._state.backtracking == 0: stream_variable_id.add(variable_id169.tree) else: break #loop41 self._state.following.append(self.FOLLOW_sort_in_variables_of_sort3931) sort170 = self.sort() self._state.following.pop() if self._state.backtracking == 0: stream_sort.add(sort170.tree) # sdl92.g:343:53: ( ':=' ground_expression )? alt42 = 2 LA42_0 = self.input.LA(1) if (LA42_0 == ASSIG_OP) : alt42 = 1 if alt42 == 1: # sdl92.g:343:54: ':=' ground_expression pass string_literal171=self.match(self.input, ASSIG_OP, self.FOLLOW_ASSIG_OP_in_variables_of_sort3934) if self._state.backtracking == 0: stream_ASSIG_OP.add(string_literal171) self._state.following.append(self.FOLLOW_ground_expression_in_variables_of_sort3936) ground_expression172 = self.ground_expression() self._state.following.pop() if self._state.backtracking == 0: stream_ground_expression.add(ground_expression172.tree) # AST Rewrite # elements: sort, variable_id, ground_expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 344:9: -> ^( VARIABLES ( variable_id )+ sort ( ground_expression )? ) # sdl92.g:344:17: ^( VARIABLES ( variable_id )+ sort ( ground_expression )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(VARIABLES, "VARIABLES"), root_1) # sdl92.g:344:29: ( variable_id )+ if not (stream_variable_id.hasNext()): raise RewriteEarlyExitException() while stream_variable_id.hasNext(): self._adaptor.addChild(root_1, stream_variable_id.nextTree()) stream_variable_id.reset() self._adaptor.addChild(root_1, stream_sort.nextTree()) # sdl92.g:344:47: ( ground_expression )? if stream_ground_expression.hasNext(): self._adaptor.addChild(root_1, stream_ground_expression.nextTree()) stream_ground_expression.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "variables_of_sort" class ground_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.ground_expression_return, self).__init__() self.tree = None # $ANTLR start "ground_expression" # sdl92.g:347:1: ground_expression : expression -> ^( GROUND expression ) ; def ground_expression(self, ): retval = self.ground_expression_return() retval.start = self.input.LT(1) root_0 = None expression173 = None stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") try: try: # sdl92.g:348:9: ( expression -> ^( GROUND expression ) ) # sdl92.g:348:17: expression pass self._state.following.append(self.FOLLOW_expression_in_ground_expression3988) expression173 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression173.tree) # AST Rewrite # elements: expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 349:9: -> ^( GROUND expression ) # sdl92.g:349:17: ^( GROUND expression ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(GROUND, "GROUND"), root_1) self._adaptor.addChild(root_1, stream_expression.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "ground_expression" class number_of_instances_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.number_of_instances_return, self).__init__() self.tree = None # $ANTLR start "number_of_instances" # sdl92.g:352:1: number_of_instances : '(' initial_number= INT ',' maximum_number= INT ')' -> ^( NUMBER_OF_INSTANCES $initial_number $maximum_number) ; def number_of_instances(self, ): retval = self.number_of_instances_return() retval.start = self.input.LT(1) root_0 = None initial_number = None maximum_number = None char_literal174 = None char_literal175 = None char_literal176 = None initial_number_tree = None maximum_number_tree = None char_literal174_tree = None char_literal175_tree = None char_literal176_tree = None stream_INT = RewriteRuleTokenStream(self._adaptor, "token INT") stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") try: try: # sdl92.g:353:9: ( '(' initial_number= INT ',' maximum_number= INT ')' -> ^( NUMBER_OF_INSTANCES $initial_number $maximum_number) ) # sdl92.g:353:17: '(' initial_number= INT ',' maximum_number= INT ')' pass char_literal174=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_number_of_instances4032) if self._state.backtracking == 0: stream_L_PAREN.add(char_literal174) initial_number=self.match(self.input, INT, self.FOLLOW_INT_in_number_of_instances4036) if self._state.backtracking == 0: stream_INT.add(initial_number) char_literal175=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_number_of_instances4038) if self._state.backtracking == 0: stream_COMMA.add(char_literal175) maximum_number=self.match(self.input, INT, self.FOLLOW_INT_in_number_of_instances4042) if self._state.backtracking == 0: stream_INT.add(maximum_number) char_literal176=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_number_of_instances4044) if self._state.backtracking == 0: stream_R_PAREN.add(char_literal176) # AST Rewrite # elements: maximum_number, initial_number # token labels: maximum_number, initial_number # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 stream_maximum_number = RewriteRuleTokenStream(self._adaptor, "token maximum_number", maximum_number) stream_initial_number = RewriteRuleTokenStream(self._adaptor, "token initial_number", initial_number) if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 354:9: -> ^( NUMBER_OF_INSTANCES $initial_number $maximum_number) # sdl92.g:354:17: ^( NUMBER_OF_INSTANCES $initial_number $maximum_number) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(NUMBER_OF_INSTANCES, "NUMBER_OF_INSTANCES"), root_1) self._adaptor.addChild(root_1, stream_initial_number.nextNode()) self._adaptor.addChild(root_1, stream_maximum_number.nextNode()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "number_of_instances" class processBody_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.processBody_return, self).__init__() self.tree = None # $ANTLR start "processBody" # sdl92.g:357:1: processBody : ( start )? ( state | floating_label )* ; def processBody(self, ): retval = self.processBody_return() retval.start = self.input.LT(1) root_0 = None start177 = None state178 = None floating_label179 = None try: try: # sdl92.g:358:9: ( ( start )? ( state | floating_label )* ) # sdl92.g:358:17: ( start )? ( state | floating_label )* pass root_0 = self._adaptor.nil() # sdl92.g:358:17: ( start )? alt43 = 2 alt43 = self.dfa43.predict(self.input) if alt43 == 1: # sdl92.g:0:0: start pass self._state.following.append(self.FOLLOW_start_in_processBody4092) start177 = self.start() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, start177.tree) # sdl92.g:358:24: ( state | floating_label )* while True: #loop44 alt44 = 3 alt44 = self.dfa44.predict(self.input) if alt44 == 1: # sdl92.g:358:25: state pass self._state.following.append(self.FOLLOW_state_in_processBody4096) state178 = self.state() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, state178.tree) elif alt44 == 2: # sdl92.g:358:33: floating_label pass self._state.following.append(self.FOLLOW_floating_label_in_processBody4100) floating_label179 = self.floating_label() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, floating_label179.tree) else: break #loop44 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "processBody" class start_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.start_return, self).__init__() self.tree = None # $ANTLR start "start" # sdl92.g:361:1: start : ( cif )? ( hyperlink )? START (name= state_entry_point_name )? end ( transition )? -> ^( START ( cif )? ( hyperlink )? ( $name)? ( end )? ( transition )? ) ; def start(self, ): retval = self.start_return() retval.start = self.input.LT(1) root_0 = None START182 = None name = None cif180 = None hyperlink181 = None end183 = None transition184 = None START182_tree = None stream_START = RewriteRuleTokenStream(self._adaptor, "token START") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_state_entry_point_name = RewriteRuleSubtreeStream(self._adaptor, "rule state_entry_point_name") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_transition = RewriteRuleSubtreeStream(self._adaptor, "rule transition") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:362:9: ( ( cif )? ( hyperlink )? START (name= state_entry_point_name )? end ( transition )? -> ^( START ( cif )? ( hyperlink )? ( $name)? ( end )? ( transition )? ) ) # sdl92.g:362:17: ( cif )? ( hyperlink )? START (name= state_entry_point_name )? end ( transition )? pass # sdl92.g:362:17: ( cif )? alt45 = 2 LA45_0 = self.input.LA(1) if (LA45_0 == 218) : LA45_1 = self.input.LA(2) if (LA45_1 == ANSWER or LA45_1 == COMMENT or LA45_1 == CONNECT or LA45_1 == DECISION or LA45_1 == INPUT or (JOIN <= LA45_1 <= LABEL) or LA45_1 == NEXTSTATE or LA45_1 == OUTPUT or (PROCEDURE <= LA45_1 <= PROCEDURE_CALL) or (PROCESS <= LA45_1 <= PROVIDED) or LA45_1 == RETURN or LA45_1 == STATE or LA45_1 == STOP or LA45_1 == TASK or LA45_1 == TEXT or LA45_1 == START) : alt45 = 1 if alt45 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_start4125) cif180 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif180.tree) # sdl92.g:363:17: ( hyperlink )? alt46 = 2 LA46_0 = self.input.LA(1) if (LA46_0 == 218) : alt46 = 1 if alt46 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_start4144) hyperlink181 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink181.tree) START182=self.match(self.input, START, self.FOLLOW_START_in_start4163) if self._state.backtracking == 0: stream_START.add(START182) # sdl92.g:364:27: (name= state_entry_point_name )? alt47 = 2 LA47_0 = self.input.LA(1) if (LA47_0 == ID) : alt47 = 1 if alt47 == 1: # sdl92.g:0:0: name= state_entry_point_name pass self._state.following.append(self.FOLLOW_state_entry_point_name_in_start4167) name = self.state_entry_point_name() self._state.following.pop() if self._state.backtracking == 0: stream_state_entry_point_name.add(name.tree) self._state.following.append(self.FOLLOW_end_in_start4170) end183 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end183.tree) # sdl92.g:365:17: ( transition )? alt48 = 2 alt48 = self.dfa48.predict(self.input) if alt48 == 1: # sdl92.g:0:0: transition pass self._state.following.append(self.FOLLOW_transition_in_start4188) transition184 = self.transition() self._state.following.pop() if self._state.backtracking == 0: stream_transition.add(transition184.tree) # AST Rewrite # elements: end, transition, hyperlink, name, cif, START # token labels: # rule labels: retval, name # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) if name is not None: stream_name = RewriteRuleSubtreeStream(self._adaptor, "rule name", name.tree) else: stream_name = RewriteRuleSubtreeStream(self._adaptor, "token name", None) root_0 = self._adaptor.nil() # 366:9: -> ^( START ( cif )? ( hyperlink )? ( $name)? ( end )? ( transition )? ) # sdl92.g:366:17: ^( START ( cif )? ( hyperlink )? ( $name)? ( end )? ( transition )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_START.nextNode(), root_1) # sdl92.g:366:25: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:366:30: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); # sdl92.g:366:41: ( $name)? if stream_name.hasNext(): self._adaptor.addChild(root_1, stream_name.nextTree()) stream_name.reset(); # sdl92.g:366:48: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); # sdl92.g:366:53: ( transition )? if stream_transition.hasNext(): self._adaptor.addChild(root_1, stream_transition.nextTree()) stream_transition.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "start" class floating_label_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.floating_label_return, self).__init__() self.tree = None # $ANTLR start "floating_label" # sdl92.g:369:1: floating_label : ( cif )? ( hyperlink )? CONNECTION connector_name ':' ( transition )? ( cif_end_label )? ENDCONNECTION SEMI -> ^( FLOATING_LABEL ( cif )? ( hyperlink )? connector_name ( transition )? ) ; def floating_label(self, ): retval = self.floating_label_return() retval.start = self.input.LT(1) root_0 = None CONNECTION187 = None char_literal189 = None ENDCONNECTION192 = None SEMI193 = None cif185 = None hyperlink186 = None connector_name188 = None transition190 = None cif_end_label191 = None CONNECTION187_tree = None char_literal189_tree = None ENDCONNECTION192_tree = None SEMI193_tree = None stream_ENDCONNECTION = RewriteRuleTokenStream(self._adaptor, "token ENDCONNECTION") stream_CONNECTION = RewriteRuleTokenStream(self._adaptor, "token CONNECTION") stream_213 = RewriteRuleTokenStream(self._adaptor, "token 213") stream_SEMI = RewriteRuleTokenStream(self._adaptor, "token SEMI") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_cif_end_label = RewriteRuleSubtreeStream(self._adaptor, "rule cif_end_label") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_transition = RewriteRuleSubtreeStream(self._adaptor, "rule transition") stream_connector_name = RewriteRuleSubtreeStream(self._adaptor, "rule connector_name") try: try: # sdl92.g:370:9: ( ( cif )? ( hyperlink )? CONNECTION connector_name ':' ( transition )? ( cif_end_label )? ENDCONNECTION SEMI -> ^( FLOATING_LABEL ( cif )? ( hyperlink )? connector_name ( transition )? ) ) # sdl92.g:370:17: ( cif )? ( hyperlink )? CONNECTION connector_name ':' ( transition )? ( cif_end_label )? ENDCONNECTION SEMI pass # sdl92.g:370:17: ( cif )? alt49 = 2 LA49_0 = self.input.LA(1) if (LA49_0 == 218) : LA49_1 = self.input.LA(2) if (LA49_1 == ANSWER or LA49_1 == COMMENT or LA49_1 == CONNECT or LA49_1 == DECISION or LA49_1 == INPUT or (JOIN <= LA49_1 <= LABEL) or LA49_1 == NEXTSTATE or LA49_1 == OUTPUT or (PROCEDURE <= LA49_1 <= PROCEDURE_CALL) or (PROCESS <= LA49_1 <= PROVIDED) or LA49_1 == RETURN or LA49_1 == STATE or LA49_1 == STOP or LA49_1 == TASK or LA49_1 == TEXT or LA49_1 == START) : alt49 = 1 if alt49 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_floating_label4247) cif185 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif185.tree) # sdl92.g:371:17: ( hyperlink )? alt50 = 2 LA50_0 = self.input.LA(1) if (LA50_0 == 218) : alt50 = 1 if alt50 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_floating_label4266) hyperlink186 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink186.tree) CONNECTION187=self.match(self.input, CONNECTION, self.FOLLOW_CONNECTION_in_floating_label4285) if self._state.backtracking == 0: stream_CONNECTION.add(CONNECTION187) self._state.following.append(self.FOLLOW_connector_name_in_floating_label4287) connector_name188 = self.connector_name() self._state.following.pop() if self._state.backtracking == 0: stream_connector_name.add(connector_name188.tree) char_literal189=self.match(self.input, 213, self.FOLLOW_213_in_floating_label4289) if self._state.backtracking == 0: stream_213.add(char_literal189) # sdl92.g:373:17: ( transition )? alt51 = 2 LA51_0 = self.input.LA(1) if (LA51_0 == 218) : LA51_1 = self.input.LA(2) if (LA51_1 == ANSWER or LA51_1 == COMMENT or LA51_1 == CONNECT or LA51_1 == DECISION or LA51_1 == INPUT or (JOIN <= LA51_1 <= LABEL) or LA51_1 == NEXTSTATE or LA51_1 == OUTPUT or (PROCEDURE <= LA51_1 <= PROCEDURE_CALL) or (PROCESS <= LA51_1 <= PROVIDED) or LA51_1 == RETURN or LA51_1 == STATE or LA51_1 == STOP or LA51_1 == TASK or LA51_1 == TEXT or LA51_1 == START or LA51_1 == KEEP) : alt51 = 1 elif (LA51_0 == ALTERNATIVE or LA51_0 == DECISION or LA51_0 == EXPORT or LA51_0 == FOR or LA51_0 == JOIN or LA51_0 == NEXTSTATE or LA51_0 == OUTPUT or (RESET <= LA51_0 <= RETURN) or LA51_0 == SET or (STOP <= LA51_0 <= STRING) or LA51_0 == TASK or LA51_0 == CALL or LA51_0 == CREATE or LA51_0 == ID) : alt51 = 1 if alt51 == 1: # sdl92.g:0:0: transition pass self._state.following.append(self.FOLLOW_transition_in_floating_label4307) transition190 = self.transition() self._state.following.pop() if self._state.backtracking == 0: stream_transition.add(transition190.tree) # sdl92.g:374:17: ( cif_end_label )? alt52 = 2 LA52_0 = self.input.LA(1) if (LA52_0 == 218) : alt52 = 1 if alt52 == 1: # sdl92.g:0:0: cif_end_label pass self._state.following.append(self.FOLLOW_cif_end_label_in_floating_label4326) cif_end_label191 = self.cif_end_label() self._state.following.pop() if self._state.backtracking == 0: stream_cif_end_label.add(cif_end_label191.tree) ENDCONNECTION192=self.match(self.input, ENDCONNECTION, self.FOLLOW_ENDCONNECTION_in_floating_label4345) if self._state.backtracking == 0: stream_ENDCONNECTION.add(ENDCONNECTION192) SEMI193=self.match(self.input, SEMI, self.FOLLOW_SEMI_in_floating_label4347) if self._state.backtracking == 0: stream_SEMI.add(SEMI193) # AST Rewrite # elements: cif, transition, connector_name, hyperlink # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 376:9: -> ^( FLOATING_LABEL ( cif )? ( hyperlink )? connector_name ( transition )? ) # sdl92.g:376:17: ^( FLOATING_LABEL ( cif )? ( hyperlink )? connector_name ( transition )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(FLOATING_LABEL, "FLOATING_LABEL"), root_1) # sdl92.g:376:34: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:376:39: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); self._adaptor.addChild(root_1, stream_connector_name.nextTree()) # sdl92.g:376:65: ( transition )? if stream_transition.hasNext(): self._adaptor.addChild(root_1, stream_transition.nextTree()) stream_transition.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "floating_label" class state_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.state_return, self).__init__() self.tree = None # $ANTLR start "state" # sdl92.g:379:1: state : ( cif )? ( hyperlink )? STATE statelist e= end ( state_part )* ENDSTATE ( statename )? f= end -> ^( STATE ( cif )? ( hyperlink )? ( $e)? statelist ( state_part )* ) ; def state(self, ): retval = self.state_return() retval.start = self.input.LT(1) root_0 = None STATE196 = None ENDSTATE199 = None e = None f = None cif194 = None hyperlink195 = None statelist197 = None state_part198 = None statename200 = None STATE196_tree = None ENDSTATE199_tree = None stream_STATE = RewriteRuleTokenStream(self._adaptor, "token STATE") stream_ENDSTATE = RewriteRuleTokenStream(self._adaptor, "token ENDSTATE") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_statelist = RewriteRuleSubtreeStream(self._adaptor, "rule statelist") stream_state_part = RewriteRuleSubtreeStream(self._adaptor, "rule state_part") stream_statename = RewriteRuleSubtreeStream(self._adaptor, "rule statename") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:380:9: ( ( cif )? ( hyperlink )? STATE statelist e= end ( state_part )* ENDSTATE ( statename )? f= end -> ^( STATE ( cif )? ( hyperlink )? ( $e)? statelist ( state_part )* ) ) # sdl92.g:380:17: ( cif )? ( hyperlink )? STATE statelist e= end ( state_part )* ENDSTATE ( statename )? f= end pass # sdl92.g:380:17: ( cif )? alt53 = 2 LA53_0 = self.input.LA(1) if (LA53_0 == 218) : LA53_1 = self.input.LA(2) if (LA53_1 == ANSWER or LA53_1 == COMMENT or LA53_1 == CONNECT or LA53_1 == DECISION or LA53_1 == INPUT or (JOIN <= LA53_1 <= LABEL) or LA53_1 == NEXTSTATE or LA53_1 == OUTPUT or (PROCEDURE <= LA53_1 <= PROCEDURE_CALL) or (PROCESS <= LA53_1 <= PROVIDED) or LA53_1 == RETURN or LA53_1 == STATE or LA53_1 == STOP or LA53_1 == TASK or LA53_1 == TEXT or LA53_1 == START) : alt53 = 1 if alt53 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_state4400) cif194 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif194.tree) # sdl92.g:381:17: ( hyperlink )? alt54 = 2 LA54_0 = self.input.LA(1) if (LA54_0 == 218) : alt54 = 1 if alt54 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_state4419) hyperlink195 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink195.tree) STATE196=self.match(self.input, STATE, self.FOLLOW_STATE_in_state4438) if self._state.backtracking == 0: stream_STATE.add(STATE196) self._state.following.append(self.FOLLOW_statelist_in_state4440) statelist197 = self.statelist() self._state.following.pop() if self._state.backtracking == 0: stream_statelist.add(statelist197.tree) self._state.following.append(self.FOLLOW_end_in_state4444) e = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(e.tree) # sdl92.g:383:17: ( state_part )* while True: #loop55 alt55 = 2 LA55_0 = self.input.LA(1) if (LA55_0 == CONNECT or LA55_0 == INPUT or LA55_0 == PROVIDED or LA55_0 == SAVE or LA55_0 == 218) : alt55 = 1 if alt55 == 1: # sdl92.g:383:18: state_part pass self._state.following.append(self.FOLLOW_state_part_in_state4463) state_part198 = self.state_part() self._state.following.pop() if self._state.backtracking == 0: stream_state_part.add(state_part198.tree) else: break #loop55 ENDSTATE199=self.match(self.input, ENDSTATE, self.FOLLOW_ENDSTATE_in_state4483) if self._state.backtracking == 0: stream_ENDSTATE.add(ENDSTATE199) # sdl92.g:384:26: ( statename )? alt56 = 2 LA56_0 = self.input.LA(1) if (LA56_0 == ID) : alt56 = 1 if alt56 == 1: # sdl92.g:0:0: statename pass self._state.following.append(self.FOLLOW_statename_in_state4485) statename200 = self.statename() self._state.following.pop() if self._state.backtracking == 0: stream_statename.add(statename200.tree) self._state.following.append(self.FOLLOW_end_in_state4490) f = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(f.tree) # AST Rewrite # elements: STATE, hyperlink, statelist, e, cif, state_part # token labels: # rule labels: retval, e # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) if e is not None: stream_e = RewriteRuleSubtreeStream(self._adaptor, "rule e", e.tree) else: stream_e = RewriteRuleSubtreeStream(self._adaptor, "token e", None) root_0 = self._adaptor.nil() # 385:9: -> ^( STATE ( cif )? ( hyperlink )? ( $e)? statelist ( state_part )* ) # sdl92.g:385:17: ^( STATE ( cif )? ( hyperlink )? ( $e)? statelist ( state_part )* ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_STATE.nextNode(), root_1) # sdl92.g:385:25: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:385:30: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); # sdl92.g:385:41: ( $e)? if stream_e.hasNext(): self._adaptor.addChild(root_1, stream_e.nextTree()) stream_e.reset(); self._adaptor.addChild(root_1, stream_statelist.nextTree()) # sdl92.g:385:55: ( state_part )* while stream_state_part.hasNext(): self._adaptor.addChild(root_1, stream_state_part.nextTree()) stream_state_part.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "state" class statelist_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.statelist_return, self).__init__() self.tree = None # $ANTLR start "statelist" # sdl92.g:388:1: statelist : ( ( ( statename ) ( ',' statename )* ) -> ^( STATELIST ( statename )+ ) | ASTERISK ( exception_state )? -> ^( ASTERISK ( exception_state )? ) ); def statelist(self, ): retval = self.statelist_return() retval.start = self.input.LT(1) root_0 = None char_literal202 = None ASTERISK204 = None statename201 = None statename203 = None exception_state205 = None char_literal202_tree = None ASTERISK204_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_ASTERISK = RewriteRuleTokenStream(self._adaptor, "token ASTERISK") stream_exception_state = RewriteRuleSubtreeStream(self._adaptor, "rule exception_state") stream_statename = RewriteRuleSubtreeStream(self._adaptor, "rule statename") try: try: # sdl92.g:389:9: ( ( ( statename ) ( ',' statename )* ) -> ^( STATELIST ( statename )+ ) | ASTERISK ( exception_state )? -> ^( ASTERISK ( exception_state )? ) ) alt59 = 2 LA59_0 = self.input.LA(1) if (LA59_0 == ID) : alt59 = 1 elif (LA59_0 == ASTERISK) : alt59 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 59, 0, self.input) raise nvae if alt59 == 1: # sdl92.g:389:17: ( ( statename ) ( ',' statename )* ) pass # sdl92.g:389:17: ( ( statename ) ( ',' statename )* ) # sdl92.g:389:18: ( statename ) ( ',' statename )* pass # sdl92.g:389:18: ( statename ) # sdl92.g:389:19: statename pass self._state.following.append(self.FOLLOW_statename_in_statelist4549) statename201 = self.statename() self._state.following.pop() if self._state.backtracking == 0: stream_statename.add(statename201.tree) # sdl92.g:389:29: ( ',' statename )* while True: #loop57 alt57 = 2 LA57_0 = self.input.LA(1) if (LA57_0 == COMMA) : alt57 = 1 if alt57 == 1: # sdl92.g:389:30: ',' statename pass char_literal202=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_statelist4552) if self._state.backtracking == 0: stream_COMMA.add(char_literal202) self._state.following.append(self.FOLLOW_statename_in_statelist4554) statename203 = self.statename() self._state.following.pop() if self._state.backtracking == 0: stream_statename.add(statename203.tree) else: break #loop57 # AST Rewrite # elements: statename # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 390:9: -> ^( STATELIST ( statename )+ ) # sdl92.g:390:17: ^( STATELIST ( statename )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(STATELIST, "STATELIST"), root_1) # sdl92.g:390:29: ( statename )+ if not (stream_statename.hasNext()): raise RewriteEarlyExitException() while stream_statename.hasNext(): self._adaptor.addChild(root_1, stream_statename.nextTree()) stream_statename.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt59 == 2: # sdl92.g:391:19: ASTERISK ( exception_state )? pass ASTERISK204=self.match(self.input, ASTERISK, self.FOLLOW_ASTERISK_in_statelist4599) if self._state.backtracking == 0: stream_ASTERISK.add(ASTERISK204) # sdl92.g:391:28: ( exception_state )? alt58 = 2 LA58_0 = self.input.LA(1) if (LA58_0 == L_PAREN) : alt58 = 1 if alt58 == 1: # sdl92.g:0:0: exception_state pass self._state.following.append(self.FOLLOW_exception_state_in_statelist4601) exception_state205 = self.exception_state() self._state.following.pop() if self._state.backtracking == 0: stream_exception_state.add(exception_state205.tree) # AST Rewrite # elements: exception_state, ASTERISK # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 392:9: -> ^( ASTERISK ( exception_state )? ) # sdl92.g:392:17: ^( ASTERISK ( exception_state )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_ASTERISK.nextNode(), root_1) # sdl92.g:392:28: ( exception_state )? if stream_exception_state.hasNext(): self._adaptor.addChild(root_1, stream_exception_state.nextTree()) stream_exception_state.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "statelist" class exception_state_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.exception_state_return, self).__init__() self.tree = None # $ANTLR start "exception_state" # sdl92.g:395:1: exception_state : '(' statename ( ',' statename )* ')' -> ( statename )+ ; def exception_state(self, ): retval = self.exception_state_return() retval.start = self.input.LT(1) root_0 = None char_literal206 = None char_literal208 = None char_literal210 = None statename207 = None statename209 = None char_literal206_tree = None char_literal208_tree = None char_literal210_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_statename = RewriteRuleSubtreeStream(self._adaptor, "rule statename") try: try: # sdl92.g:396:9: ( '(' statename ( ',' statename )* ')' -> ( statename )+ ) # sdl92.g:396:17: '(' statename ( ',' statename )* ')' pass char_literal206=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_exception_state4647) if self._state.backtracking == 0: stream_L_PAREN.add(char_literal206) self._state.following.append(self.FOLLOW_statename_in_exception_state4649) statename207 = self.statename() self._state.following.pop() if self._state.backtracking == 0: stream_statename.add(statename207.tree) # sdl92.g:396:31: ( ',' statename )* while True: #loop60 alt60 = 2 LA60_0 = self.input.LA(1) if (LA60_0 == COMMA) : alt60 = 1 if alt60 == 1: # sdl92.g:396:32: ',' statename pass char_literal208=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_exception_state4652) if self._state.backtracking == 0: stream_COMMA.add(char_literal208) self._state.following.append(self.FOLLOW_statename_in_exception_state4654) statename209 = self.statename() self._state.following.pop() if self._state.backtracking == 0: stream_statename.add(statename209.tree) else: break #loop60 char_literal210=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_exception_state4658) if self._state.backtracking == 0: stream_R_PAREN.add(char_literal210) # AST Rewrite # elements: statename # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 397:9: -> ( statename )+ # sdl92.g:397:17: ( statename )+ if not (stream_statename.hasNext()): raise RewriteEarlyExitException() while stream_statename.hasNext(): self._adaptor.addChild(root_0, stream_statename.nextTree()) stream_statename.reset() retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "exception_state" class composite_state_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.composite_state_return, self).__init__() self.tree = None # $ANTLR start "composite_state" # sdl92.g:400:1: composite_state : STATE statename e= end SUBSTRUCTURE ( connection_points )* body= composite_state_body ENDSUBSTRUCTURE ( statename )? f= end -> ^( COMPOSITE_STATE statename ( connection_points )* $body ( $e)? ) ; def composite_state(self, ): retval = self.composite_state_return() retval.start = self.input.LT(1) root_0 = None STATE211 = None SUBSTRUCTURE213 = None ENDSUBSTRUCTURE215 = None e = None body = None f = None statename212 = None connection_points214 = None statename216 = None STATE211_tree = None SUBSTRUCTURE213_tree = None ENDSUBSTRUCTURE215_tree = None stream_STATE = RewriteRuleTokenStream(self._adaptor, "token STATE") stream_ENDSUBSTRUCTURE = RewriteRuleTokenStream(self._adaptor, "token ENDSUBSTRUCTURE") stream_SUBSTRUCTURE = RewriteRuleTokenStream(self._adaptor, "token SUBSTRUCTURE") stream_connection_points = RewriteRuleSubtreeStream(self._adaptor, "rule connection_points") stream_composite_state_body = RewriteRuleSubtreeStream(self._adaptor, "rule composite_state_body") stream_statename = RewriteRuleSubtreeStream(self._adaptor, "rule statename") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:401:9: ( STATE statename e= end SUBSTRUCTURE ( connection_points )* body= composite_state_body ENDSUBSTRUCTURE ( statename )? f= end -> ^( COMPOSITE_STATE statename ( connection_points )* $body ( $e)? ) ) # sdl92.g:401:17: STATE statename e= end SUBSTRUCTURE ( connection_points )* body= composite_state_body ENDSUBSTRUCTURE ( statename )? f= end pass STATE211=self.match(self.input, STATE, self.FOLLOW_STATE_in_composite_state4699) if self._state.backtracking == 0: stream_STATE.add(STATE211) self._state.following.append(self.FOLLOW_statename_in_composite_state4701) statename212 = self.statename() self._state.following.pop() if self._state.backtracking == 0: stream_statename.add(statename212.tree) self._state.following.append(self.FOLLOW_end_in_composite_state4705) e = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(e.tree) SUBSTRUCTURE213=self.match(self.input, SUBSTRUCTURE, self.FOLLOW_SUBSTRUCTURE_in_composite_state4723) if self._state.backtracking == 0: stream_SUBSTRUCTURE.add(SUBSTRUCTURE213) # sdl92.g:403:17: ( connection_points )* while True: #loop61 alt61 = 2 LA61_0 = self.input.LA(1) if (LA61_0 == IN or LA61_0 == OUT) : alt61 = 1 if alt61 == 1: # sdl92.g:0:0: connection_points pass self._state.following.append(self.FOLLOW_connection_points_in_composite_state4741) connection_points214 = self.connection_points() self._state.following.pop() if self._state.backtracking == 0: stream_connection_points.add(connection_points214.tree) else: break #loop61 self._state.following.append(self.FOLLOW_composite_state_body_in_composite_state4762) body = self.composite_state_body() self._state.following.pop() if self._state.backtracking == 0: stream_composite_state_body.add(body.tree) ENDSUBSTRUCTURE215=self.match(self.input, ENDSUBSTRUCTURE, self.FOLLOW_ENDSUBSTRUCTURE_in_composite_state4780) if self._state.backtracking == 0: stream_ENDSUBSTRUCTURE.add(ENDSUBSTRUCTURE215) # sdl92.g:405:33: ( statename )? alt62 = 2 LA62_0 = self.input.LA(1) if (LA62_0 == ID) : alt62 = 1 if alt62 == 1: # sdl92.g:0:0: statename pass self._state.following.append(self.FOLLOW_statename_in_composite_state4782) statename216 = self.statename() self._state.following.pop() if self._state.backtracking == 0: stream_statename.add(statename216.tree) self._state.following.append(self.FOLLOW_end_in_composite_state4787) f = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(f.tree) # AST Rewrite # elements: connection_points, e, body, statename # token labels: # rule labels: body, retval, e # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if body is not None: stream_body = RewriteRuleSubtreeStream(self._adaptor, "rule body", body.tree) else: stream_body = RewriteRuleSubtreeStream(self._adaptor, "token body", None) if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) if e is not None: stream_e = RewriteRuleSubtreeStream(self._adaptor, "rule e", e.tree) else: stream_e = RewriteRuleSubtreeStream(self._adaptor, "token e", None) root_0 = self._adaptor.nil() # 406:9: -> ^( COMPOSITE_STATE statename ( connection_points )* $body ( $e)? ) # sdl92.g:406:17: ^( COMPOSITE_STATE statename ( connection_points )* $body ( $e)? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(COMPOSITE_STATE, "COMPOSITE_STATE"), root_1) self._adaptor.addChild(root_1, stream_statename.nextTree()) # sdl92.g:406:45: ( connection_points )* while stream_connection_points.hasNext(): self._adaptor.addChild(root_1, stream_connection_points.nextTree()) stream_connection_points.reset(); self._adaptor.addChild(root_1, stream_body.nextTree()) # sdl92.g:406:70: ( $e)? if stream_e.hasNext(): self._adaptor.addChild(root_1, stream_e.nextTree()) stream_e.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "composite_state" class connection_points_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.connection_points_return, self).__init__() self.tree = None # $ANTLR start "connection_points" # sdl92.g:409:1: connection_points : ( IN state_entry_exit_points end -> ^( IN state_entry_exit_points ( end )? ) | OUT state_entry_exit_points end -> ^( OUT state_entry_exit_points ( end )? ) ); def connection_points(self, ): retval = self.connection_points_return() retval.start = self.input.LT(1) root_0 = None IN217 = None OUT220 = None state_entry_exit_points218 = None end219 = None state_entry_exit_points221 = None end222 = None IN217_tree = None OUT220_tree = None stream_IN = RewriteRuleTokenStream(self._adaptor, "token IN") stream_OUT = RewriteRuleTokenStream(self._adaptor, "token OUT") stream_state_entry_exit_points = RewriteRuleSubtreeStream(self._adaptor, "rule state_entry_exit_points") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:410:9: ( IN state_entry_exit_points end -> ^( IN state_entry_exit_points ( end )? ) | OUT state_entry_exit_points end -> ^( OUT state_entry_exit_points ( end )? ) ) alt63 = 2 LA63_0 = self.input.LA(1) if (LA63_0 == IN) : alt63 = 1 elif (LA63_0 == OUT) : alt63 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 63, 0, self.input) raise nvae if alt63 == 1: # sdl92.g:410:17: IN state_entry_exit_points end pass IN217=self.match(self.input, IN, self.FOLLOW_IN_in_connection_points4841) if self._state.backtracking == 0: stream_IN.add(IN217) self._state.following.append(self.FOLLOW_state_entry_exit_points_in_connection_points4843) state_entry_exit_points218 = self.state_entry_exit_points() self._state.following.pop() if self._state.backtracking == 0: stream_state_entry_exit_points.add(state_entry_exit_points218.tree) self._state.following.append(self.FOLLOW_end_in_connection_points4845) end219 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end219.tree) # AST Rewrite # elements: end, state_entry_exit_points, IN # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 411:9: -> ^( IN state_entry_exit_points ( end )? ) # sdl92.g:411:17: ^( IN state_entry_exit_points ( end )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_IN.nextNode(), root_1) self._adaptor.addChild(root_1, stream_state_entry_exit_points.nextTree()) # sdl92.g:411:46: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt63 == 2: # sdl92.g:412:19: OUT state_entry_exit_points end pass OUT220=self.match(self.input, OUT, self.FOLLOW_OUT_in_connection_points4889) if self._state.backtracking == 0: stream_OUT.add(OUT220) self._state.following.append(self.FOLLOW_state_entry_exit_points_in_connection_points4891) state_entry_exit_points221 = self.state_entry_exit_points() self._state.following.pop() if self._state.backtracking == 0: stream_state_entry_exit_points.add(state_entry_exit_points221.tree) self._state.following.append(self.FOLLOW_end_in_connection_points4893) end222 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end222.tree) # AST Rewrite # elements: state_entry_exit_points, end, OUT # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 413:9: -> ^( OUT state_entry_exit_points ( end )? ) # sdl92.g:413:17: ^( OUT state_entry_exit_points ( end )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_OUT.nextNode(), root_1) self._adaptor.addChild(root_1, stream_state_entry_exit_points.nextTree()) # sdl92.g:413:47: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "connection_points" class state_entry_exit_points_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.state_entry_exit_points_return, self).__init__() self.tree = None # $ANTLR start "state_entry_exit_points" # sdl92.g:416:1: state_entry_exit_points : '(' statename ( ',' statename )* ')' -> ( statename )+ ; def state_entry_exit_points(self, ): retval = self.state_entry_exit_points_return() retval.start = self.input.LT(1) root_0 = None char_literal223 = None char_literal225 = None char_literal227 = None statename224 = None statename226 = None char_literal223_tree = None char_literal225_tree = None char_literal227_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_statename = RewriteRuleSubtreeStream(self._adaptor, "rule statename") try: try: # sdl92.g:417:9: ( '(' statename ( ',' statename )* ')' -> ( statename )+ ) # sdl92.g:417:17: '(' statename ( ',' statename )* ')' pass char_literal223=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_state_entry_exit_points4940) if self._state.backtracking == 0: stream_L_PAREN.add(char_literal223) self._state.following.append(self.FOLLOW_statename_in_state_entry_exit_points4942) statename224 = self.statename() self._state.following.pop() if self._state.backtracking == 0: stream_statename.add(statename224.tree) # sdl92.g:417:31: ( ',' statename )* while True: #loop64 alt64 = 2 LA64_0 = self.input.LA(1) if (LA64_0 == COMMA) : alt64 = 1 if alt64 == 1: # sdl92.g:417:32: ',' statename pass char_literal225=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_state_entry_exit_points4945) if self._state.backtracking == 0: stream_COMMA.add(char_literal225) self._state.following.append(self.FOLLOW_statename_in_state_entry_exit_points4947) statename226 = self.statename() self._state.following.pop() if self._state.backtracking == 0: stream_statename.add(statename226.tree) else: break #loop64 char_literal227=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_state_entry_exit_points4951) if self._state.backtracking == 0: stream_R_PAREN.add(char_literal227) # AST Rewrite # elements: statename # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 418:9: -> ( statename )+ # sdl92.g:418:17: ( statename )+ if not (stream_statename.hasNext()): raise RewriteEarlyExitException() while stream_statename.hasNext(): self._adaptor.addChild(root_0, stream_statename.nextTree()) stream_statename.reset() retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "state_entry_exit_points" class composite_state_body_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.composite_state_body_return, self).__init__() self.tree = None # $ANTLR start "composite_state_body" # sdl92.g:421:1: composite_state_body : ( text_area | procedure | composite_state )* ( start )* ( state | floating_label )* ; def composite_state_body(self, ): retval = self.composite_state_body_return() retval.start = self.input.LT(1) root_0 = None text_area228 = None procedure229 = None composite_state230 = None start231 = None state232 = None floating_label233 = None try: try: # sdl92.g:422:9: ( ( text_area | procedure | composite_state )* ( start )* ( state | floating_label )* ) # sdl92.g:422:17: ( text_area | procedure | composite_state )* ( start )* ( state | floating_label )* pass root_0 = self._adaptor.nil() # sdl92.g:422:17: ( text_area | procedure | composite_state )* while True: #loop65 alt65 = 4 LA65 = self.input.LA(1) if LA65 == 218: LA65_1 = self.input.LA(2) if (self.synpred87_sdl92()) : alt65 = 1 elif (self.synpred88_sdl92()) : alt65 = 2 elif LA65 == STATE: LA65_3 = self.input.LA(2) if (self.synpred89_sdl92()) : alt65 = 3 elif LA65 == PROCEDURE: alt65 = 2 if alt65 == 1: # sdl92.g:422:18: text_area pass self._state.following.append(self.FOLLOW_text_area_in_composite_state_body4993) text_area228 = self.text_area() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, text_area228.tree) elif alt65 == 2: # sdl92.g:422:30: procedure pass self._state.following.append(self.FOLLOW_procedure_in_composite_state_body4997) procedure229 = self.procedure() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, procedure229.tree) elif alt65 == 3: # sdl92.g:422:42: composite_state pass self._state.following.append(self.FOLLOW_composite_state_in_composite_state_body5001) composite_state230 = self.composite_state() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, composite_state230.tree) else: break #loop65 # sdl92.g:423:17: ( start )* while True: #loop66 alt66 = 2 alt66 = self.dfa66.predict(self.input) if alt66 == 1: # sdl92.g:0:0: start pass self._state.following.append(self.FOLLOW_start_in_composite_state_body5021) start231 = self.start() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, start231.tree) else: break #loop66 # sdl92.g:423:24: ( state | floating_label )* while True: #loop67 alt67 = 3 alt67 = self.dfa67.predict(self.input) if alt67 == 1: # sdl92.g:423:25: state pass self._state.following.append(self.FOLLOW_state_in_composite_state_body5025) state232 = self.state() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, state232.tree) elif alt67 == 2: # sdl92.g:423:33: floating_label pass self._state.following.append(self.FOLLOW_floating_label_in_composite_state_body5029) floating_label233 = self.floating_label() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, floating_label233.tree) else: break #loop67 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "composite_state_body" class state_part_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.state_part_return, self).__init__() self.tree = None # $ANTLR start "state_part" # sdl92.g:426:1: state_part : ( input_part | save_part | spontaneous_transition | continuous_signal | connect_part ); def state_part(self, ): retval = self.state_part_return() retval.start = self.input.LT(1) root_0 = None input_part234 = None save_part235 = None spontaneous_transition236 = None continuous_signal237 = None connect_part238 = None try: try: # sdl92.g:427:9: ( input_part | save_part | spontaneous_transition | continuous_signal | connect_part ) alt68 = 5 alt68 = self.dfa68.predict(self.input) if alt68 == 1: # sdl92.g:427:17: input_part pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_input_part_in_state_part5054) input_part234 = self.input_part() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, input_part234.tree) elif alt68 == 2: # sdl92.g:429:19: save_part pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_save_part_in_state_part5091) save_part235 = self.save_part() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, save_part235.tree) elif alt68 == 3: # sdl92.g:430:19: spontaneous_transition pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_spontaneous_transition_in_state_part5126) spontaneous_transition236 = self.spontaneous_transition() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, spontaneous_transition236.tree) elif alt68 == 4: # sdl92.g:431:19: continuous_signal pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_continuous_signal_in_state_part5146) continuous_signal237 = self.continuous_signal() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, continuous_signal237.tree) elif alt68 == 5: # sdl92.g:432:19: connect_part pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_connect_part_in_state_part5173) connect_part238 = self.connect_part() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, connect_part238.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "state_part" class connect_part_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.connect_part_return, self).__init__() self.tree = None # $ANTLR start "connect_part" # sdl92.g:436:1: connect_part : ( cif )? ( hyperlink )? CONNECT ( connect_list )? end ( transition )? -> ^( CONNECT ( cif )? ( hyperlink )? ( connect_list )? ( end )? ( transition )? ) ; def connect_part(self, ): retval = self.connect_part_return() retval.start = self.input.LT(1) root_0 = None CONNECT241 = None cif239 = None hyperlink240 = None connect_list242 = None end243 = None transition244 = None CONNECT241_tree = None stream_CONNECT = RewriteRuleTokenStream(self._adaptor, "token CONNECT") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_transition = RewriteRuleSubtreeStream(self._adaptor, "rule transition") stream_connect_list = RewriteRuleSubtreeStream(self._adaptor, "rule connect_list") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:437:9: ( ( cif )? ( hyperlink )? CONNECT ( connect_list )? end ( transition )? -> ^( CONNECT ( cif )? ( hyperlink )? ( connect_list )? ( end )? ( transition )? ) ) # sdl92.g:437:17: ( cif )? ( hyperlink )? CONNECT ( connect_list )? end ( transition )? pass # sdl92.g:437:17: ( cif )? alt69 = 2 LA69_0 = self.input.LA(1) if (LA69_0 == 218) : LA69_1 = self.input.LA(2) if (LA69_1 == ANSWER or LA69_1 == COMMENT or LA69_1 == CONNECT or LA69_1 == DECISION or LA69_1 == INPUT or (JOIN <= LA69_1 <= LABEL) or LA69_1 == NEXTSTATE or LA69_1 == OUTPUT or (PROCEDURE <= LA69_1 <= PROCEDURE_CALL) or (PROCESS <= LA69_1 <= PROVIDED) or LA69_1 == RETURN or LA69_1 == STATE or LA69_1 == STOP or LA69_1 == TASK or LA69_1 == TEXT or LA69_1 == START) : alt69 = 1 if alt69 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_connect_part5197) cif239 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif239.tree) # sdl92.g:438:17: ( hyperlink )? alt70 = 2 LA70_0 = self.input.LA(1) if (LA70_0 == 218) : alt70 = 1 if alt70 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_connect_part5216) hyperlink240 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink240.tree) CONNECT241=self.match(self.input, CONNECT, self.FOLLOW_CONNECT_in_connect_part5235) if self._state.backtracking == 0: stream_CONNECT.add(CONNECT241) # sdl92.g:439:25: ( connect_list )? alt71 = 2 LA71_0 = self.input.LA(1) if (LA71_0 == ASTERISK or LA71_0 == ID) : alt71 = 1 if alt71 == 1: # sdl92.g:0:0: connect_list pass self._state.following.append(self.FOLLOW_connect_list_in_connect_part5237) connect_list242 = self.connect_list() self._state.following.pop() if self._state.backtracking == 0: stream_connect_list.add(connect_list242.tree) self._state.following.append(self.FOLLOW_end_in_connect_part5240) end243 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end243.tree) # sdl92.g:440:17: ( transition )? alt72 = 2 alt72 = self.dfa72.predict(self.input) if alt72 == 1: # sdl92.g:0:0: transition pass self._state.following.append(self.FOLLOW_transition_in_connect_part5258) transition244 = self.transition() self._state.following.pop() if self._state.backtracking == 0: stream_transition.add(transition244.tree) # AST Rewrite # elements: connect_list, transition, hyperlink, cif, end, CONNECT # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 441:9: -> ^( CONNECT ( cif )? ( hyperlink )? ( connect_list )? ( end )? ( transition )? ) # sdl92.g:441:17: ^( CONNECT ( cif )? ( hyperlink )? ( connect_list )? ( end )? ( transition )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_CONNECT.nextNode(), root_1) # sdl92.g:441:27: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:441:32: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); # sdl92.g:441:43: ( connect_list )? if stream_connect_list.hasNext(): self._adaptor.addChild(root_1, stream_connect_list.nextTree()) stream_connect_list.reset(); # sdl92.g:441:57: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); # sdl92.g:441:62: ( transition )? if stream_transition.hasNext(): self._adaptor.addChild(root_1, stream_transition.nextTree()) stream_transition.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "connect_part" class connect_list_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.connect_list_return, self).__init__() self.tree = None # $ANTLR start "connect_list" # sdl92.g:444:1: connect_list : ( state_exit_point_name ( ',' state_exit_point_name )* -> ( state_exit_point_name )+ | ASTERISK ); def connect_list(self, ): retval = self.connect_list_return() retval.start = self.input.LT(1) root_0 = None char_literal246 = None ASTERISK248 = None state_exit_point_name245 = None state_exit_point_name247 = None char_literal246_tree = None ASTERISK248_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_state_exit_point_name = RewriteRuleSubtreeStream(self._adaptor, "rule state_exit_point_name") try: try: # sdl92.g:445:9: ( state_exit_point_name ( ',' state_exit_point_name )* -> ( state_exit_point_name )+ | ASTERISK ) alt74 = 2 LA74_0 = self.input.LA(1) if (LA74_0 == ID) : alt74 = 1 elif (LA74_0 == ASTERISK) : alt74 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 74, 0, self.input) raise nvae if alt74 == 1: # sdl92.g:445:17: state_exit_point_name ( ',' state_exit_point_name )* pass self._state.following.append(self.FOLLOW_state_exit_point_name_in_connect_list5316) state_exit_point_name245 = self.state_exit_point_name() self._state.following.pop() if self._state.backtracking == 0: stream_state_exit_point_name.add(state_exit_point_name245.tree) # sdl92.g:445:39: ( ',' state_exit_point_name )* while True: #loop73 alt73 = 2 LA73_0 = self.input.LA(1) if (LA73_0 == COMMA) : alt73 = 1 if alt73 == 1: # sdl92.g:445:40: ',' state_exit_point_name pass char_literal246=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_connect_list5319) if self._state.backtracking == 0: stream_COMMA.add(char_literal246) self._state.following.append(self.FOLLOW_state_exit_point_name_in_connect_list5321) state_exit_point_name247 = self.state_exit_point_name() self._state.following.pop() if self._state.backtracking == 0: stream_state_exit_point_name.add(state_exit_point_name247.tree) else: break #loop73 # AST Rewrite # elements: state_exit_point_name # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 446:17: -> ( state_exit_point_name )+ # sdl92.g:446:20: ( state_exit_point_name )+ if not (stream_state_exit_point_name.hasNext()): raise RewriteEarlyExitException() while stream_state_exit_point_name.hasNext(): self._adaptor.addChild(root_0, stream_state_exit_point_name.nextTree()) stream_state_exit_point_name.reset() retval.tree = root_0 elif alt74 == 2: # sdl92.g:447:19: ASTERISK pass root_0 = self._adaptor.nil() ASTERISK248=self.match(self.input, ASTERISK, self.FOLLOW_ASTERISK_in_connect_list5364) if self._state.backtracking == 0: ASTERISK248_tree = self._adaptor.createWithPayload(ASTERISK248) self._adaptor.addChild(root_0, ASTERISK248_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "connect_list" class spontaneous_transition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.spontaneous_transition_return, self).__init__() self.tree = None # $ANTLR start "spontaneous_transition" # sdl92.g:450:1: spontaneous_transition : ( cif )? ( hyperlink )? INPUT NONE end ( enabling_condition )? transition -> ^( INPUT_NONE ( cif )? ( hyperlink )? transition ) ; def spontaneous_transition(self, ): retval = self.spontaneous_transition_return() retval.start = self.input.LT(1) root_0 = None INPUT251 = None NONE252 = None cif249 = None hyperlink250 = None end253 = None enabling_condition254 = None transition255 = None INPUT251_tree = None NONE252_tree = None stream_INPUT = RewriteRuleTokenStream(self._adaptor, "token INPUT") stream_NONE = RewriteRuleTokenStream(self._adaptor, "token NONE") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_transition = RewriteRuleSubtreeStream(self._adaptor, "rule transition") stream_enabling_condition = RewriteRuleSubtreeStream(self._adaptor, "rule enabling_condition") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:451:9: ( ( cif )? ( hyperlink )? INPUT NONE end ( enabling_condition )? transition -> ^( INPUT_NONE ( cif )? ( hyperlink )? transition ) ) # sdl92.g:451:17: ( cif )? ( hyperlink )? INPUT NONE end ( enabling_condition )? transition pass # sdl92.g:451:17: ( cif )? alt75 = 2 LA75_0 = self.input.LA(1) if (LA75_0 == 218) : LA75_1 = self.input.LA(2) if (LA75_1 == ANSWER or LA75_1 == COMMENT or LA75_1 == CONNECT or LA75_1 == DECISION or LA75_1 == INPUT or (JOIN <= LA75_1 <= LABEL) or LA75_1 == NEXTSTATE or LA75_1 == OUTPUT or (PROCEDURE <= LA75_1 <= PROCEDURE_CALL) or (PROCESS <= LA75_1 <= PROVIDED) or LA75_1 == RETURN or LA75_1 == STATE or LA75_1 == STOP or LA75_1 == TASK or LA75_1 == TEXT or LA75_1 == START) : alt75 = 1 if alt75 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_spontaneous_transition5387) cif249 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif249.tree) # sdl92.g:452:17: ( hyperlink )? alt76 = 2 LA76_0 = self.input.LA(1) if (LA76_0 == 218) : alt76 = 1 if alt76 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_spontaneous_transition5406) hyperlink250 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink250.tree) INPUT251=self.match(self.input, INPUT, self.FOLLOW_INPUT_in_spontaneous_transition5425) if self._state.backtracking == 0: stream_INPUT.add(INPUT251) NONE252=self.match(self.input, NONE, self.FOLLOW_NONE_in_spontaneous_transition5427) if self._state.backtracking == 0: stream_NONE.add(NONE252) self._state.following.append(self.FOLLOW_end_in_spontaneous_transition5429) end253 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end253.tree) # sdl92.g:454:17: ( enabling_condition )? alt77 = 2 LA77_0 = self.input.LA(1) if (LA77_0 == PROVIDED) : alt77 = 1 if alt77 == 1: # sdl92.g:0:0: enabling_condition pass self._state.following.append(self.FOLLOW_enabling_condition_in_spontaneous_transition5447) enabling_condition254 = self.enabling_condition() self._state.following.pop() if self._state.backtracking == 0: stream_enabling_condition.add(enabling_condition254.tree) self._state.following.append(self.FOLLOW_transition_in_spontaneous_transition5466) transition255 = self.transition() self._state.following.pop() if self._state.backtracking == 0: stream_transition.add(transition255.tree) # AST Rewrite # elements: hyperlink, cif, transition # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 456:9: -> ^( INPUT_NONE ( cif )? ( hyperlink )? transition ) # sdl92.g:456:17: ^( INPUT_NONE ( cif )? ( hyperlink )? transition ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(INPUT_NONE, "INPUT_NONE"), root_1) # sdl92.g:456:30: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:456:35: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); self._adaptor.addChild(root_1, stream_transition.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "spontaneous_transition" class enabling_condition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.enabling_condition_return, self).__init__() self.tree = None # $ANTLR start "enabling_condition" # sdl92.g:459:1: enabling_condition : PROVIDED expression end -> ^( PROVIDED expression ) ; def enabling_condition(self, ): retval = self.enabling_condition_return() retval.start = self.input.LT(1) root_0 = None PROVIDED256 = None expression257 = None end258 = None PROVIDED256_tree = None stream_PROVIDED = RewriteRuleTokenStream(self._adaptor, "token PROVIDED") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:460:9: ( PROVIDED expression end -> ^( PROVIDED expression ) ) # sdl92.g:460:17: PROVIDED expression end pass PROVIDED256=self.match(self.input, PROVIDED, self.FOLLOW_PROVIDED_in_enabling_condition5516) if self._state.backtracking == 0: stream_PROVIDED.add(PROVIDED256) self._state.following.append(self.FOLLOW_expression_in_enabling_condition5518) expression257 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression257.tree) self._state.following.append(self.FOLLOW_end_in_enabling_condition5520) end258 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end258.tree) # AST Rewrite # elements: expression, PROVIDED # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 461:9: -> ^( PROVIDED expression ) # sdl92.g:461:17: ^( PROVIDED expression ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_PROVIDED.nextNode(), root_1) self._adaptor.addChild(root_1, stream_expression.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "enabling_condition" class continuous_signal_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.continuous_signal_return, self).__init__() self.tree = None # $ANTLR start "continuous_signal" # sdl92.g:464:1: continuous_signal : PROVIDED expression end ( PRIORITY integer_literal_name= INT end )? transition -> ^( PROVIDED expression ( $integer_literal_name)? transition ) ; def continuous_signal(self, ): retval = self.continuous_signal_return() retval.start = self.input.LT(1) root_0 = None integer_literal_name = None PROVIDED259 = None PRIORITY262 = None expression260 = None end261 = None end263 = None transition264 = None integer_literal_name_tree = None PROVIDED259_tree = None PRIORITY262_tree = None stream_INT = RewriteRuleTokenStream(self._adaptor, "token INT") stream_PRIORITY = RewriteRuleTokenStream(self._adaptor, "token PRIORITY") stream_PROVIDED = RewriteRuleTokenStream(self._adaptor, "token PROVIDED") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") stream_transition = RewriteRuleSubtreeStream(self._adaptor, "rule transition") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:465:9: ( PROVIDED expression end ( PRIORITY integer_literal_name= INT end )? transition -> ^( PROVIDED expression ( $integer_literal_name)? transition ) ) # sdl92.g:465:17: PROVIDED expression end ( PRIORITY integer_literal_name= INT end )? transition pass PROVIDED259=self.match(self.input, PROVIDED, self.FOLLOW_PROVIDED_in_continuous_signal5564) if self._state.backtracking == 0: stream_PROVIDED.add(PROVIDED259) self._state.following.append(self.FOLLOW_expression_in_continuous_signal5566) expression260 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression260.tree) self._state.following.append(self.FOLLOW_end_in_continuous_signal5568) end261 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end261.tree) # sdl92.g:466:17: ( PRIORITY integer_literal_name= INT end )? alt78 = 2 LA78_0 = self.input.LA(1) if (LA78_0 == PRIORITY) : alt78 = 1 if alt78 == 1: # sdl92.g:466:18: PRIORITY integer_literal_name= INT end pass PRIORITY262=self.match(self.input, PRIORITY, self.FOLLOW_PRIORITY_in_continuous_signal5587) if self._state.backtracking == 0: stream_PRIORITY.add(PRIORITY262) integer_literal_name=self.match(self.input, INT, self.FOLLOW_INT_in_continuous_signal5591) if self._state.backtracking == 0: stream_INT.add(integer_literal_name) self._state.following.append(self.FOLLOW_end_in_continuous_signal5593) end263 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end263.tree) self._state.following.append(self.FOLLOW_transition_in_continuous_signal5613) transition264 = self.transition() self._state.following.pop() if self._state.backtracking == 0: stream_transition.add(transition264.tree) # AST Rewrite # elements: expression, transition, PROVIDED, integer_literal_name # token labels: integer_literal_name # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 stream_integer_literal_name = RewriteRuleTokenStream(self._adaptor, "token integer_literal_name", integer_literal_name) if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 468:9: -> ^( PROVIDED expression ( $integer_literal_name)? transition ) # sdl92.g:468:17: ^( PROVIDED expression ( $integer_literal_name)? transition ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_PROVIDED.nextNode(), root_1) self._adaptor.addChild(root_1, stream_expression.nextTree()) # sdl92.g:468:39: ( $integer_literal_name)? if stream_integer_literal_name.hasNext(): self._adaptor.addChild(root_1, stream_integer_literal_name.nextNode()) stream_integer_literal_name.reset(); self._adaptor.addChild(root_1, stream_transition.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "continuous_signal" class save_part_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.save_part_return, self).__init__() self.tree = None # $ANTLR start "save_part" # sdl92.g:471:1: save_part : SAVE save_list end -> ^( SAVE save_list ) ; def save_part(self, ): retval = self.save_part_return() retval.start = self.input.LT(1) root_0 = None SAVE265 = None save_list266 = None end267 = None SAVE265_tree = None stream_SAVE = RewriteRuleTokenStream(self._adaptor, "token SAVE") stream_save_list = RewriteRuleSubtreeStream(self._adaptor, "rule save_list") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:472:9: ( SAVE save_list end -> ^( SAVE save_list ) ) # sdl92.g:472:17: SAVE save_list end pass SAVE265=self.match(self.input, SAVE, self.FOLLOW_SAVE_in_save_part5663) if self._state.backtracking == 0: stream_SAVE.add(SAVE265) self._state.following.append(self.FOLLOW_save_list_in_save_part5665) save_list266 = self.save_list() self._state.following.pop() if self._state.backtracking == 0: stream_save_list.add(save_list266.tree) self._state.following.append(self.FOLLOW_end_in_save_part5683) end267 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end267.tree) # AST Rewrite # elements: SAVE, save_list # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 474:9: -> ^( SAVE save_list ) # sdl92.g:474:17: ^( SAVE save_list ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_SAVE.nextNode(), root_1) self._adaptor.addChild(root_1, stream_save_list.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "save_part" class save_list_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.save_list_return, self).__init__() self.tree = None # $ANTLR start "save_list" # sdl92.g:477:1: save_list : ( signal_list | asterisk_save_list ); def save_list(self, ): retval = self.save_list_return() retval.start = self.input.LT(1) root_0 = None signal_list268 = None asterisk_save_list269 = None try: try: # sdl92.g:478:9: ( signal_list | asterisk_save_list ) alt79 = 2 LA79_0 = self.input.LA(1) if (LA79_0 == ID) : alt79 = 1 elif (LA79_0 == ASTERISK) : alt79 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 79, 0, self.input) raise nvae if alt79 == 1: # sdl92.g:478:17: signal_list pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_signal_list_in_save_list5727) signal_list268 = self.signal_list() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, signal_list268.tree) elif alt79 == 2: # sdl92.g:479:19: asterisk_save_list pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_asterisk_save_list_in_save_list5747) asterisk_save_list269 = self.asterisk_save_list() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, asterisk_save_list269.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "save_list" class asterisk_save_list_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.asterisk_save_list_return, self).__init__() self.tree = None # $ANTLR start "asterisk_save_list" # sdl92.g:482:1: asterisk_save_list : ASTERISK ; def asterisk_save_list(self, ): retval = self.asterisk_save_list_return() retval.start = self.input.LT(1) root_0 = None ASTERISK270 = None ASTERISK270_tree = None try: try: # sdl92.g:483:9: ( ASTERISK ) # sdl92.g:483:17: ASTERISK pass root_0 = self._adaptor.nil() ASTERISK270=self.match(self.input, ASTERISK, self.FOLLOW_ASTERISK_in_asterisk_save_list5770) if self._state.backtracking == 0: ASTERISK270_tree = self._adaptor.createWithPayload(ASTERISK270) self._adaptor.addChild(root_0, ASTERISK270_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "asterisk_save_list" class signal_list_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.signal_list_return, self).__init__() self.tree = None # $ANTLR start "signal_list" # sdl92.g:486:1: signal_list : signal_item ( ',' signal_item )* -> ^( SIGNAL_LIST ( signal_item )+ ) ; def signal_list(self, ): retval = self.signal_list_return() retval.start = self.input.LT(1) root_0 = None char_literal272 = None signal_item271 = None signal_item273 = None char_literal272_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_signal_item = RewriteRuleSubtreeStream(self._adaptor, "rule signal_item") try: try: # sdl92.g:487:9: ( signal_item ( ',' signal_item )* -> ^( SIGNAL_LIST ( signal_item )+ ) ) # sdl92.g:487:17: signal_item ( ',' signal_item )* pass self._state.following.append(self.FOLLOW_signal_item_in_signal_list5793) signal_item271 = self.signal_item() self._state.following.pop() if self._state.backtracking == 0: stream_signal_item.add(signal_item271.tree) # sdl92.g:487:29: ( ',' signal_item )* while True: #loop80 alt80 = 2 LA80_0 = self.input.LA(1) if (LA80_0 == COMMA) : alt80 = 1 if alt80 == 1: # sdl92.g:487:30: ',' signal_item pass char_literal272=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_signal_list5796) if self._state.backtracking == 0: stream_COMMA.add(char_literal272) self._state.following.append(self.FOLLOW_signal_item_in_signal_list5798) signal_item273 = self.signal_item() self._state.following.pop() if self._state.backtracking == 0: stream_signal_item.add(signal_item273.tree) else: break #loop80 # AST Rewrite # elements: signal_item # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 488:9: -> ^( SIGNAL_LIST ( signal_item )+ ) # sdl92.g:488:17: ^( SIGNAL_LIST ( signal_item )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(SIGNAL_LIST, "SIGNAL_LIST"), root_1) # sdl92.g:488:31: ( signal_item )+ if not (stream_signal_item.hasNext()): raise RewriteEarlyExitException() while stream_signal_item.hasNext(): self._adaptor.addChild(root_1, stream_signal_item.nextTree()) stream_signal_item.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "signal_list" class signal_item_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.signal_item_return, self).__init__() self.tree = None # $ANTLR start "signal_item" # sdl92.g:494:1: signal_item : signal_id ; def signal_item(self, ): retval = self.signal_item_return() retval.start = self.input.LT(1) root_0 = None signal_id274 = None try: try: # sdl92.g:495:9: ( signal_id ) # sdl92.g:495:17: signal_id pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_signal_id_in_signal_item5848) signal_id274 = self.signal_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, signal_id274.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "signal_item" class input_part_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.input_part_return, self).__init__() self.tree = None # $ANTLR start "input_part" # sdl92.g:515:1: input_part : ( cif )? ( hyperlink )? INPUT inputlist end ( enabling_condition )? ( transition )? -> ^( INPUT ( cif )? ( hyperlink )? ( end )? inputlist ( enabling_condition )? ( transition )? ) ; def input_part(self, ): retval = self.input_part_return() retval.start = self.input.LT(1) root_0 = None INPUT277 = None cif275 = None hyperlink276 = None inputlist278 = None end279 = None enabling_condition280 = None transition281 = None INPUT277_tree = None stream_INPUT = RewriteRuleTokenStream(self._adaptor, "token INPUT") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_transition = RewriteRuleSubtreeStream(self._adaptor, "rule transition") stream_inputlist = RewriteRuleSubtreeStream(self._adaptor, "rule inputlist") stream_enabling_condition = RewriteRuleSubtreeStream(self._adaptor, "rule enabling_condition") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:516:9: ( ( cif )? ( hyperlink )? INPUT inputlist end ( enabling_condition )? ( transition )? -> ^( INPUT ( cif )? ( hyperlink )? ( end )? inputlist ( enabling_condition )? ( transition )? ) ) # sdl92.g:516:17: ( cif )? ( hyperlink )? INPUT inputlist end ( enabling_condition )? ( transition )? pass # sdl92.g:516:17: ( cif )? alt81 = 2 LA81_0 = self.input.LA(1) if (LA81_0 == 218) : LA81_1 = self.input.LA(2) if (LA81_1 == ANSWER or LA81_1 == COMMENT or LA81_1 == CONNECT or LA81_1 == DECISION or LA81_1 == INPUT or (JOIN <= LA81_1 <= LABEL) or LA81_1 == NEXTSTATE or LA81_1 == OUTPUT or (PROCEDURE <= LA81_1 <= PROCEDURE_CALL) or (PROCESS <= LA81_1 <= PROVIDED) or LA81_1 == RETURN or LA81_1 == STATE or LA81_1 == STOP or LA81_1 == TASK or LA81_1 == TEXT or LA81_1 == START) : alt81 = 1 if alt81 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_input_part5877) cif275 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif275.tree) # sdl92.g:517:17: ( hyperlink )? alt82 = 2 LA82_0 = self.input.LA(1) if (LA82_0 == 218) : alt82 = 1 if alt82 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_input_part5896) hyperlink276 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink276.tree) INPUT277=self.match(self.input, INPUT, self.FOLLOW_INPUT_in_input_part5915) if self._state.backtracking == 0: stream_INPUT.add(INPUT277) self._state.following.append(self.FOLLOW_inputlist_in_input_part5917) inputlist278 = self.inputlist() self._state.following.pop() if self._state.backtracking == 0: stream_inputlist.add(inputlist278.tree) self._state.following.append(self.FOLLOW_end_in_input_part5919) end279 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end279.tree) # sdl92.g:519:17: ( enabling_condition )? alt83 = 2 alt83 = self.dfa83.predict(self.input) if alt83 == 1: # sdl92.g:0:0: enabling_condition pass self._state.following.append(self.FOLLOW_enabling_condition_in_input_part5937) enabling_condition280 = self.enabling_condition() self._state.following.pop() if self._state.backtracking == 0: stream_enabling_condition.add(enabling_condition280.tree) # sdl92.g:520:17: ( transition )? alt84 = 2 alt84 = self.dfa84.predict(self.input) if alt84 == 1: # sdl92.g:0:0: transition pass self._state.following.append(self.FOLLOW_transition_in_input_part5956) transition281 = self.transition() self._state.following.pop() if self._state.backtracking == 0: stream_transition.add(transition281.tree) # AST Rewrite # elements: inputlist, end, transition, hyperlink, cif, INPUT, enabling_condition # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 521:9: -> ^( INPUT ( cif )? ( hyperlink )? ( end )? inputlist ( enabling_condition )? ( transition )? ) # sdl92.g:521:17: ^( INPUT ( cif )? ( hyperlink )? ( end )? inputlist ( enabling_condition )? ( transition )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_INPUT.nextNode(), root_1) # sdl92.g:521:25: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:521:30: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); # sdl92.g:521:41: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); self._adaptor.addChild(root_1, stream_inputlist.nextTree()) # sdl92.g:522:27: ( enabling_condition )? if stream_enabling_condition.hasNext(): self._adaptor.addChild(root_1, stream_enabling_condition.nextTree()) stream_enabling_condition.reset(); # sdl92.g:522:47: ( transition )? if stream_transition.hasNext(): self._adaptor.addChild(root_1, stream_transition.nextTree()) stream_transition.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "input_part" class inputlist_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.inputlist_return, self).__init__() self.tree = None # $ANTLR start "inputlist" # sdl92.g:527:1: inputlist : ( ASTERISK | ( stimulus ( ',' stimulus )* ) -> ^( INPUTLIST ( stimulus )+ ) ); def inputlist(self, ): retval = self.inputlist_return() retval.start = self.input.LT(1) root_0 = None ASTERISK282 = None char_literal284 = None stimulus283 = None stimulus285 = None ASTERISK282_tree = None char_literal284_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_stimulus = RewriteRuleSubtreeStream(self._adaptor, "rule stimulus") try: try: # sdl92.g:528:9: ( ASTERISK | ( stimulus ( ',' stimulus )* ) -> ^( INPUTLIST ( stimulus )+ ) ) alt86 = 2 LA86_0 = self.input.LA(1) if (LA86_0 == ASTERISK) : alt86 = 1 elif (LA86_0 == ID) : alt86 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 86, 0, self.input) raise nvae if alt86 == 1: # sdl92.g:528:17: ASTERISK pass root_0 = self._adaptor.nil() ASTERISK282=self.match(self.input, ASTERISK, self.FOLLOW_ASTERISK_in_inputlist6034) if self._state.backtracking == 0: ASTERISK282_tree = self._adaptor.createWithPayload(ASTERISK282) self._adaptor.addChild(root_0, ASTERISK282_tree) elif alt86 == 2: # sdl92.g:529:19: ( stimulus ( ',' stimulus )* ) pass # sdl92.g:529:19: ( stimulus ( ',' stimulus )* ) # sdl92.g:529:20: stimulus ( ',' stimulus )* pass self._state.following.append(self.FOLLOW_stimulus_in_inputlist6055) stimulus283 = self.stimulus() self._state.following.pop() if self._state.backtracking == 0: stream_stimulus.add(stimulus283.tree) # sdl92.g:529:29: ( ',' stimulus )* while True: #loop85 alt85 = 2 LA85_0 = self.input.LA(1) if (LA85_0 == COMMA) : alt85 = 1 if alt85 == 1: # sdl92.g:529:30: ',' stimulus pass char_literal284=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_inputlist6058) if self._state.backtracking == 0: stream_COMMA.add(char_literal284) self._state.following.append(self.FOLLOW_stimulus_in_inputlist6060) stimulus285 = self.stimulus() self._state.following.pop() if self._state.backtracking == 0: stream_stimulus.add(stimulus285.tree) else: break #loop85 # AST Rewrite # elements: stimulus # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 530:9: -> ^( INPUTLIST ( stimulus )+ ) # sdl92.g:530:17: ^( INPUTLIST ( stimulus )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(INPUTLIST, "INPUTLIST"), root_1) # sdl92.g:530:29: ( stimulus )+ if not (stream_stimulus.hasNext()): raise RewriteEarlyExitException() while stream_stimulus.hasNext(): self._adaptor.addChild(root_1, stream_stimulus.nextTree()) stream_stimulus.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "inputlist" class stimulus_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.stimulus_return, self).__init__() self.tree = None # $ANTLR start "stimulus" # sdl92.g:533:1: stimulus : stimulus_id ( input_params )? ; def stimulus(self, ): retval = self.stimulus_return() retval.start = self.input.LT(1) root_0 = None stimulus_id286 = None input_params287 = None try: try: # sdl92.g:534:9: ( stimulus_id ( input_params )? ) # sdl92.g:534:17: stimulus_id ( input_params )? pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_stimulus_id_in_stimulus6108) stimulus_id286 = self.stimulus_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, stimulus_id286.tree) # sdl92.g:534:29: ( input_params )? alt87 = 2 LA87_0 = self.input.LA(1) if (LA87_0 == L_PAREN) : alt87 = 1 if alt87 == 1: # sdl92.g:0:0: input_params pass self._state.following.append(self.FOLLOW_input_params_in_stimulus6110) input_params287 = self.input_params() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, input_params287.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "stimulus" class input_params_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.input_params_return, self).__init__() self.tree = None # $ANTLR start "input_params" # sdl92.g:537:1: input_params : L_PAREN variable_id ( ',' variable_id )* R_PAREN -> ^( PARAMS ( variable_id )+ ) ; def input_params(self, ): retval = self.input_params_return() retval.start = self.input.LT(1) root_0 = None L_PAREN288 = None char_literal290 = None R_PAREN292 = None variable_id289 = None variable_id291 = None L_PAREN288_tree = None char_literal290_tree = None R_PAREN292_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_variable_id = RewriteRuleSubtreeStream(self._adaptor, "rule variable_id") try: try: # sdl92.g:538:9: ( L_PAREN variable_id ( ',' variable_id )* R_PAREN -> ^( PARAMS ( variable_id )+ ) ) # sdl92.g:538:17: L_PAREN variable_id ( ',' variable_id )* R_PAREN pass L_PAREN288=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_input_params6134) if self._state.backtracking == 0: stream_L_PAREN.add(L_PAREN288) self._state.following.append(self.FOLLOW_variable_id_in_input_params6136) variable_id289 = self.variable_id() self._state.following.pop() if self._state.backtracking == 0: stream_variable_id.add(variable_id289.tree) # sdl92.g:538:37: ( ',' variable_id )* while True: #loop88 alt88 = 2 LA88_0 = self.input.LA(1) if (LA88_0 == COMMA) : alt88 = 1 if alt88 == 1: # sdl92.g:538:38: ',' variable_id pass char_literal290=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_input_params6139) if self._state.backtracking == 0: stream_COMMA.add(char_literal290) self._state.following.append(self.FOLLOW_variable_id_in_input_params6141) variable_id291 = self.variable_id() self._state.following.pop() if self._state.backtracking == 0: stream_variable_id.add(variable_id291.tree) else: break #loop88 R_PAREN292=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_input_params6145) if self._state.backtracking == 0: stream_R_PAREN.add(R_PAREN292) # AST Rewrite # elements: variable_id # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 539:9: -> ^( PARAMS ( variable_id )+ ) # sdl92.g:539:17: ^( PARAMS ( variable_id )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(PARAMS, "PARAMS"), root_1) # sdl92.g:539:26: ( variable_id )+ if not (stream_variable_id.hasNext()): raise RewriteEarlyExitException() while stream_variable_id.hasNext(): self._adaptor.addChild(root_1, stream_variable_id.nextTree()) stream_variable_id.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "input_params" class transition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.transition_return, self).__init__() self.tree = None # $ANTLR start "transition" # sdl92.g:542:1: transition : ( ( action )+ ( label )? ( terminator_statement )? -> ^( TRANSITION ( action )+ ( label )? ( terminator_statement )? ) | terminator_statement -> ^( TRANSITION terminator_statement ) ); def transition(self, ): retval = self.transition_return() retval.start = self.input.LT(1) root_0 = None action293 = None label294 = None terminator_statement295 = None terminator_statement296 = None stream_terminator_statement = RewriteRuleSubtreeStream(self._adaptor, "rule terminator_statement") stream_action = RewriteRuleSubtreeStream(self._adaptor, "rule action") stream_label = RewriteRuleSubtreeStream(self._adaptor, "rule label") try: try: # sdl92.g:543:9: ( ( action )+ ( label )? ( terminator_statement )? -> ^( TRANSITION ( action )+ ( label )? ( terminator_statement )? ) | terminator_statement -> ^( TRANSITION terminator_statement ) ) alt92 = 2 alt92 = self.dfa92.predict(self.input) if alt92 == 1: # sdl92.g:543:17: ( action )+ ( label )? ( terminator_statement )? pass # sdl92.g:543:17: ( action )+ cnt89 = 0 while True: #loop89 alt89 = 2 alt89 = self.dfa89.predict(self.input) if alt89 == 1: # sdl92.g:0:0: action pass self._state.following.append(self.FOLLOW_action_in_transition6190) action293 = self.action() self._state.following.pop() if self._state.backtracking == 0: stream_action.add(action293.tree) else: if cnt89 >= 1: break #loop89 if self._state.backtracking > 0: raise BacktrackingFailed eee = EarlyExitException(89, self.input) raise eee cnt89 += 1 # sdl92.g:543:25: ( label )? alt90 = 2 alt90 = self.dfa90.predict(self.input) if alt90 == 1: # sdl92.g:0:0: label pass self._state.following.append(self.FOLLOW_label_in_transition6193) label294 = self.label() self._state.following.pop() if self._state.backtracking == 0: stream_label.add(label294.tree) # sdl92.g:543:32: ( terminator_statement )? alt91 = 2 alt91 = self.dfa91.predict(self.input) if alt91 == 1: # sdl92.g:0:0: terminator_statement pass self._state.following.append(self.FOLLOW_terminator_statement_in_transition6196) terminator_statement295 = self.terminator_statement() self._state.following.pop() if self._state.backtracking == 0: stream_terminator_statement.add(terminator_statement295.tree) # AST Rewrite # elements: label, terminator_statement, action # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 544:9: -> ^( TRANSITION ( action )+ ( label )? ( terminator_statement )? ) # sdl92.g:544:17: ^( TRANSITION ( action )+ ( label )? ( terminator_statement )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(TRANSITION, "TRANSITION"), root_1) # sdl92.g:544:30: ( action )+ if not (stream_action.hasNext()): raise RewriteEarlyExitException() while stream_action.hasNext(): self._adaptor.addChild(root_1, stream_action.nextTree()) stream_action.reset() # sdl92.g:544:38: ( label )? if stream_label.hasNext(): self._adaptor.addChild(root_1, stream_label.nextTree()) stream_label.reset(); # sdl92.g:544:45: ( terminator_statement )? if stream_terminator_statement.hasNext(): self._adaptor.addChild(root_1, stream_terminator_statement.nextTree()) stream_terminator_statement.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt92 == 2: # sdl92.g:545:19: terminator_statement pass self._state.following.append(self.FOLLOW_terminator_statement_in_transition6245) terminator_statement296 = self.terminator_statement() self._state.following.pop() if self._state.backtracking == 0: stream_terminator_statement.add(terminator_statement296.tree) # AST Rewrite # elements: terminator_statement # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 546:9: -> ^( TRANSITION terminator_statement ) # sdl92.g:546:17: ^( TRANSITION terminator_statement ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(TRANSITION, "TRANSITION"), root_1) self._adaptor.addChild(root_1, stream_terminator_statement.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "transition" class action_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.action_return, self).__init__() self.tree = None # $ANTLR start "action" # sdl92.g:549:1: action : ( label )? ( task | task_body | output | create_request | decision | transition_option | set_timer | reset_timer | export | procedure_call ) ; def action(self, ): retval = self.action_return() retval.start = self.input.LT(1) root_0 = None label297 = None task298 = None task_body299 = None output300 = None create_request301 = None decision302 = None transition_option303 = None set_timer304 = None reset_timer305 = None export306 = None procedure_call307 = None try: try: # sdl92.g:550:9: ( ( label )? ( task | task_body | output | create_request | decision | transition_option | set_timer | reset_timer | export | procedure_call ) ) # sdl92.g:550:17: ( label )? ( task | task_body | output | create_request | decision | transition_option | set_timer | reset_timer | export | procedure_call ) pass root_0 = self._adaptor.nil() # sdl92.g:550:17: ( label )? alt93 = 2 alt93 = self.dfa93.predict(self.input) if alt93 == 1: # sdl92.g:0:0: label pass self._state.following.append(self.FOLLOW_label_in_action6289) label297 = self.label() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, label297.tree) # sdl92.g:551:17: ( task | task_body | output | create_request | decision | transition_option | set_timer | reset_timer | export | procedure_call ) alt94 = 10 alt94 = self.dfa94.predict(self.input) if alt94 == 1: # sdl92.g:551:18: task pass self._state.following.append(self.FOLLOW_task_in_action6309) task298 = self.task() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, task298.tree) elif alt94 == 2: # sdl92.g:552:19: task_body pass self._state.following.append(self.FOLLOW_task_body_in_action6329) task_body299 = self.task_body() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, task_body299.tree) elif alt94 == 3: # sdl92.g:553:19: output pass self._state.following.append(self.FOLLOW_output_in_action6349) output300 = self.output() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, output300.tree) elif alt94 == 4: # sdl92.g:554:19: create_request pass self._state.following.append(self.FOLLOW_create_request_in_action6369) create_request301 = self.create_request() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, create_request301.tree) elif alt94 == 5: # sdl92.g:555:19: decision pass self._state.following.append(self.FOLLOW_decision_in_action6389) decision302 = self.decision() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, decision302.tree) elif alt94 == 6: # sdl92.g:556:19: transition_option pass self._state.following.append(self.FOLLOW_transition_option_in_action6409) transition_option303 = self.transition_option() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, transition_option303.tree) elif alt94 == 7: # sdl92.g:557:19: set_timer pass self._state.following.append(self.FOLLOW_set_timer_in_action6429) set_timer304 = self.set_timer() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, set_timer304.tree) elif alt94 == 8: # sdl92.g:558:19: reset_timer pass self._state.following.append(self.FOLLOW_reset_timer_in_action6449) reset_timer305 = self.reset_timer() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, reset_timer305.tree) elif alt94 == 9: # sdl92.g:559:19: export pass self._state.following.append(self.FOLLOW_export_in_action6469) export306 = self.export() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, export306.tree) elif alt94 == 10: # sdl92.g:560:19: procedure_call pass self._state.following.append(self.FOLLOW_procedure_call_in_action6494) procedure_call307 = self.procedure_call() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, procedure_call307.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "action" class export_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.export_return, self).__init__() self.tree = None # $ANTLR start "export" # sdl92.g:562:1: export : EXPORT L_PAREN variable_id ( COMMA variable_id )* R_PAREN end -> ^( EXPORT ( variable_id )+ ) ; def export(self, ): retval = self.export_return() retval.start = self.input.LT(1) root_0 = None EXPORT308 = None L_PAREN309 = None COMMA311 = None R_PAREN313 = None variable_id310 = None variable_id312 = None end314 = None EXPORT308_tree = None L_PAREN309_tree = None COMMA311_tree = None R_PAREN313_tree = None stream_EXPORT = RewriteRuleTokenStream(self._adaptor, "token EXPORT") stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_variable_id = RewriteRuleSubtreeStream(self._adaptor, "rule variable_id") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:563:9: ( EXPORT L_PAREN variable_id ( COMMA variable_id )* R_PAREN end -> ^( EXPORT ( variable_id )+ ) ) # sdl92.g:563:17: EXPORT L_PAREN variable_id ( COMMA variable_id )* R_PAREN end pass EXPORT308=self.match(self.input, EXPORT, self.FOLLOW_EXPORT_in_export6517) if self._state.backtracking == 0: stream_EXPORT.add(EXPORT308) L_PAREN309=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_export6535) if self._state.backtracking == 0: stream_L_PAREN.add(L_PAREN309) self._state.following.append(self.FOLLOW_variable_id_in_export6537) variable_id310 = self.variable_id() self._state.following.pop() if self._state.backtracking == 0: stream_variable_id.add(variable_id310.tree) # sdl92.g:564:37: ( COMMA variable_id )* while True: #loop95 alt95 = 2 LA95_0 = self.input.LA(1) if (LA95_0 == COMMA) : alt95 = 1 if alt95 == 1: # sdl92.g:564:38: COMMA variable_id pass COMMA311=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_export6540) if self._state.backtracking == 0: stream_COMMA.add(COMMA311) self._state.following.append(self.FOLLOW_variable_id_in_export6542) variable_id312 = self.variable_id() self._state.following.pop() if self._state.backtracking == 0: stream_variable_id.add(variable_id312.tree) else: break #loop95 R_PAREN313=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_export6546) if self._state.backtracking == 0: stream_R_PAREN.add(R_PAREN313) self._state.following.append(self.FOLLOW_end_in_export6564) end314 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end314.tree) # AST Rewrite # elements: EXPORT, variable_id # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 566:9: -> ^( EXPORT ( variable_id )+ ) # sdl92.g:566:17: ^( EXPORT ( variable_id )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_EXPORT.nextNode(), root_1) # sdl92.g:566:26: ( variable_id )+ if not (stream_variable_id.hasNext()): raise RewriteEarlyExitException() while stream_variable_id.hasNext(): self._adaptor.addChild(root_1, stream_variable_id.nextTree()) stream_variable_id.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "export" class procedure_call_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.procedure_call_return, self).__init__() self.tree = None # $ANTLR start "procedure_call" # sdl92.g:577:1: procedure_call : ( cif )? ( hyperlink )? CALL procedure_call_body end -> ^( PROCEDURE_CALL ( cif )? ( hyperlink )? ( end )? procedure_call_body ) ; def procedure_call(self, ): retval = self.procedure_call_return() retval.start = self.input.LT(1) root_0 = None CALL317 = None cif315 = None hyperlink316 = None procedure_call_body318 = None end319 = None CALL317_tree = None stream_CALL = RewriteRuleTokenStream(self._adaptor, "token CALL") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_procedure_call_body = RewriteRuleSubtreeStream(self._adaptor, "rule procedure_call_body") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:578:9: ( ( cif )? ( hyperlink )? CALL procedure_call_body end -> ^( PROCEDURE_CALL ( cif )? ( hyperlink )? ( end )? procedure_call_body ) ) # sdl92.g:578:17: ( cif )? ( hyperlink )? CALL procedure_call_body end pass # sdl92.g:578:17: ( cif )? alt96 = 2 LA96_0 = self.input.LA(1) if (LA96_0 == 218) : LA96_1 = self.input.LA(2) if (LA96_1 == ANSWER or LA96_1 == COMMENT or LA96_1 == CONNECT or LA96_1 == DECISION or LA96_1 == INPUT or (JOIN <= LA96_1 <= LABEL) or LA96_1 == NEXTSTATE or LA96_1 == OUTPUT or (PROCEDURE <= LA96_1 <= PROCEDURE_CALL) or (PROCESS <= LA96_1 <= PROVIDED) or LA96_1 == RETURN or LA96_1 == STATE or LA96_1 == STOP or LA96_1 == TASK or LA96_1 == TEXT or LA96_1 == START) : alt96 = 1 if alt96 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_procedure_call6612) cif315 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif315.tree) # sdl92.g:579:17: ( hyperlink )? alt97 = 2 LA97_0 = self.input.LA(1) if (LA97_0 == 218) : alt97 = 1 if alt97 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_procedure_call6631) hyperlink316 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink316.tree) CALL317=self.match(self.input, CALL, self.FOLLOW_CALL_in_procedure_call6650) if self._state.backtracking == 0: stream_CALL.add(CALL317) self._state.following.append(self.FOLLOW_procedure_call_body_in_procedure_call6652) procedure_call_body318 = self.procedure_call_body() self._state.following.pop() if self._state.backtracking == 0: stream_procedure_call_body.add(procedure_call_body318.tree) self._state.following.append(self.FOLLOW_end_in_procedure_call6654) end319 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end319.tree) # AST Rewrite # elements: end, procedure_call_body, cif, hyperlink # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 581:9: -> ^( PROCEDURE_CALL ( cif )? ( hyperlink )? ( end )? procedure_call_body ) # sdl92.g:581:17: ^( PROCEDURE_CALL ( cif )? ( hyperlink )? ( end )? procedure_call_body ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(PROCEDURE_CALL, "PROCEDURE_CALL"), root_1) # sdl92.g:581:34: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:581:39: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); # sdl92.g:581:50: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); self._adaptor.addChild(root_1, stream_procedure_call_body.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "procedure_call" class procedure_call_body_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.procedure_call_body_return, self).__init__() self.tree = None # $ANTLR start "procedure_call_body" # sdl92.g:584:1: procedure_call_body : procedure_id ( actual_parameters )? -> ^( OUTPUT_BODY procedure_id ( actual_parameters )? ) ; def procedure_call_body(self, ): retval = self.procedure_call_body_return() retval.start = self.input.LT(1) root_0 = None procedure_id320 = None actual_parameters321 = None stream_procedure_id = RewriteRuleSubtreeStream(self._adaptor, "rule procedure_id") stream_actual_parameters = RewriteRuleSubtreeStream(self._adaptor, "rule actual_parameters") try: try: # sdl92.g:585:9: ( procedure_id ( actual_parameters )? -> ^( OUTPUT_BODY procedure_id ( actual_parameters )? ) ) # sdl92.g:585:17: procedure_id ( actual_parameters )? pass self._state.following.append(self.FOLLOW_procedure_id_in_procedure_call_body6707) procedure_id320 = self.procedure_id() self._state.following.pop() if self._state.backtracking == 0: stream_procedure_id.add(procedure_id320.tree) # sdl92.g:585:30: ( actual_parameters )? alt98 = 2 LA98_0 = self.input.LA(1) if (LA98_0 == L_PAREN) : alt98 = 1 if alt98 == 1: # sdl92.g:0:0: actual_parameters pass self._state.following.append(self.FOLLOW_actual_parameters_in_procedure_call_body6709) actual_parameters321 = self.actual_parameters() self._state.following.pop() if self._state.backtracking == 0: stream_actual_parameters.add(actual_parameters321.tree) # AST Rewrite # elements: actual_parameters, procedure_id # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 586:9: -> ^( OUTPUT_BODY procedure_id ( actual_parameters )? ) # sdl92.g:586:17: ^( OUTPUT_BODY procedure_id ( actual_parameters )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(OUTPUT_BODY, "OUTPUT_BODY"), root_1) self._adaptor.addChild(root_1, stream_procedure_id.nextTree()) # sdl92.g:586:44: ( actual_parameters )? if stream_actual_parameters.hasNext(): self._adaptor.addChild(root_1, stream_actual_parameters.nextTree()) stream_actual_parameters.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "procedure_call_body" class set_timer_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.set_timer_return, self).__init__() self.tree = None # $ANTLR start "set_timer" # sdl92.g:589:1: set_timer : SET set_statement ( COMMA set_statement )* end -> ( set_statement )+ ; def set_timer(self, ): retval = self.set_timer_return() retval.start = self.input.LT(1) root_0 = None SET322 = None COMMA324 = None set_statement323 = None set_statement325 = None end326 = None SET322_tree = None COMMA324_tree = None stream_SET = RewriteRuleTokenStream(self._adaptor, "token SET") stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_set_statement = RewriteRuleSubtreeStream(self._adaptor, "rule set_statement") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:590:9: ( SET set_statement ( COMMA set_statement )* end -> ( set_statement )+ ) # sdl92.g:590:17: SET set_statement ( COMMA set_statement )* end pass SET322=self.match(self.input, SET, self.FOLLOW_SET_in_set_timer6757) if self._state.backtracking == 0: stream_SET.add(SET322) self._state.following.append(self.FOLLOW_set_statement_in_set_timer6759) set_statement323 = self.set_statement() self._state.following.pop() if self._state.backtracking == 0: stream_set_statement.add(set_statement323.tree) # sdl92.g:590:35: ( COMMA set_statement )* while True: #loop99 alt99 = 2 LA99_0 = self.input.LA(1) if (LA99_0 == COMMA) : alt99 = 1 if alt99 == 1: # sdl92.g:590:36: COMMA set_statement pass COMMA324=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_set_timer6762) if self._state.backtracking == 0: stream_COMMA.add(COMMA324) self._state.following.append(self.FOLLOW_set_statement_in_set_timer6764) set_statement325 = self.set_statement() self._state.following.pop() if self._state.backtracking == 0: stream_set_statement.add(set_statement325.tree) else: break #loop99 self._state.following.append(self.FOLLOW_end_in_set_timer6784) end326 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end326.tree) # AST Rewrite # elements: set_statement # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 592:9: -> ( set_statement )+ # sdl92.g:592:17: ( set_statement )+ if not (stream_set_statement.hasNext()): raise RewriteEarlyExitException() while stream_set_statement.hasNext(): self._adaptor.addChild(root_0, stream_set_statement.nextTree()) stream_set_statement.reset() retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "set_timer" class set_statement_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.set_statement_return, self).__init__() self.tree = None # $ANTLR start "set_statement" # sdl92.g:595:1: set_statement : L_PAREN ( expression COMMA )? timer_id R_PAREN -> ^( SET ( expression )? timer_id ) ; def set_statement(self, ): retval = self.set_statement_return() retval.start = self.input.LT(1) root_0 = None L_PAREN327 = None COMMA329 = None R_PAREN331 = None expression328 = None timer_id330 = None L_PAREN327_tree = None COMMA329_tree = None R_PAREN331_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") stream_timer_id = RewriteRuleSubtreeStream(self._adaptor, "rule timer_id") try: try: # sdl92.g:596:9: ( L_PAREN ( expression COMMA )? timer_id R_PAREN -> ^( SET ( expression )? timer_id ) ) # sdl92.g:596:17: L_PAREN ( expression COMMA )? timer_id R_PAREN pass L_PAREN327=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_set_statement6825) if self._state.backtracking == 0: stream_L_PAREN.add(L_PAREN327) # sdl92.g:596:25: ( expression COMMA )? alt100 = 2 LA100_0 = self.input.LA(1) if (LA100_0 == ID) : LA100_1 = self.input.LA(2) if (LA100_1 == IN or LA100_1 == AND or LA100_1 == ASTERISK or LA100_1 == L_PAREN or LA100_1 == COMMA or (EQ <= LA100_1 <= GE) or (IMPLIES <= LA100_1 <= REM) or (213 <= LA100_1 <= 214)) : alt100 = 1 elif (LA100_0 == BITSTR or LA100_0 == FLOAT or LA100_0 == IF or LA100_0 == OCTSTR or LA100_0 == STRING or LA100_0 == INT or LA100_0 == L_PAREN or LA100_0 == DASH or (NOT <= LA100_0 <= MINUS_INFINITY) or LA100_0 == L_BRACKET) : alt100 = 1 if alt100 == 1: # sdl92.g:596:26: expression COMMA pass self._state.following.append(self.FOLLOW_expression_in_set_statement6828) expression328 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression328.tree) COMMA329=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_set_statement6830) if self._state.backtracking == 0: stream_COMMA.add(COMMA329) self._state.following.append(self.FOLLOW_timer_id_in_set_statement6834) timer_id330 = self.timer_id() self._state.following.pop() if self._state.backtracking == 0: stream_timer_id.add(timer_id330.tree) R_PAREN331=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_set_statement6836) if self._state.backtracking == 0: stream_R_PAREN.add(R_PAREN331) # AST Rewrite # elements: timer_id, expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 597:9: -> ^( SET ( expression )? timer_id ) # sdl92.g:597:17: ^( SET ( expression )? timer_id ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(SET, "SET"), root_1) # sdl92.g:597:23: ( expression )? if stream_expression.hasNext(): self._adaptor.addChild(root_1, stream_expression.nextTree()) stream_expression.reset(); self._adaptor.addChild(root_1, stream_timer_id.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "set_statement" class reset_timer_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.reset_timer_return, self).__init__() self.tree = None # $ANTLR start "reset_timer" # sdl92.g:601:1: reset_timer : RESET reset_statement ( ',' reset_statement )* end -> ( reset_statement )+ ; def reset_timer(self, ): retval = self.reset_timer_return() retval.start = self.input.LT(1) root_0 = None RESET332 = None char_literal334 = None reset_statement333 = None reset_statement335 = None end336 = None RESET332_tree = None char_literal334_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_RESET = RewriteRuleTokenStream(self._adaptor, "token RESET") stream_reset_statement = RewriteRuleSubtreeStream(self._adaptor, "rule reset_statement") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:602:9: ( RESET reset_statement ( ',' reset_statement )* end -> ( reset_statement )+ ) # sdl92.g:602:17: RESET reset_statement ( ',' reset_statement )* end pass RESET332=self.match(self.input, RESET, self.FOLLOW_RESET_in_reset_timer6892) if self._state.backtracking == 0: stream_RESET.add(RESET332) self._state.following.append(self.FOLLOW_reset_statement_in_reset_timer6894) reset_statement333 = self.reset_statement() self._state.following.pop() if self._state.backtracking == 0: stream_reset_statement.add(reset_statement333.tree) # sdl92.g:602:39: ( ',' reset_statement )* while True: #loop101 alt101 = 2 LA101_0 = self.input.LA(1) if (LA101_0 == COMMA) : alt101 = 1 if alt101 == 1: # sdl92.g:602:40: ',' reset_statement pass char_literal334=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_reset_timer6897) if self._state.backtracking == 0: stream_COMMA.add(char_literal334) self._state.following.append(self.FOLLOW_reset_statement_in_reset_timer6899) reset_statement335 = self.reset_statement() self._state.following.pop() if self._state.backtracking == 0: stream_reset_statement.add(reset_statement335.tree) else: break #loop101 self._state.following.append(self.FOLLOW_end_in_reset_timer6919) end336 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end336.tree) # AST Rewrite # elements: reset_statement # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 604:9: -> ( reset_statement )+ # sdl92.g:604:17: ( reset_statement )+ if not (stream_reset_statement.hasNext()): raise RewriteEarlyExitException() while stream_reset_statement.hasNext(): self._adaptor.addChild(root_0, stream_reset_statement.nextTree()) stream_reset_statement.reset() retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "reset_timer" class reset_statement_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.reset_statement_return, self).__init__() self.tree = None # $ANTLR start "reset_statement" # sdl92.g:607:1: reset_statement : timer_id ( '(' expression_list ')' )? -> ^( RESET timer_id ( expression_list )? ) ; def reset_statement(self, ): retval = self.reset_statement_return() retval.start = self.input.LT(1) root_0 = None char_literal338 = None char_literal340 = None timer_id337 = None expression_list339 = None char_literal338_tree = None char_literal340_tree = None stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_expression_list = RewriteRuleSubtreeStream(self._adaptor, "rule expression_list") stream_timer_id = RewriteRuleSubtreeStream(self._adaptor, "rule timer_id") try: try: # sdl92.g:608:9: ( timer_id ( '(' expression_list ')' )? -> ^( RESET timer_id ( expression_list )? ) ) # sdl92.g:608:17: timer_id ( '(' expression_list ')' )? pass self._state.following.append(self.FOLLOW_timer_id_in_reset_statement6960) timer_id337 = self.timer_id() self._state.following.pop() if self._state.backtracking == 0: stream_timer_id.add(timer_id337.tree) # sdl92.g:608:26: ( '(' expression_list ')' )? alt102 = 2 LA102_0 = self.input.LA(1) if (LA102_0 == L_PAREN) : alt102 = 1 if alt102 == 1: # sdl92.g:608:27: '(' expression_list ')' pass char_literal338=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_reset_statement6963) if self._state.backtracking == 0: stream_L_PAREN.add(char_literal338) self._state.following.append(self.FOLLOW_expression_list_in_reset_statement6965) expression_list339 = self.expression_list() self._state.following.pop() if self._state.backtracking == 0: stream_expression_list.add(expression_list339.tree) char_literal340=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_reset_statement6967) if self._state.backtracking == 0: stream_R_PAREN.add(char_literal340) # AST Rewrite # elements: timer_id, expression_list # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 609:9: -> ^( RESET timer_id ( expression_list )? ) # sdl92.g:609:17: ^( RESET timer_id ( expression_list )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(RESET, "RESET"), root_1) self._adaptor.addChild(root_1, stream_timer_id.nextTree()) # sdl92.g:609:34: ( expression_list )? if stream_expression_list.hasNext(): self._adaptor.addChild(root_1, stream_expression_list.nextTree()) stream_expression_list.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "reset_statement" class transition_option_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.transition_option_return, self).__init__() self.tree = None # $ANTLR start "transition_option" # sdl92.g:612:1: transition_option : ALTERNATIVE alternative_question e= end answer_part alternative_part ENDALTERNATIVE f= end -> ^( ALTERNATIVE answer_part alternative_part ) ; def transition_option(self, ): retval = self.transition_option_return() retval.start = self.input.LT(1) root_0 = None ALTERNATIVE341 = None ENDALTERNATIVE345 = None e = None f = None alternative_question342 = None answer_part343 = None alternative_part344 = None ALTERNATIVE341_tree = None ENDALTERNATIVE345_tree = None stream_ALTERNATIVE = RewriteRuleTokenStream(self._adaptor, "token ALTERNATIVE") stream_ENDALTERNATIVE = RewriteRuleTokenStream(self._adaptor, "token ENDALTERNATIVE") stream_alternative_question = RewriteRuleSubtreeStream(self._adaptor, "rule alternative_question") stream_answer_part = RewriteRuleSubtreeStream(self._adaptor, "rule answer_part") stream_alternative_part = RewriteRuleSubtreeStream(self._adaptor, "rule alternative_part") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:613:9: ( ALTERNATIVE alternative_question e= end answer_part alternative_part ENDALTERNATIVE f= end -> ^( ALTERNATIVE answer_part alternative_part ) ) # sdl92.g:613:17: ALTERNATIVE alternative_question e= end answer_part alternative_part ENDALTERNATIVE f= end pass ALTERNATIVE341=self.match(self.input, ALTERNATIVE, self.FOLLOW_ALTERNATIVE_in_transition_option7016) if self._state.backtracking == 0: stream_ALTERNATIVE.add(ALTERNATIVE341) self._state.following.append(self.FOLLOW_alternative_question_in_transition_option7018) alternative_question342 = self.alternative_question() self._state.following.pop() if self._state.backtracking == 0: stream_alternative_question.add(alternative_question342.tree) self._state.following.append(self.FOLLOW_end_in_transition_option7022) e = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(e.tree) self._state.following.append(self.FOLLOW_answer_part_in_transition_option7040) answer_part343 = self.answer_part() self._state.following.pop() if self._state.backtracking == 0: stream_answer_part.add(answer_part343.tree) self._state.following.append(self.FOLLOW_alternative_part_in_transition_option7058) alternative_part344 = self.alternative_part() self._state.following.pop() if self._state.backtracking == 0: stream_alternative_part.add(alternative_part344.tree) ENDALTERNATIVE345=self.match(self.input, ENDALTERNATIVE, self.FOLLOW_ENDALTERNATIVE_in_transition_option7076) if self._state.backtracking == 0: stream_ENDALTERNATIVE.add(ENDALTERNATIVE345) self._state.following.append(self.FOLLOW_end_in_transition_option7080) f = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(f.tree) # AST Rewrite # elements: alternative_part, answer_part, ALTERNATIVE # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 617:9: -> ^( ALTERNATIVE answer_part alternative_part ) # sdl92.g:617:17: ^( ALTERNATIVE answer_part alternative_part ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_ALTERNATIVE.nextNode(), root_1) self._adaptor.addChild(root_1, stream_answer_part.nextTree()) self._adaptor.addChild(root_1, stream_alternative_part.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "transition_option" class alternative_part_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.alternative_part_return, self).__init__() self.tree = None # $ANTLR start "alternative_part" # sdl92.g:620:1: alternative_part : ( ( ( answer_part )+ ( else_part )? ) -> ( answer_part )+ ( else_part )? | else_part -> else_part ); def alternative_part(self, ): retval = self.alternative_part_return() retval.start = self.input.LT(1) root_0 = None answer_part346 = None else_part347 = None else_part348 = None stream_answer_part = RewriteRuleSubtreeStream(self._adaptor, "rule answer_part") stream_else_part = RewriteRuleSubtreeStream(self._adaptor, "rule else_part") try: try: # sdl92.g:621:9: ( ( ( answer_part )+ ( else_part )? ) -> ( answer_part )+ ( else_part )? | else_part -> else_part ) alt105 = 2 alt105 = self.dfa105.predict(self.input) if alt105 == 1: # sdl92.g:621:17: ( ( answer_part )+ ( else_part )? ) pass # sdl92.g:621:17: ( ( answer_part )+ ( else_part )? ) # sdl92.g:621:18: ( answer_part )+ ( else_part )? pass # sdl92.g:621:18: ( answer_part )+ cnt103 = 0 while True: #loop103 alt103 = 2 alt103 = self.dfa103.predict(self.input) if alt103 == 1: # sdl92.g:0:0: answer_part pass self._state.following.append(self.FOLLOW_answer_part_in_alternative_part7127) answer_part346 = self.answer_part() self._state.following.pop() if self._state.backtracking == 0: stream_answer_part.add(answer_part346.tree) else: if cnt103 >= 1: break #loop103 if self._state.backtracking > 0: raise BacktrackingFailed eee = EarlyExitException(103, self.input) raise eee cnt103 += 1 # sdl92.g:621:31: ( else_part )? alt104 = 2 LA104_0 = self.input.LA(1) if (LA104_0 == ELSE or LA104_0 == 218) : alt104 = 1 if alt104 == 1: # sdl92.g:0:0: else_part pass self._state.following.append(self.FOLLOW_else_part_in_alternative_part7130) else_part347 = self.else_part() self._state.following.pop() if self._state.backtracking == 0: stream_else_part.add(else_part347.tree) # AST Rewrite # elements: else_part, answer_part # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 622:9: -> ( answer_part )+ ( else_part )? # sdl92.g:622:17: ( answer_part )+ if not (stream_answer_part.hasNext()): raise RewriteEarlyExitException() while stream_answer_part.hasNext(): self._adaptor.addChild(root_0, stream_answer_part.nextTree()) stream_answer_part.reset() # sdl92.g:622:30: ( else_part )? if stream_else_part.hasNext(): self._adaptor.addChild(root_0, stream_else_part.nextTree()) stream_else_part.reset(); retval.tree = root_0 elif alt105 == 2: # sdl92.g:623:19: else_part pass self._state.following.append(self.FOLLOW_else_part_in_alternative_part7173) else_part348 = self.else_part() self._state.following.pop() if self._state.backtracking == 0: stream_else_part.add(else_part348.tree) # AST Rewrite # elements: else_part # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 624:9: -> else_part self._adaptor.addChild(root_0, stream_else_part.nextTree()) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "alternative_part" class alternative_question_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.alternative_question_return, self).__init__() self.tree = None # $ANTLR start "alternative_question" # sdl92.g:627:1: alternative_question : ( expression | informal_text ); def alternative_question(self, ): retval = self.alternative_question_return() retval.start = self.input.LT(1) root_0 = None expression349 = None informal_text350 = None try: try: # sdl92.g:628:9: ( expression | informal_text ) alt106 = 2 LA106_0 = self.input.LA(1) if (LA106_0 == BITSTR or LA106_0 == FLOAT or LA106_0 == IF or LA106_0 == OCTSTR or LA106_0 == INT or LA106_0 == L_PAREN or LA106_0 == ID or LA106_0 == DASH or (NOT <= LA106_0 <= MINUS_INFINITY) or LA106_0 == L_BRACKET) : alt106 = 1 elif (LA106_0 == STRING) : LA106_2 = self.input.LA(2) if (self.synpred142_sdl92()) : alt106 = 1 elif (True) : alt106 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 106, 2, self.input) raise nvae else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 106, 0, self.input) raise nvae if alt106 == 1: # sdl92.g:628:17: expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_expression_in_alternative_question7213) expression349 = self.expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, expression349.tree) elif alt106 == 2: # sdl92.g:629:19: informal_text pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_informal_text_in_alternative_question7233) informal_text350 = self.informal_text() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, informal_text350.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "alternative_question" class decision_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.decision_return, self).__init__() self.tree = None # $ANTLR start "decision" # sdl92.g:632:1: decision : ( cif )? ( hyperlink )? DECISION question e= end ( answer_part )? ( alternative_part )? ENDDECISION f= end -> ^( DECISION ( cif )? ( hyperlink )? ( $e)? question ( answer_part )? ( alternative_part )? ) ; def decision(self, ): retval = self.decision_return() retval.start = self.input.LT(1) root_0 = None DECISION353 = None ENDDECISION357 = None e = None f = None cif351 = None hyperlink352 = None question354 = None answer_part355 = None alternative_part356 = None DECISION353_tree = None ENDDECISION357_tree = None stream_DECISION = RewriteRuleTokenStream(self._adaptor, "token DECISION") stream_ENDDECISION = RewriteRuleTokenStream(self._adaptor, "token ENDDECISION") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_answer_part = RewriteRuleSubtreeStream(self._adaptor, "rule answer_part") stream_question = RewriteRuleSubtreeStream(self._adaptor, "rule question") stream_alternative_part = RewriteRuleSubtreeStream(self._adaptor, "rule alternative_part") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:633:9: ( ( cif )? ( hyperlink )? DECISION question e= end ( answer_part )? ( alternative_part )? ENDDECISION f= end -> ^( DECISION ( cif )? ( hyperlink )? ( $e)? question ( answer_part )? ( alternative_part )? ) ) # sdl92.g:633:17: ( cif )? ( hyperlink )? DECISION question e= end ( answer_part )? ( alternative_part )? ENDDECISION f= end pass # sdl92.g:633:17: ( cif )? alt107 = 2 LA107_0 = self.input.LA(1) if (LA107_0 == 218) : LA107_1 = self.input.LA(2) if (LA107_1 == ANSWER or LA107_1 == COMMENT or LA107_1 == CONNECT or LA107_1 == DECISION or LA107_1 == INPUT or (JOIN <= LA107_1 <= LABEL) or LA107_1 == NEXTSTATE or LA107_1 == OUTPUT or (PROCEDURE <= LA107_1 <= PROCEDURE_CALL) or (PROCESS <= LA107_1 <= PROVIDED) or LA107_1 == RETURN or LA107_1 == STATE or LA107_1 == STOP or LA107_1 == TASK or LA107_1 == TEXT or LA107_1 == START) : alt107 = 1 if alt107 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_decision7256) cif351 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif351.tree) # sdl92.g:634:17: ( hyperlink )? alt108 = 2 LA108_0 = self.input.LA(1) if (LA108_0 == 218) : alt108 = 1 if alt108 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_decision7275) hyperlink352 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink352.tree) DECISION353=self.match(self.input, DECISION, self.FOLLOW_DECISION_in_decision7294) if self._state.backtracking == 0: stream_DECISION.add(DECISION353) self._state.following.append(self.FOLLOW_question_in_decision7296) question354 = self.question() self._state.following.pop() if self._state.backtracking == 0: stream_question.add(question354.tree) self._state.following.append(self.FOLLOW_end_in_decision7300) e = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(e.tree) # sdl92.g:636:17: ( answer_part )? alt109 = 2 LA109_0 = self.input.LA(1) if (LA109_0 == 218) : LA109_1 = self.input.LA(2) if (self.synpred145_sdl92()) : alt109 = 1 elif (LA109_0 == L_PAREN) : LA109_2 = self.input.LA(2) if (self.synpred145_sdl92()) : alt109 = 1 if alt109 == 1: # sdl92.g:0:0: answer_part pass self._state.following.append(self.FOLLOW_answer_part_in_decision7318) answer_part355 = self.answer_part() self._state.following.pop() if self._state.backtracking == 0: stream_answer_part.add(answer_part355.tree) # sdl92.g:637:17: ( alternative_part )? alt110 = 2 LA110_0 = self.input.LA(1) if (LA110_0 == ELSE or LA110_0 == L_PAREN or LA110_0 == 218) : alt110 = 1 if alt110 == 1: # sdl92.g:0:0: alternative_part pass self._state.following.append(self.FOLLOW_alternative_part_in_decision7337) alternative_part356 = self.alternative_part() self._state.following.pop() if self._state.backtracking == 0: stream_alternative_part.add(alternative_part356.tree) ENDDECISION357=self.match(self.input, ENDDECISION, self.FOLLOW_ENDDECISION_in_decision7356) if self._state.backtracking == 0: stream_ENDDECISION.add(ENDDECISION357) self._state.following.append(self.FOLLOW_end_in_decision7360) f = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(f.tree) # AST Rewrite # elements: cif, question, alternative_part, answer_part, DECISION, e, hyperlink # token labels: # rule labels: retval, e # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) if e is not None: stream_e = RewriteRuleSubtreeStream(self._adaptor, "rule e", e.tree) else: stream_e = RewriteRuleSubtreeStream(self._adaptor, "token e", None) root_0 = self._adaptor.nil() # 639:9: -> ^( DECISION ( cif )? ( hyperlink )? ( $e)? question ( answer_part )? ( alternative_part )? ) # sdl92.g:639:17: ^( DECISION ( cif )? ( hyperlink )? ( $e)? question ( answer_part )? ( alternative_part )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_DECISION.nextNode(), root_1) # sdl92.g:639:28: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:639:33: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); # sdl92.g:639:44: ( $e)? if stream_e.hasNext(): self._adaptor.addChild(root_1, stream_e.nextTree()) stream_e.reset(); self._adaptor.addChild(root_1, stream_question.nextTree()) # sdl92.g:640:17: ( answer_part )? if stream_answer_part.hasNext(): self._adaptor.addChild(root_1, stream_answer_part.nextTree()) stream_answer_part.reset(); # sdl92.g:640:30: ( alternative_part )? if stream_alternative_part.hasNext(): self._adaptor.addChild(root_1, stream_alternative_part.nextTree()) stream_alternative_part.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "decision" class answer_part_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.answer_part_return, self).__init__() self.tree = None # $ANTLR start "answer_part" # sdl92.g:643:1: answer_part : ( cif )? ( hyperlink )? L_PAREN answer R_PAREN ':' ( transition )? -> ^( ANSWER ( cif )? ( hyperlink )? answer ( transition )? ) ; def answer_part(self, ): retval = self.answer_part_return() retval.start = self.input.LT(1) root_0 = None L_PAREN360 = None R_PAREN362 = None char_literal363 = None cif358 = None hyperlink359 = None answer361 = None transition364 = None L_PAREN360_tree = None R_PAREN362_tree = None char_literal363_tree = None stream_213 = RewriteRuleTokenStream(self._adaptor, "token 213") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_answer = RewriteRuleSubtreeStream(self._adaptor, "rule answer") stream_transition = RewriteRuleSubtreeStream(self._adaptor, "rule transition") try: try: # sdl92.g:644:9: ( ( cif )? ( hyperlink )? L_PAREN answer R_PAREN ':' ( transition )? -> ^( ANSWER ( cif )? ( hyperlink )? answer ( transition )? ) ) # sdl92.g:644:17: ( cif )? ( hyperlink )? L_PAREN answer R_PAREN ':' ( transition )? pass # sdl92.g:644:17: ( cif )? alt111 = 2 LA111_0 = self.input.LA(1) if (LA111_0 == 218) : LA111_1 = self.input.LA(2) if (LA111_1 == ANSWER or LA111_1 == COMMENT or LA111_1 == CONNECT or LA111_1 == DECISION or LA111_1 == INPUT or (JOIN <= LA111_1 <= LABEL) or LA111_1 == NEXTSTATE or LA111_1 == OUTPUT or (PROCEDURE <= LA111_1 <= PROCEDURE_CALL) or (PROCESS <= LA111_1 <= PROVIDED) or LA111_1 == RETURN or LA111_1 == STATE or LA111_1 == STOP or LA111_1 == TASK or LA111_1 == TEXT or LA111_1 == START) : alt111 = 1 if alt111 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_answer_part7436) cif358 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif358.tree) # sdl92.g:645:17: ( hyperlink )? alt112 = 2 LA112_0 = self.input.LA(1) if (LA112_0 == 218) : alt112 = 1 if alt112 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_answer_part7455) hyperlink359 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink359.tree) L_PAREN360=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_answer_part7474) if self._state.backtracking == 0: stream_L_PAREN.add(L_PAREN360) self._state.following.append(self.FOLLOW_answer_in_answer_part7476) answer361 = self.answer() self._state.following.pop() if self._state.backtracking == 0: stream_answer.add(answer361.tree) R_PAREN362=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_answer_part7478) if self._state.backtracking == 0: stream_R_PAREN.add(R_PAREN362) char_literal363=self.match(self.input, 213, self.FOLLOW_213_in_answer_part7480) if self._state.backtracking == 0: stream_213.add(char_literal363) # sdl92.g:646:44: ( transition )? alt113 = 2 alt113 = self.dfa113.predict(self.input) if alt113 == 1: # sdl92.g:0:0: transition pass self._state.following.append(self.FOLLOW_transition_in_answer_part7482) transition364 = self.transition() self._state.following.pop() if self._state.backtracking == 0: stream_transition.add(transition364.tree) # AST Rewrite # elements: cif, hyperlink, transition, answer # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 647:9: -> ^( ANSWER ( cif )? ( hyperlink )? answer ( transition )? ) # sdl92.g:647:17: ^( ANSWER ( cif )? ( hyperlink )? answer ( transition )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(ANSWER, "ANSWER"), root_1) # sdl92.g:647:26: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:647:31: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); self._adaptor.addChild(root_1, stream_answer.nextTree()) # sdl92.g:647:49: ( transition )? if stream_transition.hasNext(): self._adaptor.addChild(root_1, stream_transition.nextTree()) stream_transition.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "answer_part" class answer_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.answer_return, self).__init__() self.tree = None # $ANTLR start "answer" # sdl92.g:650:1: answer : ( range_condition | informal_text ); def answer(self, ): retval = self.answer_return() retval.start = self.input.LT(1) root_0 = None range_condition365 = None informal_text366 = None try: try: # sdl92.g:651:9: ( range_condition | informal_text ) alt114 = 2 LA114_0 = self.input.LA(1) if (LA114_0 == BITSTR or LA114_0 == FLOAT or LA114_0 == IF or LA114_0 == OCTSTR or LA114_0 == INT or LA114_0 == L_PAREN or (EQ <= LA114_0 <= GE) or LA114_0 == ID or LA114_0 == DASH or (NOT <= LA114_0 <= MINUS_INFINITY) or LA114_0 == L_BRACKET) : alt114 = 1 elif (LA114_0 == STRING) : LA114_2 = self.input.LA(2) if (self.synpred150_sdl92()) : alt114 = 1 elif (True) : alt114 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 114, 2, self.input) raise nvae else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 114, 0, self.input) raise nvae if alt114 == 1: # sdl92.g:651:17: range_condition pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_range_condition_in_answer7536) range_condition365 = self.range_condition() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, range_condition365.tree) elif alt114 == 2: # sdl92.g:652:19: informal_text pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_informal_text_in_answer7556) informal_text366 = self.informal_text() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, informal_text366.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "answer" class else_part_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.else_part_return, self).__init__() self.tree = None # $ANTLR start "else_part" # sdl92.g:655:1: else_part : ( cif )? ( hyperlink )? ELSE ':' ( transition )? -> ^( ELSE ( cif )? ( hyperlink )? ( transition )? ) ; def else_part(self, ): retval = self.else_part_return() retval.start = self.input.LT(1) root_0 = None ELSE369 = None char_literal370 = None cif367 = None hyperlink368 = None transition371 = None ELSE369_tree = None char_literal370_tree = None stream_213 = RewriteRuleTokenStream(self._adaptor, "token 213") stream_ELSE = RewriteRuleTokenStream(self._adaptor, "token ELSE") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_transition = RewriteRuleSubtreeStream(self._adaptor, "rule transition") try: try: # sdl92.g:656:9: ( ( cif )? ( hyperlink )? ELSE ':' ( transition )? -> ^( ELSE ( cif )? ( hyperlink )? ( transition )? ) ) # sdl92.g:656:17: ( cif )? ( hyperlink )? ELSE ':' ( transition )? pass # sdl92.g:656:17: ( cif )? alt115 = 2 LA115_0 = self.input.LA(1) if (LA115_0 == 218) : LA115_1 = self.input.LA(2) if (LA115_1 == ANSWER or LA115_1 == COMMENT or LA115_1 == CONNECT or LA115_1 == DECISION or LA115_1 == INPUT or (JOIN <= LA115_1 <= LABEL) or LA115_1 == NEXTSTATE or LA115_1 == OUTPUT or (PROCEDURE <= LA115_1 <= PROCEDURE_CALL) or (PROCESS <= LA115_1 <= PROVIDED) or LA115_1 == RETURN or LA115_1 == STATE or LA115_1 == STOP or LA115_1 == TASK or LA115_1 == TEXT or LA115_1 == START) : alt115 = 1 if alt115 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_else_part7579) cif367 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif367.tree) # sdl92.g:657:17: ( hyperlink )? alt116 = 2 LA116_0 = self.input.LA(1) if (LA116_0 == 218) : alt116 = 1 if alt116 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_else_part7598) hyperlink368 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink368.tree) ELSE369=self.match(self.input, ELSE, self.FOLLOW_ELSE_in_else_part7617) if self._state.backtracking == 0: stream_ELSE.add(ELSE369) char_literal370=self.match(self.input, 213, self.FOLLOW_213_in_else_part7619) if self._state.backtracking == 0: stream_213.add(char_literal370) # sdl92.g:658:26: ( transition )? alt117 = 2 LA117_0 = self.input.LA(1) if (LA117_0 == ALTERNATIVE or LA117_0 == DECISION or LA117_0 == EXPORT or LA117_0 == FOR or LA117_0 == JOIN or LA117_0 == NEXTSTATE or LA117_0 == OUTPUT or (RESET <= LA117_0 <= RETURN) or LA117_0 == SET or (STOP <= LA117_0 <= STRING) or LA117_0 == TASK or LA117_0 == CALL or LA117_0 == CREATE or LA117_0 == ID or LA117_0 == 218) : alt117 = 1 if alt117 == 1: # sdl92.g:0:0: transition pass self._state.following.append(self.FOLLOW_transition_in_else_part7621) transition371 = self.transition() self._state.following.pop() if self._state.backtracking == 0: stream_transition.add(transition371.tree) # AST Rewrite # elements: hyperlink, cif, transition, ELSE # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 659:9: -> ^( ELSE ( cif )? ( hyperlink )? ( transition )? ) # sdl92.g:659:17: ^( ELSE ( cif )? ( hyperlink )? ( transition )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_ELSE.nextNode(), root_1) # sdl92.g:659:24: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:659:29: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); # sdl92.g:659:40: ( transition )? if stream_transition.hasNext(): self._adaptor.addChild(root_1, stream_transition.nextTree()) stream_transition.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "else_part" class question_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.question_return, self).__init__() self.tree = None # $ANTLR start "question" # sdl92.g:662:1: question : ( expression -> ^( QUESTION expression ) | informal_text -> informal_text | ANY -> ^( ANY ) ); def question(self, ): retval = self.question_return() retval.start = self.input.LT(1) root_0 = None ANY374 = None expression372 = None informal_text373 = None ANY374_tree = None stream_ANY = RewriteRuleTokenStream(self._adaptor, "token ANY") stream_informal_text = RewriteRuleSubtreeStream(self._adaptor, "rule informal_text") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") try: try: # sdl92.g:663:9: ( expression -> ^( QUESTION expression ) | informal_text -> informal_text | ANY -> ^( ANY ) ) alt118 = 3 LA118 = self.input.LA(1) if LA118 == BITSTR or LA118 == FLOAT or LA118 == IF or LA118 == OCTSTR or LA118 == INT or LA118 == L_PAREN or LA118 == ID or LA118 == DASH or LA118 == NOT or LA118 == TRUE or LA118 == FALSE or LA118 == NULL or LA118 == PLUS_INFINITY or LA118 == MINUS_INFINITY or LA118 == L_BRACKET: alt118 = 1 elif LA118 == STRING: LA118_2 = self.input.LA(2) if (self.synpred154_sdl92()) : alt118 = 1 elif (self.synpred155_sdl92()) : alt118 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 118, 2, self.input) raise nvae elif LA118 == ANY: alt118 = 3 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 118, 0, self.input) raise nvae if alt118 == 1: # sdl92.g:663:17: expression pass self._state.following.append(self.FOLLOW_expression_in_question7673) expression372 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression372.tree) # AST Rewrite # elements: expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 664:9: -> ^( QUESTION expression ) # sdl92.g:664:17: ^( QUESTION expression ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(QUESTION, "QUESTION"), root_1) self._adaptor.addChild(root_1, stream_expression.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt118 == 2: # sdl92.g:665:19: informal_text pass self._state.following.append(self.FOLLOW_informal_text_in_question7714) informal_text373 = self.informal_text() self._state.following.pop() if self._state.backtracking == 0: stream_informal_text.add(informal_text373.tree) # AST Rewrite # elements: informal_text # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 666:9: -> informal_text self._adaptor.addChild(root_0, stream_informal_text.nextTree()) retval.tree = root_0 elif alt118 == 3: # sdl92.g:667:19: ANY pass ANY374=self.match(self.input, ANY, self.FOLLOW_ANY_in_question7751) if self._state.backtracking == 0: stream_ANY.add(ANY374) # AST Rewrite # elements: ANY # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 668:9: -> ^( ANY ) # sdl92.g:668:17: ^( ANY ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_ANY.nextNode(), root_1) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "question" class range_condition_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.range_condition_return, self).__init__() self.tree = None # $ANTLR start "range_condition" # sdl92.g:671:1: range_condition : ( closed_range | open_range ) ; def range_condition(self, ): retval = self.range_condition_return() retval.start = self.input.LT(1) root_0 = None closed_range375 = None open_range376 = None try: try: # sdl92.g:672:9: ( ( closed_range | open_range ) ) # sdl92.g:672:17: ( closed_range | open_range ) pass root_0 = self._adaptor.nil() # sdl92.g:672:17: ( closed_range | open_range ) alt119 = 2 alt119 = self.dfa119.predict(self.input) if alt119 == 1: # sdl92.g:672:18: closed_range pass self._state.following.append(self.FOLLOW_closed_range_in_range_condition7794) closed_range375 = self.closed_range() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, closed_range375.tree) elif alt119 == 2: # sdl92.g:672:33: open_range pass self._state.following.append(self.FOLLOW_open_range_in_range_condition7798) open_range376 = self.open_range() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, open_range376.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "range_condition" class closed_range_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.closed_range_return, self).__init__() self.tree = None # $ANTLR start "closed_range" # sdl92.g:676:1: closed_range : a= expression ':' b= expression -> ^( CLOSED_RANGE $a $b) ; def closed_range(self, ): retval = self.closed_range_return() retval.start = self.input.LT(1) root_0 = None char_literal377 = None a = None b = None char_literal377_tree = None stream_213 = RewriteRuleTokenStream(self._adaptor, "token 213") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") try: try: # sdl92.g:677:9: (a= expression ':' b= expression -> ^( CLOSED_RANGE $a $b) ) # sdl92.g:677:17: a= expression ':' b= expression pass self._state.following.append(self.FOLLOW_expression_in_closed_range7841) a = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(a.tree) char_literal377=self.match(self.input, 213, self.FOLLOW_213_in_closed_range7843) if self._state.backtracking == 0: stream_213.add(char_literal377) self._state.following.append(self.FOLLOW_expression_in_closed_range7847) b = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(b.tree) # AST Rewrite # elements: b, a # token labels: # rule labels: retval, b, a # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) if b is not None: stream_b = RewriteRuleSubtreeStream(self._adaptor, "rule b", b.tree) else: stream_b = RewriteRuleSubtreeStream(self._adaptor, "token b", None) if a is not None: stream_a = RewriteRuleSubtreeStream(self._adaptor, "rule a", a.tree) else: stream_a = RewriteRuleSubtreeStream(self._adaptor, "token a", None) root_0 = self._adaptor.nil() # 678:9: -> ^( CLOSED_RANGE $a $b) # sdl92.g:678:17: ^( CLOSED_RANGE $a $b) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(CLOSED_RANGE, "CLOSED_RANGE"), root_1) self._adaptor.addChild(root_1, stream_a.nextTree()) self._adaptor.addChild(root_1, stream_b.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "closed_range" class open_range_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.open_range_return, self).__init__() self.tree = None # $ANTLR start "open_range" # sdl92.g:681:1: open_range : ( constant -> constant | ( ( EQ | NEQ | GT | LT | LE | GE ) constant ) -> ^( OPEN_RANGE ( EQ )? ( NEQ )? ( GT )? ( LT )? ( LE )? ( GE )? constant ) ); def open_range(self, ): retval = self.open_range_return() retval.start = self.input.LT(1) root_0 = None EQ379 = None NEQ380 = None GT381 = None LT382 = None LE383 = None GE384 = None constant378 = None constant385 = None EQ379_tree = None NEQ380_tree = None GT381_tree = None LT382_tree = None LE383_tree = None GE384_tree = None stream_GT = RewriteRuleTokenStream(self._adaptor, "token GT") stream_GE = RewriteRuleTokenStream(self._adaptor, "token GE") stream_LT = RewriteRuleTokenStream(self._adaptor, "token LT") stream_NEQ = RewriteRuleTokenStream(self._adaptor, "token NEQ") stream_EQ = RewriteRuleTokenStream(self._adaptor, "token EQ") stream_LE = RewriteRuleTokenStream(self._adaptor, "token LE") stream_constant = RewriteRuleSubtreeStream(self._adaptor, "rule constant") try: try: # sdl92.g:682:9: ( constant -> constant | ( ( EQ | NEQ | GT | LT | LE | GE ) constant ) -> ^( OPEN_RANGE ( EQ )? ( NEQ )? ( GT )? ( LT )? ( LE )? ( GE )? constant ) ) alt121 = 2 LA121_0 = self.input.LA(1) if (LA121_0 == BITSTR or LA121_0 == FLOAT or LA121_0 == IF or LA121_0 == OCTSTR or LA121_0 == STRING or LA121_0 == INT or LA121_0 == L_PAREN or LA121_0 == ID or LA121_0 == DASH or (NOT <= LA121_0 <= MINUS_INFINITY) or LA121_0 == L_BRACKET) : alt121 = 1 elif ((EQ <= LA121_0 <= GE)) : alt121 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 121, 0, self.input) raise nvae if alt121 == 1: # sdl92.g:682:17: constant pass self._state.following.append(self.FOLLOW_constant_in_open_range7895) constant378 = self.constant() self._state.following.pop() if self._state.backtracking == 0: stream_constant.add(constant378.tree) # AST Rewrite # elements: constant # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 683:9: -> constant self._adaptor.addChild(root_0, stream_constant.nextTree()) retval.tree = root_0 elif alt121 == 2: # sdl92.g:684:19: ( ( EQ | NEQ | GT | LT | LE | GE ) constant ) pass # sdl92.g:684:19: ( ( EQ | NEQ | GT | LT | LE | GE ) constant ) # sdl92.g:684:21: ( EQ | NEQ | GT | LT | LE | GE ) constant pass # sdl92.g:684:21: ( EQ | NEQ | GT | LT | LE | GE ) alt120 = 6 LA120 = self.input.LA(1) if LA120 == EQ: alt120 = 1 elif LA120 == NEQ: alt120 = 2 elif LA120 == GT: alt120 = 3 elif LA120 == LT: alt120 = 4 elif LA120 == LE: alt120 = 5 elif LA120 == GE: alt120 = 6 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 120, 0, self.input) raise nvae if alt120 == 1: # sdl92.g:684:22: EQ pass EQ379=self.match(self.input, EQ, self.FOLLOW_EQ_in_open_range7935) if self._state.backtracking == 0: stream_EQ.add(EQ379) elif alt120 == 2: # sdl92.g:684:25: NEQ pass NEQ380=self.match(self.input, NEQ, self.FOLLOW_NEQ_in_open_range7937) if self._state.backtracking == 0: stream_NEQ.add(NEQ380) elif alt120 == 3: # sdl92.g:684:29: GT pass GT381=self.match(self.input, GT, self.FOLLOW_GT_in_open_range7939) if self._state.backtracking == 0: stream_GT.add(GT381) elif alt120 == 4: # sdl92.g:684:32: LT pass LT382=self.match(self.input, LT, self.FOLLOW_LT_in_open_range7941) if self._state.backtracking == 0: stream_LT.add(LT382) elif alt120 == 5: # sdl92.g:684:35: LE pass LE383=self.match(self.input, LE, self.FOLLOW_LE_in_open_range7943) if self._state.backtracking == 0: stream_LE.add(LE383) elif alt120 == 6: # sdl92.g:684:38: GE pass GE384=self.match(self.input, GE, self.FOLLOW_GE_in_open_range7945) if self._state.backtracking == 0: stream_GE.add(GE384) self._state.following.append(self.FOLLOW_constant_in_open_range7948) constant385 = self.constant() self._state.following.pop() if self._state.backtracking == 0: stream_constant.add(constant385.tree) # AST Rewrite # elements: GT, LE, GE, LT, NEQ, EQ, constant # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 685:9: -> ^( OPEN_RANGE ( EQ )? ( NEQ )? ( GT )? ( LT )? ( LE )? ( GE )? constant ) # sdl92.g:685:17: ^( OPEN_RANGE ( EQ )? ( NEQ )? ( GT )? ( LT )? ( LE )? ( GE )? constant ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(OPEN_RANGE, "OPEN_RANGE"), root_1) # sdl92.g:685:30: ( EQ )? if stream_EQ.hasNext(): self._adaptor.addChild(root_1, stream_EQ.nextNode()) stream_EQ.reset(); # sdl92.g:685:34: ( NEQ )? if stream_NEQ.hasNext(): self._adaptor.addChild(root_1, stream_NEQ.nextNode()) stream_NEQ.reset(); # sdl92.g:685:39: ( GT )? if stream_GT.hasNext(): self._adaptor.addChild(root_1, stream_GT.nextNode()) stream_GT.reset(); # sdl92.g:685:43: ( LT )? if stream_LT.hasNext(): self._adaptor.addChild(root_1, stream_LT.nextNode()) stream_LT.reset(); # sdl92.g:685:47: ( LE )? if stream_LE.hasNext(): self._adaptor.addChild(root_1, stream_LE.nextNode()) stream_LE.reset(); # sdl92.g:685:51: ( GE )? if stream_GE.hasNext(): self._adaptor.addChild(root_1, stream_GE.nextNode()) stream_GE.reset(); self._adaptor.addChild(root_1, stream_constant.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "open_range" class constant_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.constant_return, self).__init__() self.tree = None # $ANTLR start "constant" # sdl92.g:688:1: constant : expression -> ^( CONSTANT expression ) ; def constant(self, ): retval = self.constant_return() retval.start = self.input.LT(1) root_0 = None expression386 = None stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") try: try: # sdl92.g:689:9: ( expression -> ^( CONSTANT expression ) ) # sdl92.g:689:17: expression pass self._state.following.append(self.FOLLOW_expression_in_constant8011) expression386 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression386.tree) # AST Rewrite # elements: expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 690:9: -> ^( CONSTANT expression ) # sdl92.g:690:17: ^( CONSTANT expression ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(CONSTANT, "CONSTANT"), root_1) self._adaptor.addChild(root_1, stream_expression.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "constant" class create_request_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.create_request_return, self).__init__() self.tree = None # $ANTLR start "create_request" # sdl92.g:693:1: create_request : CREATE createbody ( actual_parameters )? end -> ^( CREATE createbody ( actual_parameters )? ) ; def create_request(self, ): retval = self.create_request_return() retval.start = self.input.LT(1) root_0 = None CREATE387 = None createbody388 = None actual_parameters389 = None end390 = None CREATE387_tree = None stream_CREATE = RewriteRuleTokenStream(self._adaptor, "token CREATE") stream_createbody = RewriteRuleSubtreeStream(self._adaptor, "rule createbody") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") stream_actual_parameters = RewriteRuleSubtreeStream(self._adaptor, "rule actual_parameters") try: try: # sdl92.g:694:9: ( CREATE createbody ( actual_parameters )? end -> ^( CREATE createbody ( actual_parameters )? ) ) # sdl92.g:694:17: CREATE createbody ( actual_parameters )? end pass CREATE387=self.match(self.input, CREATE, self.FOLLOW_CREATE_in_create_request8055) if self._state.backtracking == 0: stream_CREATE.add(CREATE387) self._state.following.append(self.FOLLOW_createbody_in_create_request8073) createbody388 = self.createbody() self._state.following.pop() if self._state.backtracking == 0: stream_createbody.add(createbody388.tree) # sdl92.g:696:17: ( actual_parameters )? alt122 = 2 LA122_0 = self.input.LA(1) if (LA122_0 == L_PAREN) : alt122 = 1 if alt122 == 1: # sdl92.g:0:0: actual_parameters pass self._state.following.append(self.FOLLOW_actual_parameters_in_create_request8091) actual_parameters389 = self.actual_parameters() self._state.following.pop() if self._state.backtracking == 0: stream_actual_parameters.add(actual_parameters389.tree) self._state.following.append(self.FOLLOW_end_in_create_request8110) end390 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end390.tree) # AST Rewrite # elements: createbody, CREATE, actual_parameters # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 698:9: -> ^( CREATE createbody ( actual_parameters )? ) # sdl92.g:698:17: ^( CREATE createbody ( actual_parameters )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_CREATE.nextNode(), root_1) self._adaptor.addChild(root_1, stream_createbody.nextTree()) # sdl92.g:698:37: ( actual_parameters )? if stream_actual_parameters.hasNext(): self._adaptor.addChild(root_1, stream_actual_parameters.nextTree()) stream_actual_parameters.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "create_request" class createbody_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.createbody_return, self).__init__() self.tree = None # $ANTLR start "createbody" # sdl92.g:701:1: createbody : ( process_id | THIS ); def createbody(self, ): retval = self.createbody_return() retval.start = self.input.LT(1) root_0 = None THIS392 = None process_id391 = None THIS392_tree = None try: try: # sdl92.g:702:9: ( process_id | THIS ) alt123 = 2 LA123_0 = self.input.LA(1) if (LA123_0 == ID) : alt123 = 1 elif (LA123_0 == THIS) : alt123 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 123, 0, self.input) raise nvae if alt123 == 1: # sdl92.g:702:17: process_id pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_process_id_in_createbody8157) process_id391 = self.process_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, process_id391.tree) elif alt123 == 2: # sdl92.g:703:19: THIS pass root_0 = self._adaptor.nil() THIS392=self.match(self.input, THIS, self.FOLLOW_THIS_in_createbody8177) if self._state.backtracking == 0: THIS392_tree = self._adaptor.createWithPayload(THIS392) self._adaptor.addChild(root_0, THIS392_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "createbody" class output_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.output_return, self).__init__() self.tree = None # $ANTLR start "output" # sdl92.g:706:1: output : ( cif )? ( hyperlink )? OUTPUT outputbody end -> ^( OUTPUT ( cif )? ( hyperlink )? ( end )? outputbody ) ; def output(self, ): retval = self.output_return() retval.start = self.input.LT(1) root_0 = None OUTPUT395 = None cif393 = None hyperlink394 = None outputbody396 = None end397 = None OUTPUT395_tree = None stream_OUTPUT = RewriteRuleTokenStream(self._adaptor, "token OUTPUT") stream_outputbody = RewriteRuleSubtreeStream(self._adaptor, "rule outputbody") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:707:9: ( ( cif )? ( hyperlink )? OUTPUT outputbody end -> ^( OUTPUT ( cif )? ( hyperlink )? ( end )? outputbody ) ) # sdl92.g:707:17: ( cif )? ( hyperlink )? OUTPUT outputbody end pass # sdl92.g:707:17: ( cif )? alt124 = 2 LA124_0 = self.input.LA(1) if (LA124_0 == 218) : LA124_1 = self.input.LA(2) if (LA124_1 == ANSWER or LA124_1 == COMMENT or LA124_1 == CONNECT or LA124_1 == DECISION or LA124_1 == INPUT or (JOIN <= LA124_1 <= LABEL) or LA124_1 == NEXTSTATE or LA124_1 == OUTPUT or (PROCEDURE <= LA124_1 <= PROCEDURE_CALL) or (PROCESS <= LA124_1 <= PROVIDED) or LA124_1 == RETURN or LA124_1 == STATE or LA124_1 == STOP or LA124_1 == TASK or LA124_1 == TEXT or LA124_1 == START) : alt124 = 1 if alt124 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_output8200) cif393 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif393.tree) # sdl92.g:708:17: ( hyperlink )? alt125 = 2 LA125_0 = self.input.LA(1) if (LA125_0 == 218) : alt125 = 1 if alt125 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_output8219) hyperlink394 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink394.tree) OUTPUT395=self.match(self.input, OUTPUT, self.FOLLOW_OUTPUT_in_output8238) if self._state.backtracking == 0: stream_OUTPUT.add(OUTPUT395) self._state.following.append(self.FOLLOW_outputbody_in_output8240) outputbody396 = self.outputbody() self._state.following.pop() if self._state.backtracking == 0: stream_outputbody.add(outputbody396.tree) self._state.following.append(self.FOLLOW_end_in_output8242) end397 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end397.tree) # AST Rewrite # elements: OUTPUT, outputbody, end, cif, hyperlink # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 710:9: -> ^( OUTPUT ( cif )? ( hyperlink )? ( end )? outputbody ) # sdl92.g:710:17: ^( OUTPUT ( cif )? ( hyperlink )? ( end )? outputbody ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_OUTPUT.nextNode(), root_1) # sdl92.g:710:26: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:710:31: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); # sdl92.g:710:42: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); self._adaptor.addChild(root_1, stream_outputbody.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "output" class outputbody_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.outputbody_return, self).__init__() self.tree = None # $ANTLR start "outputbody" # sdl92.g:713:1: outputbody : outputstmt ( ',' outputstmt )* ( to_part )? -> ^( OUTPUT_BODY ( outputstmt )+ ( to_part )? ) ; def outputbody(self, ): retval = self.outputbody_return() retval.start = self.input.LT(1) root_0 = None char_literal399 = None outputstmt398 = None outputstmt400 = None to_part401 = None char_literal399_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_outputstmt = RewriteRuleSubtreeStream(self._adaptor, "rule outputstmt") stream_to_part = RewriteRuleSubtreeStream(self._adaptor, "rule to_part") try: try: # sdl92.g:714:9: ( outputstmt ( ',' outputstmt )* ( to_part )? -> ^( OUTPUT_BODY ( outputstmt )+ ( to_part )? ) ) # sdl92.g:714:17: outputstmt ( ',' outputstmt )* ( to_part )? pass self._state.following.append(self.FOLLOW_outputstmt_in_outputbody8295) outputstmt398 = self.outputstmt() self._state.following.pop() if self._state.backtracking == 0: stream_outputstmt.add(outputstmt398.tree) # sdl92.g:714:28: ( ',' outputstmt )* while True: #loop126 alt126 = 2 LA126_0 = self.input.LA(1) if (LA126_0 == COMMA) : alt126 = 1 if alt126 == 1: # sdl92.g:714:29: ',' outputstmt pass char_literal399=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_outputbody8298) if self._state.backtracking == 0: stream_COMMA.add(char_literal399) self._state.following.append(self.FOLLOW_outputstmt_in_outputbody8300) outputstmt400 = self.outputstmt() self._state.following.pop() if self._state.backtracking == 0: stream_outputstmt.add(outputstmt400.tree) else: break #loop126 # sdl92.g:714:46: ( to_part )? alt127 = 2 LA127_0 = self.input.LA(1) if (LA127_0 == TO) : alt127 = 1 if alt127 == 1: # sdl92.g:0:0: to_part pass self._state.following.append(self.FOLLOW_to_part_in_outputbody8304) to_part401 = self.to_part() self._state.following.pop() if self._state.backtracking == 0: stream_to_part.add(to_part401.tree) # AST Rewrite # elements: outputstmt, to_part # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 715:9: -> ^( OUTPUT_BODY ( outputstmt )+ ( to_part )? ) # sdl92.g:715:17: ^( OUTPUT_BODY ( outputstmt )+ ( to_part )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(OUTPUT_BODY, "OUTPUT_BODY"), root_1) # sdl92.g:715:31: ( outputstmt )+ if not (stream_outputstmt.hasNext()): raise RewriteEarlyExitException() while stream_outputstmt.hasNext(): self._adaptor.addChild(root_1, stream_outputstmt.nextTree()) stream_outputstmt.reset() # sdl92.g:715:43: ( to_part )? if stream_to_part.hasNext(): self._adaptor.addChild(root_1, stream_to_part.nextTree()) stream_to_part.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "outputbody" class outputstmt_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.outputstmt_return, self).__init__() self.tree = None # $ANTLR start "outputstmt" # sdl92.g:720:1: outputstmt : signal_id ( actual_parameters )? ; def outputstmt(self, ): retval = self.outputstmt_return() retval.start = self.input.LT(1) root_0 = None signal_id402 = None actual_parameters403 = None try: try: # sdl92.g:721:9: ( signal_id ( actual_parameters )? ) # sdl92.g:721:17: signal_id ( actual_parameters )? pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_signal_id_in_outputstmt8357) signal_id402 = self.signal_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, signal_id402.tree) # sdl92.g:722:17: ( actual_parameters )? alt128 = 2 LA128_0 = self.input.LA(1) if (LA128_0 == L_PAREN) : alt128 = 1 if alt128 == 1: # sdl92.g:0:0: actual_parameters pass self._state.following.append(self.FOLLOW_actual_parameters_in_outputstmt8375) actual_parameters403 = self.actual_parameters() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, actual_parameters403.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "outputstmt" class to_part_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.to_part_return, self).__init__() self.tree = None # $ANTLR start "to_part" # sdl92.g:724:1: to_part : ( TO destination ) -> ^( TO destination ) ; def to_part(self, ): retval = self.to_part_return() retval.start = self.input.LT(1) root_0 = None TO404 = None destination405 = None TO404_tree = None stream_TO = RewriteRuleTokenStream(self._adaptor, "token TO") stream_destination = RewriteRuleSubtreeStream(self._adaptor, "rule destination") try: try: # sdl92.g:725:9: ( ( TO destination ) -> ^( TO destination ) ) # sdl92.g:725:17: ( TO destination ) pass # sdl92.g:725:17: ( TO destination ) # sdl92.g:725:18: TO destination pass TO404=self.match(self.input, TO, self.FOLLOW_TO_in_to_part8399) if self._state.backtracking == 0: stream_TO.add(TO404) self._state.following.append(self.FOLLOW_destination_in_to_part8401) destination405 = self.destination() self._state.following.pop() if self._state.backtracking == 0: stream_destination.add(destination405.tree) # AST Rewrite # elements: TO, destination # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 726:9: -> ^( TO destination ) # sdl92.g:726:17: ^( TO destination ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_TO.nextNode(), root_1) self._adaptor.addChild(root_1, stream_destination.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "to_part" class via_part_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.via_part_return, self).__init__() self.tree = None # $ANTLR start "via_part" # sdl92.g:728:1: via_part : VIA viabody -> ^( VIA viabody ) ; def via_part(self, ): retval = self.via_part_return() retval.start = self.input.LT(1) root_0 = None VIA406 = None viabody407 = None VIA406_tree = None stream_VIA = RewriteRuleTokenStream(self._adaptor, "token VIA") stream_viabody = RewriteRuleSubtreeStream(self._adaptor, "rule viabody") try: try: # sdl92.g:729:9: ( VIA viabody -> ^( VIA viabody ) ) # sdl92.g:729:17: VIA viabody pass VIA406=self.match(self.input, VIA, self.FOLLOW_VIA_in_via_part8445) if self._state.backtracking == 0: stream_VIA.add(VIA406) self._state.following.append(self.FOLLOW_viabody_in_via_part8447) viabody407 = self.viabody() self._state.following.pop() if self._state.backtracking == 0: stream_viabody.add(viabody407.tree) # AST Rewrite # elements: VIA, viabody # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 730:9: -> ^( VIA viabody ) # sdl92.g:730:17: ^( VIA viabody ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_VIA.nextNode(), root_1) self._adaptor.addChild(root_1, stream_viabody.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "via_part" class viabody_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.viabody_return, self).__init__() self.tree = None # $ANTLR start "viabody" # sdl92.g:734:1: viabody : ( ALL -> ^( ALL ) | via_path -> ^( VIAPATH via_path ) ); def viabody(self, ): retval = self.viabody_return() retval.start = self.input.LT(1) root_0 = None ALL408 = None via_path409 = None ALL408_tree = None stream_ALL = RewriteRuleTokenStream(self._adaptor, "token ALL") stream_via_path = RewriteRuleSubtreeStream(self._adaptor, "rule via_path") try: try: # sdl92.g:735:9: ( ALL -> ^( ALL ) | via_path -> ^( VIAPATH via_path ) ) alt129 = 2 LA129_0 = self.input.LA(1) if (LA129_0 == ALL) : alt129 = 1 elif (LA129_0 == ID) : alt129 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 129, 0, self.input) raise nvae if alt129 == 1: # sdl92.g:735:17: ALL pass ALL408=self.match(self.input, ALL, self.FOLLOW_ALL_in_viabody8492) if self._state.backtracking == 0: stream_ALL.add(ALL408) # AST Rewrite # elements: ALL # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 736:9: -> ^( ALL ) # sdl92.g:736:17: ^( ALL ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_ALL.nextNode(), root_1) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt129 == 2: # sdl92.g:737:19: via_path pass self._state.following.append(self.FOLLOW_via_path_in_viabody8531) via_path409 = self.via_path() self._state.following.pop() if self._state.backtracking == 0: stream_via_path.add(via_path409.tree) # AST Rewrite # elements: via_path # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 738:9: -> ^( VIAPATH via_path ) # sdl92.g:738:17: ^( VIAPATH via_path ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(VIAPATH, "VIAPATH"), root_1) self._adaptor.addChild(root_1, stream_via_path.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "viabody" class destination_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.destination_return, self).__init__() self.tree = None # $ANTLR start "destination" # sdl92.g:741:1: destination : ( pid_expression | process_id | THIS ); def destination(self, ): retval = self.destination_return() retval.start = self.input.LT(1) root_0 = None THIS412 = None pid_expression410 = None process_id411 = None THIS412_tree = None try: try: # sdl92.g:742:9: ( pid_expression | process_id | THIS ) alt130 = 3 LA130 = self.input.LA(1) if LA130 == P or LA130 == S or LA130 == O: alt130 = 1 elif LA130 == ID: alt130 = 2 elif LA130 == THIS: alt130 = 3 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 130, 0, self.input) raise nvae if alt130 == 1: # sdl92.g:742:17: pid_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_pid_expression_in_destination8575) pid_expression410 = self.pid_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, pid_expression410.tree) elif alt130 == 2: # sdl92.g:743:19: process_id pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_process_id_in_destination8595) process_id411 = self.process_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, process_id411.tree) elif alt130 == 3: # sdl92.g:744:19: THIS pass root_0 = self._adaptor.nil() THIS412=self.match(self.input, THIS, self.FOLLOW_THIS_in_destination8615) if self._state.backtracking == 0: THIS412_tree = self._adaptor.createWithPayload(THIS412) self._adaptor.addChild(root_0, THIS412_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "destination" class via_path_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.via_path_return, self).__init__() self.tree = None # $ANTLR start "via_path" # sdl92.g:747:1: via_path : via_path_element ( ',' via_path_element )* -> ( via_path_element )+ ; def via_path(self, ): retval = self.via_path_return() retval.start = self.input.LT(1) root_0 = None char_literal414 = None via_path_element413 = None via_path_element415 = None char_literal414_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_via_path_element = RewriteRuleSubtreeStream(self._adaptor, "rule via_path_element") try: try: # sdl92.g:748:9: ( via_path_element ( ',' via_path_element )* -> ( via_path_element )+ ) # sdl92.g:748:17: via_path_element ( ',' via_path_element )* pass self._state.following.append(self.FOLLOW_via_path_element_in_via_path8638) via_path_element413 = self.via_path_element() self._state.following.pop() if self._state.backtracking == 0: stream_via_path_element.add(via_path_element413.tree) # sdl92.g:748:34: ( ',' via_path_element )* while True: #loop131 alt131 = 2 LA131_0 = self.input.LA(1) if (LA131_0 == COMMA) : alt131 = 1 if alt131 == 1: # sdl92.g:748:35: ',' via_path_element pass char_literal414=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_via_path8641) if self._state.backtracking == 0: stream_COMMA.add(char_literal414) self._state.following.append(self.FOLLOW_via_path_element_in_via_path8643) via_path_element415 = self.via_path_element() self._state.following.pop() if self._state.backtracking == 0: stream_via_path_element.add(via_path_element415.tree) else: break #loop131 # AST Rewrite # elements: via_path_element # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 749:9: -> ( via_path_element )+ # sdl92.g:749:17: ( via_path_element )+ if not (stream_via_path_element.hasNext()): raise RewriteEarlyExitException() while stream_via_path_element.hasNext(): self._adaptor.addChild(root_0, stream_via_path_element.nextTree()) stream_via_path_element.reset() retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "via_path" class via_path_element_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.via_path_element_return, self).__init__() self.tree = None # $ANTLR start "via_path_element" # sdl92.g:752:1: via_path_element : ID ; def via_path_element(self, ): retval = self.via_path_element_return() retval.start = self.input.LT(1) root_0 = None ID416 = None ID416_tree = None try: try: # sdl92.g:753:9: ( ID ) # sdl92.g:753:17: ID pass root_0 = self._adaptor.nil() ID416=self.match(self.input, ID, self.FOLLOW_ID_in_via_path_element8686) if self._state.backtracking == 0: ID416_tree = self._adaptor.createWithPayload(ID416) self._adaptor.addChild(root_0, ID416_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "via_path_element" class actual_parameters_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.actual_parameters_return, self).__init__() self.tree = None # $ANTLR start "actual_parameters" # sdl92.g:756:1: actual_parameters : '(' expression ( ',' expression )* ')' -> ^( PARAMS ( expression )+ ) ; def actual_parameters(self, ): retval = self.actual_parameters_return() retval.start = self.input.LT(1) root_0 = None char_literal417 = None char_literal419 = None char_literal421 = None expression418 = None expression420 = None char_literal417_tree = None char_literal419_tree = None char_literal421_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") try: try: # sdl92.g:757:9: ( '(' expression ( ',' expression )* ')' -> ^( PARAMS ( expression )+ ) ) # sdl92.g:757:16: '(' expression ( ',' expression )* ')' pass char_literal417=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_actual_parameters8709) if self._state.backtracking == 0: stream_L_PAREN.add(char_literal417) self._state.following.append(self.FOLLOW_expression_in_actual_parameters8711) expression418 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression418.tree) # sdl92.g:757:31: ( ',' expression )* while True: #loop132 alt132 = 2 LA132_0 = self.input.LA(1) if (LA132_0 == COMMA) : alt132 = 1 if alt132 == 1: # sdl92.g:757:32: ',' expression pass char_literal419=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_actual_parameters8714) if self._state.backtracking == 0: stream_COMMA.add(char_literal419) self._state.following.append(self.FOLLOW_expression_in_actual_parameters8716) expression420 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression420.tree) else: break #loop132 char_literal421=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_actual_parameters8720) if self._state.backtracking == 0: stream_R_PAREN.add(char_literal421) # AST Rewrite # elements: expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 758:9: -> ^( PARAMS ( expression )+ ) # sdl92.g:758:16: ^( PARAMS ( expression )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(PARAMS, "PARAMS"), root_1) # sdl92.g:758:25: ( expression )+ if not (stream_expression.hasNext()): raise RewriteEarlyExitException() while stream_expression.hasNext(): self._adaptor.addChild(root_1, stream_expression.nextTree()) stream_expression.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "actual_parameters" class task_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.task_return, self).__init__() self.tree = None # $ANTLR start "task" # sdl92.g:761:1: task : ( cif )? ( hyperlink )? TASK ( task_body )? end -> ^( TASK ( cif )? ( hyperlink )? ( end )? ( task_body )? ) ; def task(self, ): retval = self.task_return() retval.start = self.input.LT(1) root_0 = None TASK424 = None cif422 = None hyperlink423 = None task_body425 = None end426 = None TASK424_tree = None stream_TASK = RewriteRuleTokenStream(self._adaptor, "token TASK") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_task_body = RewriteRuleSubtreeStream(self._adaptor, "rule task_body") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:762:9: ( ( cif )? ( hyperlink )? TASK ( task_body )? end -> ^( TASK ( cif )? ( hyperlink )? ( end )? ( task_body )? ) ) # sdl92.g:762:17: ( cif )? ( hyperlink )? TASK ( task_body )? end pass # sdl92.g:762:17: ( cif )? alt133 = 2 LA133_0 = self.input.LA(1) if (LA133_0 == 218) : LA133_1 = self.input.LA(2) if (LA133_1 == ANSWER or LA133_1 == COMMENT or LA133_1 == CONNECT or LA133_1 == DECISION or LA133_1 == INPUT or (JOIN <= LA133_1 <= LABEL) or LA133_1 == NEXTSTATE or LA133_1 == OUTPUT or (PROCEDURE <= LA133_1 <= PROCEDURE_CALL) or (PROCESS <= LA133_1 <= PROVIDED) or LA133_1 == RETURN or LA133_1 == STATE or LA133_1 == STOP or LA133_1 == TASK or LA133_1 == TEXT or LA133_1 == START) : alt133 = 1 if alt133 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_task8764) cif422 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif422.tree) # sdl92.g:763:17: ( hyperlink )? alt134 = 2 LA134_0 = self.input.LA(1) if (LA134_0 == 218) : alt134 = 1 if alt134 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_task8783) hyperlink423 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink423.tree) TASK424=self.match(self.input, TASK, self.FOLLOW_TASK_in_task8802) if self._state.backtracking == 0: stream_TASK.add(TASK424) # sdl92.g:764:22: ( task_body )? alt135 = 2 LA135_0 = self.input.LA(1) if (LA135_0 == FOR or LA135_0 == STRING or LA135_0 == ID) : alt135 = 1 if alt135 == 1: # sdl92.g:0:0: task_body pass self._state.following.append(self.FOLLOW_task_body_in_task8804) task_body425 = self.task_body() self._state.following.pop() if self._state.backtracking == 0: stream_task_body.add(task_body425.tree) self._state.following.append(self.FOLLOW_end_in_task8807) end426 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end426.tree) # AST Rewrite # elements: cif, TASK, hyperlink, end, task_body # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 765:9: -> ^( TASK ( cif )? ( hyperlink )? ( end )? ( task_body )? ) # sdl92.g:765:17: ^( TASK ( cif )? ( hyperlink )? ( end )? ( task_body )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_TASK.nextNode(), root_1) # sdl92.g:765:24: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:765:29: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); # sdl92.g:765:40: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); # sdl92.g:765:45: ( task_body )? if stream_task_body.hasNext(): self._adaptor.addChild(root_1, stream_task_body.nextTree()) stream_task_body.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "task" class task_body_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.task_body_return, self).__init__() self.tree = None # $ANTLR start "task_body" # sdl92.g:768:1: task_body : ( ( assignement_statement ( ',' assignement_statement )* ) -> ^( TASK_BODY ( assignement_statement )+ ) | ( informal_text ( ',' informal_text )* ) -> ^( TASK_BODY ( informal_text )+ ) | ( forloop ( ',' forloop )* ) -> ^( TASK_BODY ( forloop )+ ) ); def task_body(self, ): retval = self.task_body_return() retval.start = self.input.LT(1) root_0 = None char_literal428 = None char_literal431 = None char_literal434 = None assignement_statement427 = None assignement_statement429 = None informal_text430 = None informal_text432 = None forloop433 = None forloop435 = None char_literal428_tree = None char_literal431_tree = None char_literal434_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_informal_text = RewriteRuleSubtreeStream(self._adaptor, "rule informal_text") stream_assignement_statement = RewriteRuleSubtreeStream(self._adaptor, "rule assignement_statement") stream_forloop = RewriteRuleSubtreeStream(self._adaptor, "rule forloop") try: try: # sdl92.g:769:9: ( ( assignement_statement ( ',' assignement_statement )* ) -> ^( TASK_BODY ( assignement_statement )+ ) | ( informal_text ( ',' informal_text )* ) -> ^( TASK_BODY ( informal_text )+ ) | ( forloop ( ',' forloop )* ) -> ^( TASK_BODY ( forloop )+ ) ) alt139 = 3 LA139 = self.input.LA(1) if LA139 == ID: alt139 = 1 elif LA139 == STRING: alt139 = 2 elif LA139 == FOR: alt139 = 3 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 139, 0, self.input) raise nvae if alt139 == 1: # sdl92.g:769:17: ( assignement_statement ( ',' assignement_statement )* ) pass # sdl92.g:769:17: ( assignement_statement ( ',' assignement_statement )* ) # sdl92.g:769:18: assignement_statement ( ',' assignement_statement )* pass self._state.following.append(self.FOLLOW_assignement_statement_in_task_body8862) assignement_statement427 = self.assignement_statement() self._state.following.pop() if self._state.backtracking == 0: stream_assignement_statement.add(assignement_statement427.tree) # sdl92.g:769:40: ( ',' assignement_statement )* while True: #loop136 alt136 = 2 LA136_0 = self.input.LA(1) if (LA136_0 == COMMA) : alt136 = 1 if alt136 == 1: # sdl92.g:769:41: ',' assignement_statement pass char_literal428=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_task_body8865) if self._state.backtracking == 0: stream_COMMA.add(char_literal428) self._state.following.append(self.FOLLOW_assignement_statement_in_task_body8867) assignement_statement429 = self.assignement_statement() self._state.following.pop() if self._state.backtracking == 0: stream_assignement_statement.add(assignement_statement429.tree) else: break #loop136 # AST Rewrite # elements: assignement_statement # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 770:9: -> ^( TASK_BODY ( assignement_statement )+ ) # sdl92.g:770:17: ^( TASK_BODY ( assignement_statement )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(TASK_BODY, "TASK_BODY"), root_1) # sdl92.g:770:29: ( assignement_statement )+ if not (stream_assignement_statement.hasNext()): raise RewriteEarlyExitException() while stream_assignement_statement.hasNext(): self._adaptor.addChild(root_1, stream_assignement_statement.nextTree()) stream_assignement_statement.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt139 == 2: # sdl92.g:771:19: ( informal_text ( ',' informal_text )* ) pass # sdl92.g:771:19: ( informal_text ( ',' informal_text )* ) # sdl92.g:771:20: informal_text ( ',' informal_text )* pass self._state.following.append(self.FOLLOW_informal_text_in_task_body8913) informal_text430 = self.informal_text() self._state.following.pop() if self._state.backtracking == 0: stream_informal_text.add(informal_text430.tree) # sdl92.g:771:34: ( ',' informal_text )* while True: #loop137 alt137 = 2 LA137_0 = self.input.LA(1) if (LA137_0 == COMMA) : alt137 = 1 if alt137 == 1: # sdl92.g:771:35: ',' informal_text pass char_literal431=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_task_body8916) if self._state.backtracking == 0: stream_COMMA.add(char_literal431) self._state.following.append(self.FOLLOW_informal_text_in_task_body8918) informal_text432 = self.informal_text() self._state.following.pop() if self._state.backtracking == 0: stream_informal_text.add(informal_text432.tree) else: break #loop137 # AST Rewrite # elements: informal_text # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 772:9: -> ^( TASK_BODY ( informal_text )+ ) # sdl92.g:772:17: ^( TASK_BODY ( informal_text )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(TASK_BODY, "TASK_BODY"), root_1) # sdl92.g:772:29: ( informal_text )+ if not (stream_informal_text.hasNext()): raise RewriteEarlyExitException() while stream_informal_text.hasNext(): self._adaptor.addChild(root_1, stream_informal_text.nextTree()) stream_informal_text.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt139 == 3: # sdl92.g:773:19: ( forloop ( ',' forloop )* ) pass # sdl92.g:773:19: ( forloop ( ',' forloop )* ) # sdl92.g:773:20: forloop ( ',' forloop )* pass self._state.following.append(self.FOLLOW_forloop_in_task_body8964) forloop433 = self.forloop() self._state.following.pop() if self._state.backtracking == 0: stream_forloop.add(forloop433.tree) # sdl92.g:773:28: ( ',' forloop )* while True: #loop138 alt138 = 2 LA138_0 = self.input.LA(1) if (LA138_0 == COMMA) : alt138 = 1 if alt138 == 1: # sdl92.g:773:29: ',' forloop pass char_literal434=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_task_body8967) if self._state.backtracking == 0: stream_COMMA.add(char_literal434) self._state.following.append(self.FOLLOW_forloop_in_task_body8969) forloop435 = self.forloop() self._state.following.pop() if self._state.backtracking == 0: stream_forloop.add(forloop435.tree) else: break #loop138 # AST Rewrite # elements: forloop # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 774:9: -> ^( TASK_BODY ( forloop )+ ) # sdl92.g:774:17: ^( TASK_BODY ( forloop )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(TASK_BODY, "TASK_BODY"), root_1) # sdl92.g:774:29: ( forloop )+ if not (stream_forloop.hasNext()): raise RewriteEarlyExitException() while stream_forloop.hasNext(): self._adaptor.addChild(root_1, stream_forloop.nextTree()) stream_forloop.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "task_body" class forloop_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.forloop_return, self).__init__() self.tree = None # $ANTLR start "forloop" # sdl92.g:778:1: forloop : FOR variable_id IN ( range | variable ) ':' ( transition )? ENDFOR -> ^( FOR variable_id ( variable )? ( range )? ( transition )? ) ; def forloop(self, ): retval = self.forloop_return() retval.start = self.input.LT(1) root_0 = None FOR436 = None IN438 = None char_literal441 = None ENDFOR443 = None variable_id437 = None range439 = None variable440 = None transition442 = None FOR436_tree = None IN438_tree = None char_literal441_tree = None ENDFOR443_tree = None stream_ENDFOR = RewriteRuleTokenStream(self._adaptor, "token ENDFOR") stream_FOR = RewriteRuleTokenStream(self._adaptor, "token FOR") stream_IN = RewriteRuleTokenStream(self._adaptor, "token IN") stream_213 = RewriteRuleTokenStream(self._adaptor, "token 213") stream_range = RewriteRuleSubtreeStream(self._adaptor, "rule range") stream_transition = RewriteRuleSubtreeStream(self._adaptor, "rule transition") stream_variable_id = RewriteRuleSubtreeStream(self._adaptor, "rule variable_id") stream_variable = RewriteRuleSubtreeStream(self._adaptor, "rule variable") try: try: # sdl92.g:779:9: ( FOR variable_id IN ( range | variable ) ':' ( transition )? ENDFOR -> ^( FOR variable_id ( variable )? ( range )? ( transition )? ) ) # sdl92.g:779:17: FOR variable_id IN ( range | variable ) ':' ( transition )? ENDFOR pass FOR436=self.match(self.input, FOR, self.FOLLOW_FOR_in_forloop9026) if self._state.backtracking == 0: stream_FOR.add(FOR436) self._state.following.append(self.FOLLOW_variable_id_in_forloop9028) variable_id437 = self.variable_id() self._state.following.pop() if self._state.backtracking == 0: stream_variable_id.add(variable_id437.tree) IN438=self.match(self.input, IN, self.FOLLOW_IN_in_forloop9030) if self._state.backtracking == 0: stream_IN.add(IN438) # sdl92.g:779:36: ( range | variable ) alt140 = 2 LA140_0 = self.input.LA(1) if (LA140_0 == RANGE) : alt140 = 1 elif (LA140_0 == ID) : alt140 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 140, 0, self.input) raise nvae if alt140 == 1: # sdl92.g:779:37: range pass self._state.following.append(self.FOLLOW_range_in_forloop9033) range439 = self.range() self._state.following.pop() if self._state.backtracking == 0: stream_range.add(range439.tree) elif alt140 == 2: # sdl92.g:779:45: variable pass self._state.following.append(self.FOLLOW_variable_in_forloop9037) variable440 = self.variable() self._state.following.pop() if self._state.backtracking == 0: stream_variable.add(variable440.tree) char_literal441=self.match(self.input, 213, self.FOLLOW_213_in_forloop9040) if self._state.backtracking == 0: stream_213.add(char_literal441) # sdl92.g:780:17: ( transition )? alt141 = 2 LA141_0 = self.input.LA(1) if (LA141_0 == ALTERNATIVE or LA141_0 == DECISION or LA141_0 == EXPORT or LA141_0 == FOR or LA141_0 == JOIN or LA141_0 == NEXTSTATE or LA141_0 == OUTPUT or (RESET <= LA141_0 <= RETURN) or LA141_0 == SET or (STOP <= LA141_0 <= STRING) or LA141_0 == TASK or LA141_0 == CALL or LA141_0 == CREATE or LA141_0 == ID or LA141_0 == 218) : alt141 = 1 if alt141 == 1: # sdl92.g:0:0: transition pass self._state.following.append(self.FOLLOW_transition_in_forloop9058) transition442 = self.transition() self._state.following.pop() if self._state.backtracking == 0: stream_transition.add(transition442.tree) ENDFOR443=self.match(self.input, ENDFOR, self.FOLLOW_ENDFOR_in_forloop9077) if self._state.backtracking == 0: stream_ENDFOR.add(ENDFOR443) # AST Rewrite # elements: variable, FOR, range, transition, variable_id # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 782:9: -> ^( FOR variable_id ( variable )? ( range )? ( transition )? ) # sdl92.g:782:17: ^( FOR variable_id ( variable )? ( range )? ( transition )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_FOR.nextNode(), root_1) self._adaptor.addChild(root_1, stream_variable_id.nextTree()) # sdl92.g:782:35: ( variable )? if stream_variable.hasNext(): self._adaptor.addChild(root_1, stream_variable.nextTree()) stream_variable.reset(); # sdl92.g:782:45: ( range )? if stream_range.hasNext(): self._adaptor.addChild(root_1, stream_range.nextTree()) stream_range.reset(); # sdl92.g:782:52: ( transition )? if stream_transition.hasNext(): self._adaptor.addChild(root_1, stream_transition.nextTree()) stream_transition.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "forloop" class range_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.range_return, self).__init__() self.tree = None # $ANTLR start "range" # sdl92.g:784:1: range : RANGE L_PAREN a= ground_expression ( COMMA b= ground_expression )? ( COMMA step= INT )? R_PAREN -> ^( RANGE $a ( $b)? ( $step)? ) ; def range(self, ): retval = self.range_return() retval.start = self.input.LT(1) root_0 = None step = None RANGE444 = None L_PAREN445 = None COMMA446 = None COMMA447 = None R_PAREN448 = None a = None b = None step_tree = None RANGE444_tree = None L_PAREN445_tree = None COMMA446_tree = None COMMA447_tree = None R_PAREN448_tree = None stream_RANGE = RewriteRuleTokenStream(self._adaptor, "token RANGE") stream_INT = RewriteRuleTokenStream(self._adaptor, "token INT") stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_ground_expression = RewriteRuleSubtreeStream(self._adaptor, "rule ground_expression") try: try: # sdl92.g:785:9: ( RANGE L_PAREN a= ground_expression ( COMMA b= ground_expression )? ( COMMA step= INT )? R_PAREN -> ^( RANGE $a ( $b)? ( $step)? ) ) # sdl92.g:785:17: RANGE L_PAREN a= ground_expression ( COMMA b= ground_expression )? ( COMMA step= INT )? R_PAREN pass RANGE444=self.match(self.input, RANGE, self.FOLLOW_RANGE_in_range9129) if self._state.backtracking == 0: stream_RANGE.add(RANGE444) L_PAREN445=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_range9147) if self._state.backtracking == 0: stream_L_PAREN.add(L_PAREN445) self._state.following.append(self.FOLLOW_ground_expression_in_range9151) a = self.ground_expression() self._state.following.pop() if self._state.backtracking == 0: stream_ground_expression.add(a.tree) # sdl92.g:787:17: ( COMMA b= ground_expression )? alt142 = 2 LA142_0 = self.input.LA(1) if (LA142_0 == COMMA) : LA142_1 = self.input.LA(2) if (LA142_1 == INT) : LA142_3 = self.input.LA(3) if (self.synpred185_sdl92()) : alt142 = 1 elif (LA142_1 == BITSTR or LA142_1 == FLOAT or LA142_1 == IF or LA142_1 == OCTSTR or LA142_1 == STRING or LA142_1 == L_PAREN or LA142_1 == ID or LA142_1 == DASH or (NOT <= LA142_1 <= MINUS_INFINITY) or LA142_1 == L_BRACKET) : alt142 = 1 if alt142 == 1: # sdl92.g:787:18: COMMA b= ground_expression pass COMMA446=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_range9170) if self._state.backtracking == 0: stream_COMMA.add(COMMA446) self._state.following.append(self.FOLLOW_ground_expression_in_range9174) b = self.ground_expression() self._state.following.pop() if self._state.backtracking == 0: stream_ground_expression.add(b.tree) # sdl92.g:787:46: ( COMMA step= INT )? alt143 = 2 LA143_0 = self.input.LA(1) if (LA143_0 == COMMA) : alt143 = 1 if alt143 == 1: # sdl92.g:787:47: COMMA step= INT pass COMMA447=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_range9179) if self._state.backtracking == 0: stream_COMMA.add(COMMA447) step=self.match(self.input, INT, self.FOLLOW_INT_in_range9183) if self._state.backtracking == 0: stream_INT.add(step) R_PAREN448=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_range9203) if self._state.backtracking == 0: stream_R_PAREN.add(R_PAREN448) # AST Rewrite # elements: step, b, a, RANGE # token labels: step # rule labels: retval, b, a # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 stream_step = RewriteRuleTokenStream(self._adaptor, "token step", step) if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) if b is not None: stream_b = RewriteRuleSubtreeStream(self._adaptor, "rule b", b.tree) else: stream_b = RewriteRuleSubtreeStream(self._adaptor, "token b", None) if a is not None: stream_a = RewriteRuleSubtreeStream(self._adaptor, "rule a", a.tree) else: stream_a = RewriteRuleSubtreeStream(self._adaptor, "token a", None) root_0 = self._adaptor.nil() # 789:9: -> ^( RANGE $a ( $b)? ( $step)? ) # sdl92.g:789:17: ^( RANGE $a ( $b)? ( $step)? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_RANGE.nextNode(), root_1) self._adaptor.addChild(root_1, stream_a.nextTree()) # sdl92.g:789:28: ( $b)? if stream_b.hasNext(): self._adaptor.addChild(root_1, stream_b.nextTree()) stream_b.reset(); # sdl92.g:789:32: ( $step)? if stream_step.hasNext(): self._adaptor.addChild(root_1, stream_step.nextNode()) stream_step.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "range" class assignement_statement_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.assignement_statement_return, self).__init__() self.tree = None # $ANTLR start "assignement_statement" # sdl92.g:791:1: assignement_statement : variable ':=' expression -> ^( ASSIGN variable expression ) ; def assignement_statement(self, ): retval = self.assignement_statement_return() retval.start = self.input.LT(1) root_0 = None string_literal450 = None variable449 = None expression451 = None string_literal450_tree = None stream_ASSIG_OP = RewriteRuleTokenStream(self._adaptor, "token ASSIG_OP") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") stream_variable = RewriteRuleSubtreeStream(self._adaptor, "rule variable") try: try: # sdl92.g:792:9: ( variable ':=' expression -> ^( ASSIGN variable expression ) ) # sdl92.g:792:17: variable ':=' expression pass self._state.following.append(self.FOLLOW_variable_in_assignement_statement9255) variable449 = self.variable() self._state.following.pop() if self._state.backtracking == 0: stream_variable.add(variable449.tree) string_literal450=self.match(self.input, ASSIG_OP, self.FOLLOW_ASSIG_OP_in_assignement_statement9257) if self._state.backtracking == 0: stream_ASSIG_OP.add(string_literal450) self._state.following.append(self.FOLLOW_expression_in_assignement_statement9259) expression451 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression451.tree) # AST Rewrite # elements: variable, expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 793:9: -> ^( ASSIGN variable expression ) # sdl92.g:793:17: ^( ASSIGN variable expression ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(ASSIGN, "ASSIGN"), root_1) self._adaptor.addChild(root_1, stream_variable.nextTree()) self._adaptor.addChild(root_1, stream_expression.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "assignement_statement" class variable_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.variable_return, self).__init__() self.tree = None # $ANTLR start "variable" # sdl92.g:797:1: variable : ( postfix_expression | ID -> ^( VARIABLE ID ) ); def variable(self, ): retval = self.variable_return() retval.start = self.input.LT(1) root_0 = None ID453 = None postfix_expression452 = None ID453_tree = None stream_ID = RewriteRuleTokenStream(self._adaptor, "token ID") try: try: # sdl92.g:798:9: ( postfix_expression | ID -> ^( VARIABLE ID ) ) alt144 = 2 LA144_0 = self.input.LA(1) if (LA144_0 == ID) : LA144_1 = self.input.LA(2) if (LA144_1 == L_PAREN or LA144_1 == 214) : alt144 = 1 elif (LA144_1 == ASSIG_OP or LA144_1 == 213) : alt144 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 144, 1, self.input) raise nvae else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 144, 0, self.input) raise nvae if alt144 == 1: # sdl92.g:798:17: postfix_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_postfix_expression_in_variable9306) postfix_expression452 = self.postfix_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, postfix_expression452.tree) elif alt144 == 2: # sdl92.g:799:17: ID pass ID453=self.match(self.input, ID, self.FOLLOW_ID_in_variable9324) if self._state.backtracking == 0: stream_ID.add(ID453) # AST Rewrite # elements: ID # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 799:40: -> ^( VARIABLE ID ) # sdl92.g:799:44: ^( VARIABLE ID ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(VARIABLE, "VARIABLE"), root_1) self._adaptor.addChild(root_1, stream_ID.nextNode()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "variable" class field_selection_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.field_selection_return, self).__init__() self.tree = None # $ANTLR start "field_selection" # sdl92.g:802:1: field_selection : ( ( '!' | '.' ) field_name ) ; def field_selection(self, ): retval = self.field_selection_return() retval.start = self.input.LT(1) root_0 = None set454 = None field_name455 = None set454_tree = None try: try: # sdl92.g:803:9: ( ( ( '!' | '.' ) field_name ) ) # sdl92.g:803:17: ( ( '!' | '.' ) field_name ) pass root_0 = self._adaptor.nil() # sdl92.g:803:17: ( ( '!' | '.' ) field_name ) # sdl92.g:803:18: ( '!' | '.' ) field_name pass set454 = self.input.LT(1) if self.input.LA(1) == DOT or self.input.LA(1) == 214: self.input.consume() if self._state.backtracking == 0: self._adaptor.addChild(root_0, self._adaptor.createWithPayload(set454)) self._state.errorRecovery = False else: if self._state.backtracking > 0: raise BacktrackingFailed mse = MismatchedSetException(None, self.input) raise mse self._state.following.append(self.FOLLOW_field_name_in_field_selection9383) field_name455 = self.field_name() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, field_name455.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "field_selection" class expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.expression_return, self).__init__() self.tree = None # $ANTLR start "expression" # sdl92.g:806:1: expression : binary_expression ; def expression(self, ): retval = self.expression_return() retval.start = self.input.LT(1) root_0 = None binary_expression456 = None try: try: # sdl92.g:807:9: ( binary_expression ) # sdl92.g:807:17: binary_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_binary_expression_in_expression9407) binary_expression456 = self.binary_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression456.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "expression" class binary_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.binary_expression_return, self).__init__() self.tree = None # $ANTLR start "binary_expression" # sdl92.g:810:1: binary_expression : binary_expression_0 ( IMPLIES binary_expression_0 )* ; def binary_expression(self, ): retval = self.binary_expression_return() retval.start = self.input.LT(1) root_0 = None IMPLIES458 = None binary_expression_0457 = None binary_expression_0459 = None IMPLIES458_tree = None try: try: # sdl92.g:811:9: ( binary_expression_0 ( IMPLIES binary_expression_0 )* ) # sdl92.g:811:17: binary_expression_0 ( IMPLIES binary_expression_0 )* pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_binary_expression_0_in_binary_expression9430) binary_expression_0457 = self.binary_expression_0() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression_0457.tree) # sdl92.g:811:37: ( IMPLIES binary_expression_0 )* while True: #loop145 alt145 = 2 LA145_0 = self.input.LA(1) if (LA145_0 == IMPLIES) : LA145_2 = self.input.LA(2) if (self.synpred189_sdl92()) : alt145 = 1 if alt145 == 1: # sdl92.g:811:39: IMPLIES binary_expression_0 pass IMPLIES458=self.match(self.input, IMPLIES, self.FOLLOW_IMPLIES_in_binary_expression9434) if self._state.backtracking == 0: IMPLIES458_tree = self._adaptor.createWithPayload(IMPLIES458) root_0 = self._adaptor.becomeRoot(IMPLIES458_tree, root_0) self._state.following.append(self.FOLLOW_binary_expression_0_in_binary_expression9437) binary_expression_0459 = self.binary_expression_0() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression_0459.tree) else: break #loop145 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "binary_expression" class binary_expression_0_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.binary_expression_0_return, self).__init__() self.tree = None # $ANTLR start "binary_expression_0" # sdl92.g:812:1: binary_expression_0 : binary_expression_1 ( ( ( OR ( ELSE )? ) | XOR ) binary_expression_1 )* ; def binary_expression_0(self, ): retval = self.binary_expression_0_return() retval.start = self.input.LT(1) root_0 = None OR461 = None ELSE462 = None XOR463 = None binary_expression_1460 = None binary_expression_1464 = None OR461_tree = None ELSE462_tree = None XOR463_tree = None try: try: # sdl92.g:813:9: ( binary_expression_1 ( ( ( OR ( ELSE )? ) | XOR ) binary_expression_1 )* ) # sdl92.g:813:17: binary_expression_1 ( ( ( OR ( ELSE )? ) | XOR ) binary_expression_1 )* pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_binary_expression_1_in_binary_expression_09460) binary_expression_1460 = self.binary_expression_1() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression_1460.tree) # sdl92.g:813:37: ( ( ( OR ( ELSE )? ) | XOR ) binary_expression_1 )* while True: #loop148 alt148 = 2 LA148_0 = self.input.LA(1) if (LA148_0 == OR) : LA148_2 = self.input.LA(2) if (self.synpred192_sdl92()) : alt148 = 1 elif (LA148_0 == XOR) : LA148_3 = self.input.LA(2) if (self.synpred192_sdl92()) : alt148 = 1 if alt148 == 1: # sdl92.g:813:38: ( ( OR ( ELSE )? ) | XOR ) binary_expression_1 pass # sdl92.g:813:38: ( ( OR ( ELSE )? ) | XOR ) alt147 = 2 LA147_0 = self.input.LA(1) if (LA147_0 == OR) : alt147 = 1 elif (LA147_0 == XOR) : alt147 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 147, 0, self.input) raise nvae if alt147 == 1: # sdl92.g:813:40: ( OR ( ELSE )? ) pass # sdl92.g:813:40: ( OR ( ELSE )? ) # sdl92.g:813:41: OR ( ELSE )? pass OR461=self.match(self.input, OR, self.FOLLOW_OR_in_binary_expression_09466) if self._state.backtracking == 0: OR461_tree = self._adaptor.createWithPayload(OR461) root_0 = self._adaptor.becomeRoot(OR461_tree, root_0) # sdl92.g:813:45: ( ELSE )? alt146 = 2 LA146_0 = self.input.LA(1) if (LA146_0 == ELSE) : alt146 = 1 if alt146 == 1: # sdl92.g:0:0: ELSE pass ELSE462=self.match(self.input, ELSE, self.FOLLOW_ELSE_in_binary_expression_09469) if self._state.backtracking == 0: ELSE462_tree = self._adaptor.createWithPayload(ELSE462) self._adaptor.addChild(root_0, ELSE462_tree) elif alt147 == 2: # sdl92.g:813:54: XOR pass XOR463=self.match(self.input, XOR, self.FOLLOW_XOR_in_binary_expression_09475) if self._state.backtracking == 0: XOR463_tree = self._adaptor.createWithPayload(XOR463) root_0 = self._adaptor.becomeRoot(XOR463_tree, root_0) self._state.following.append(self.FOLLOW_binary_expression_1_in_binary_expression_09480) binary_expression_1464 = self.binary_expression_1() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression_1464.tree) else: break #loop148 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "binary_expression_0" class binary_expression_1_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.binary_expression_1_return, self).__init__() self.tree = None # $ANTLR start "binary_expression_1" # sdl92.g:814:1: binary_expression_1 : binary_expression_2 ( AND ( THEN )? binary_expression_2 )* ; def binary_expression_1(self, ): retval = self.binary_expression_1_return() retval.start = self.input.LT(1) root_0 = None AND466 = None THEN467 = None binary_expression_2465 = None binary_expression_2468 = None AND466_tree = None THEN467_tree = None try: try: # sdl92.g:815:9: ( binary_expression_2 ( AND ( THEN )? binary_expression_2 )* ) # sdl92.g:815:17: binary_expression_2 ( AND ( THEN )? binary_expression_2 )* pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_binary_expression_2_in_binary_expression_19503) binary_expression_2465 = self.binary_expression_2() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression_2465.tree) # sdl92.g:815:37: ( AND ( THEN )? binary_expression_2 )* while True: #loop150 alt150 = 2 LA150_0 = self.input.LA(1) if (LA150_0 == AND) : LA150_2 = self.input.LA(2) if (self.synpred194_sdl92()) : alt150 = 1 if alt150 == 1: # sdl92.g:815:39: AND ( THEN )? binary_expression_2 pass AND466=self.match(self.input, AND, self.FOLLOW_AND_in_binary_expression_19507) if self._state.backtracking == 0: AND466_tree = self._adaptor.createWithPayload(AND466) root_0 = self._adaptor.becomeRoot(AND466_tree, root_0) # sdl92.g:815:44: ( THEN )? alt149 = 2 LA149_0 = self.input.LA(1) if (LA149_0 == THEN) : alt149 = 1 if alt149 == 1: # sdl92.g:0:0: THEN pass THEN467=self.match(self.input, THEN, self.FOLLOW_THEN_in_binary_expression_19510) if self._state.backtracking == 0: THEN467_tree = self._adaptor.createWithPayload(THEN467) self._adaptor.addChild(root_0, THEN467_tree) self._state.following.append(self.FOLLOW_binary_expression_2_in_binary_expression_19513) binary_expression_2468 = self.binary_expression_2() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression_2468.tree) else: break #loop150 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "binary_expression_1" class binary_expression_2_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.binary_expression_2_return, self).__init__() self.tree = None # $ANTLR start "binary_expression_2" # sdl92.g:816:1: binary_expression_2 : binary_expression_3 ( ( EQ | NEQ | GT | GE | LT | LE | IN ) binary_expression_3 )* ; def binary_expression_2(self, ): retval = self.binary_expression_2_return() retval.start = self.input.LT(1) root_0 = None EQ470 = None NEQ471 = None GT472 = None GE473 = None LT474 = None LE475 = None IN476 = None binary_expression_3469 = None binary_expression_3477 = None EQ470_tree = None NEQ471_tree = None GT472_tree = None GE473_tree = None LT474_tree = None LE475_tree = None IN476_tree = None try: try: # sdl92.g:817:9: ( binary_expression_3 ( ( EQ | NEQ | GT | GE | LT | LE | IN ) binary_expression_3 )* ) # sdl92.g:817:17: binary_expression_3 ( ( EQ | NEQ | GT | GE | LT | LE | IN ) binary_expression_3 )* pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_binary_expression_3_in_binary_expression_29536) binary_expression_3469 = self.binary_expression_3() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression_3469.tree) # sdl92.g:817:37: ( ( EQ | NEQ | GT | GE | LT | LE | IN ) binary_expression_3 )* while True: #loop152 alt152 = 2 alt152 = self.dfa152.predict(self.input) if alt152 == 1: # sdl92.g:817:38: ( EQ | NEQ | GT | GE | LT | LE | IN ) binary_expression_3 pass # sdl92.g:817:38: ( EQ | NEQ | GT | GE | LT | LE | IN ) alt151 = 7 LA151 = self.input.LA(1) if LA151 == EQ: alt151 = 1 elif LA151 == NEQ: alt151 = 2 elif LA151 == GT: alt151 = 3 elif LA151 == GE: alt151 = 4 elif LA151 == LT: alt151 = 5 elif LA151 == LE: alt151 = 6 elif LA151 == IN: alt151 = 7 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 151, 0, self.input) raise nvae if alt151 == 1: # sdl92.g:817:40: EQ pass EQ470=self.match(self.input, EQ, self.FOLLOW_EQ_in_binary_expression_29541) if self._state.backtracking == 0: EQ470_tree = self._adaptor.createWithPayload(EQ470) root_0 = self._adaptor.becomeRoot(EQ470_tree, root_0) elif alt151 == 2: # sdl92.g:817:46: NEQ pass NEQ471=self.match(self.input, NEQ, self.FOLLOW_NEQ_in_binary_expression_29546) if self._state.backtracking == 0: NEQ471_tree = self._adaptor.createWithPayload(NEQ471) root_0 = self._adaptor.becomeRoot(NEQ471_tree, root_0) elif alt151 == 3: # sdl92.g:817:53: GT pass GT472=self.match(self.input, GT, self.FOLLOW_GT_in_binary_expression_29551) if self._state.backtracking == 0: GT472_tree = self._adaptor.createWithPayload(GT472) root_0 = self._adaptor.becomeRoot(GT472_tree, root_0) elif alt151 == 4: # sdl92.g:817:59: GE pass GE473=self.match(self.input, GE, self.FOLLOW_GE_in_binary_expression_29556) if self._state.backtracking == 0: GE473_tree = self._adaptor.createWithPayload(GE473) root_0 = self._adaptor.becomeRoot(GE473_tree, root_0) elif alt151 == 5: # sdl92.g:817:65: LT pass LT474=self.match(self.input, LT, self.FOLLOW_LT_in_binary_expression_29561) if self._state.backtracking == 0: LT474_tree = self._adaptor.createWithPayload(LT474) root_0 = self._adaptor.becomeRoot(LT474_tree, root_0) elif alt151 == 6: # sdl92.g:817:71: LE pass LE475=self.match(self.input, LE, self.FOLLOW_LE_in_binary_expression_29566) if self._state.backtracking == 0: LE475_tree = self._adaptor.createWithPayload(LE475) root_0 = self._adaptor.becomeRoot(LE475_tree, root_0) elif alt151 == 7: # sdl92.g:817:77: IN pass IN476=self.match(self.input, IN, self.FOLLOW_IN_in_binary_expression_29571) if self._state.backtracking == 0: IN476_tree = self._adaptor.createWithPayload(IN476) root_0 = self._adaptor.becomeRoot(IN476_tree, root_0) self._state.following.append(self.FOLLOW_binary_expression_3_in_binary_expression_29576) binary_expression_3477 = self.binary_expression_3() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression_3477.tree) else: break #loop152 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "binary_expression_2" class binary_expression_3_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.binary_expression_3_return, self).__init__() self.tree = None # $ANTLR start "binary_expression_3" # sdl92.g:818:1: binary_expression_3 : binary_expression_4 ( ( PLUS | DASH | APPEND ) binary_expression_4 )* ; def binary_expression_3(self, ): retval = self.binary_expression_3_return() retval.start = self.input.LT(1) root_0 = None PLUS479 = None DASH480 = None APPEND481 = None binary_expression_4478 = None binary_expression_4482 = None PLUS479_tree = None DASH480_tree = None APPEND481_tree = None try: try: # sdl92.g:819:9: ( binary_expression_4 ( ( PLUS | DASH | APPEND ) binary_expression_4 )* ) # sdl92.g:819:17: binary_expression_4 ( ( PLUS | DASH | APPEND ) binary_expression_4 )* pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_binary_expression_4_in_binary_expression_39599) binary_expression_4478 = self.binary_expression_4() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression_4478.tree) # sdl92.g:819:37: ( ( PLUS | DASH | APPEND ) binary_expression_4 )* while True: #loop154 alt154 = 2 LA154 = self.input.LA(1) if LA154 == PLUS: LA154_2 = self.input.LA(2) if (self.synpred204_sdl92()) : alt154 = 1 elif LA154 == DASH: LA154_3 = self.input.LA(2) if (self.synpred204_sdl92()) : alt154 = 1 elif LA154 == APPEND: LA154_4 = self.input.LA(2) if (self.synpred204_sdl92()) : alt154 = 1 if alt154 == 1: # sdl92.g:819:38: ( PLUS | DASH | APPEND ) binary_expression_4 pass # sdl92.g:819:38: ( PLUS | DASH | APPEND ) alt153 = 3 LA153 = self.input.LA(1) if LA153 == PLUS: alt153 = 1 elif LA153 == DASH: alt153 = 2 elif LA153 == APPEND: alt153 = 3 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 153, 0, self.input) raise nvae if alt153 == 1: # sdl92.g:819:40: PLUS pass PLUS479=self.match(self.input, PLUS, self.FOLLOW_PLUS_in_binary_expression_39604) if self._state.backtracking == 0: PLUS479_tree = self._adaptor.createWithPayload(PLUS479) root_0 = self._adaptor.becomeRoot(PLUS479_tree, root_0) elif alt153 == 2: # sdl92.g:819:48: DASH pass DASH480=self.match(self.input, DASH, self.FOLLOW_DASH_in_binary_expression_39609) if self._state.backtracking == 0: DASH480_tree = self._adaptor.createWithPayload(DASH480) root_0 = self._adaptor.becomeRoot(DASH480_tree, root_0) elif alt153 == 3: # sdl92.g:819:56: APPEND pass APPEND481=self.match(self.input, APPEND, self.FOLLOW_APPEND_in_binary_expression_39614) if self._state.backtracking == 0: APPEND481_tree = self._adaptor.createWithPayload(APPEND481) root_0 = self._adaptor.becomeRoot(APPEND481_tree, root_0) self._state.following.append(self.FOLLOW_binary_expression_4_in_binary_expression_39619) binary_expression_4482 = self.binary_expression_4() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, binary_expression_4482.tree) else: break #loop154 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "binary_expression_3" class binary_expression_4_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.binary_expression_4_return, self).__init__() self.tree = None # $ANTLR start "binary_expression_4" # sdl92.g:820:1: binary_expression_4 : unary_expression ( ( ASTERISK | DIV | MOD | REM ) unary_expression )* ; def binary_expression_4(self, ): retval = self.binary_expression_4_return() retval.start = self.input.LT(1) root_0 = None ASTERISK484 = None DIV485 = None MOD486 = None REM487 = None unary_expression483 = None unary_expression488 = None ASTERISK484_tree = None DIV485_tree = None MOD486_tree = None REM487_tree = None try: try: # sdl92.g:821:9: ( unary_expression ( ( ASTERISK | DIV | MOD | REM ) unary_expression )* ) # sdl92.g:821:17: unary_expression ( ( ASTERISK | DIV | MOD | REM ) unary_expression )* pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_unary_expression_in_binary_expression_49642) unary_expression483 = self.unary_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, unary_expression483.tree) # sdl92.g:821:34: ( ( ASTERISK | DIV | MOD | REM ) unary_expression )* while True: #loop156 alt156 = 2 LA156 = self.input.LA(1) if LA156 == ASTERISK: LA156_2 = self.input.LA(2) if (self.synpred208_sdl92()) : alt156 = 1 elif LA156 == DIV: LA156_3 = self.input.LA(2) if (self.synpred208_sdl92()) : alt156 = 1 elif LA156 == MOD: LA156_4 = self.input.LA(2) if (self.synpred208_sdl92()) : alt156 = 1 elif LA156 == REM: LA156_5 = self.input.LA(2) if (self.synpred208_sdl92()) : alt156 = 1 if alt156 == 1: # sdl92.g:821:35: ( ASTERISK | DIV | MOD | REM ) unary_expression pass # sdl92.g:821:35: ( ASTERISK | DIV | MOD | REM ) alt155 = 4 LA155 = self.input.LA(1) if LA155 == ASTERISK: alt155 = 1 elif LA155 == DIV: alt155 = 2 elif LA155 == MOD: alt155 = 3 elif LA155 == REM: alt155 = 4 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 155, 0, self.input) raise nvae if alt155 == 1: # sdl92.g:821:37: ASTERISK pass ASTERISK484=self.match(self.input, ASTERISK, self.FOLLOW_ASTERISK_in_binary_expression_49647) if self._state.backtracking == 0: ASTERISK484_tree = self._adaptor.createWithPayload(ASTERISK484) root_0 = self._adaptor.becomeRoot(ASTERISK484_tree, root_0) elif alt155 == 2: # sdl92.g:821:49: DIV pass DIV485=self.match(self.input, DIV, self.FOLLOW_DIV_in_binary_expression_49652) if self._state.backtracking == 0: DIV485_tree = self._adaptor.createWithPayload(DIV485) root_0 = self._adaptor.becomeRoot(DIV485_tree, root_0) elif alt155 == 3: # sdl92.g:821:56: MOD pass MOD486=self.match(self.input, MOD, self.FOLLOW_MOD_in_binary_expression_49657) if self._state.backtracking == 0: MOD486_tree = self._adaptor.createWithPayload(MOD486) root_0 = self._adaptor.becomeRoot(MOD486_tree, root_0) elif alt155 == 4: # sdl92.g:821:63: REM pass REM487=self.match(self.input, REM, self.FOLLOW_REM_in_binary_expression_49662) if self._state.backtracking == 0: REM487_tree = self._adaptor.createWithPayload(REM487) root_0 = self._adaptor.becomeRoot(REM487_tree, root_0) self._state.following.append(self.FOLLOW_unary_expression_in_binary_expression_49667) unary_expression488 = self.unary_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, unary_expression488.tree) else: break #loop156 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "binary_expression_4" class unary_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.unary_expression_return, self).__init__() self.tree = None # $ANTLR start "unary_expression" # sdl92.g:824:1: unary_expression : ( postfix_expression | primary_expression | NOT unary_expression | DASH unary_expression -> ^( NEG unary_expression ) ); def unary_expression(self, ): retval = self.unary_expression_return() retval.start = self.input.LT(1) root_0 = None NOT491 = None DASH493 = None postfix_expression489 = None primary_expression490 = None unary_expression492 = None unary_expression494 = None NOT491_tree = None DASH493_tree = None stream_DASH = RewriteRuleTokenStream(self._adaptor, "token DASH") stream_unary_expression = RewriteRuleSubtreeStream(self._adaptor, "rule unary_expression") try: try: # sdl92.g:825:9: ( postfix_expression | primary_expression | NOT unary_expression | DASH unary_expression -> ^( NEG unary_expression ) ) alt157 = 4 alt157 = self.dfa157.predict(self.input) if alt157 == 1: # sdl92.g:825:17: postfix_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_postfix_expression_in_unary_expression9692) postfix_expression489 = self.postfix_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, postfix_expression489.tree) elif alt157 == 2: # sdl92.g:826:17: primary_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_primary_expression_in_unary_expression9710) primary_expression490 = self.primary_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, primary_expression490.tree) elif alt157 == 3: # sdl92.g:827:17: NOT unary_expression pass root_0 = self._adaptor.nil() NOT491=self.match(self.input, NOT, self.FOLLOW_NOT_in_unary_expression9728) if self._state.backtracking == 0: NOT491_tree = self._adaptor.createWithPayload(NOT491) root_0 = self._adaptor.becomeRoot(NOT491_tree, root_0) self._state.following.append(self.FOLLOW_unary_expression_in_unary_expression9731) unary_expression492 = self.unary_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, unary_expression492.tree) elif alt157 == 4: # sdl92.g:828:17: DASH unary_expression pass DASH493=self.match(self.input, DASH, self.FOLLOW_DASH_in_unary_expression9749) if self._state.backtracking == 0: stream_DASH.add(DASH493) self._state.following.append(self.FOLLOW_unary_expression_in_unary_expression9751) unary_expression494 = self.unary_expression() self._state.following.pop() if self._state.backtracking == 0: stream_unary_expression.add(unary_expression494.tree) # AST Rewrite # elements: unary_expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 828:39: -> ^( NEG unary_expression ) # sdl92.g:828:42: ^( NEG unary_expression ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(NEG, "NEG"), root_1) self._adaptor.addChild(root_1, stream_unary_expression.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "unary_expression" class postfix_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.postfix_expression_return, self).__init__() self.tree = None # $ANTLR start "postfix_expression" # sdl92.g:832:1: postfix_expression : ( ID -> ^( PRIMARY ^( VARIABLE ID ) ) ) ( '(' params= expression_list ')' -> ^( CALL $postfix_expression ^( PARAMS $params) ) | '!' field_name -> ^( SELECTOR $postfix_expression field_name ) )+ ; def postfix_expression(self, ): retval = self.postfix_expression_return() retval.start = self.input.LT(1) root_0 = None ID495 = None char_literal496 = None char_literal497 = None char_literal498 = None params = None field_name499 = None ID495_tree = None char_literal496_tree = None char_literal497_tree = None char_literal498_tree = None stream_214 = RewriteRuleTokenStream(self._adaptor, "token 214") stream_ID = RewriteRuleTokenStream(self._adaptor, "token ID") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_field_name = RewriteRuleSubtreeStream(self._adaptor, "rule field_name") stream_expression_list = RewriteRuleSubtreeStream(self._adaptor, "rule expression_list") try: try: # sdl92.g:833:9: ( ( ID -> ^( PRIMARY ^( VARIABLE ID ) ) ) ( '(' params= expression_list ')' -> ^( CALL $postfix_expression ^( PARAMS $params) ) | '!' field_name -> ^( SELECTOR $postfix_expression field_name ) )+ ) # sdl92.g:833:17: ( ID -> ^( PRIMARY ^( VARIABLE ID ) ) ) ( '(' params= expression_list ')' -> ^( CALL $postfix_expression ^( PARAMS $params) ) | '!' field_name -> ^( SELECTOR $postfix_expression field_name ) )+ pass # sdl92.g:833:17: ( ID -> ^( PRIMARY ^( VARIABLE ID ) ) ) # sdl92.g:833:18: ID pass ID495=self.match(self.input, ID, self.FOLLOW_ID_in_postfix_expression9792) if self._state.backtracking == 0: stream_ID.add(ID495) # AST Rewrite # elements: ID # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 833:21: -> ^( PRIMARY ^( VARIABLE ID ) ) # sdl92.g:833:24: ^( PRIMARY ^( VARIABLE ID ) ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(PRIMARY, "PRIMARY"), root_1) # sdl92.g:833:34: ^( VARIABLE ID ) root_2 = self._adaptor.nil() root_2 = self._adaptor.becomeRoot(self._adaptor.createFromType(VARIABLE, "VARIABLE"), root_2) self._adaptor.addChild(root_2, stream_ID.nextNode()) self._adaptor.addChild(root_1, root_2) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 # sdl92.g:834:17: ( '(' params= expression_list ')' -> ^( CALL $postfix_expression ^( PARAMS $params) ) | '!' field_name -> ^( SELECTOR $postfix_expression field_name ) )+ cnt158 = 0 while True: #loop158 alt158 = 3 alt158 = self.dfa158.predict(self.input) if alt158 == 1: # sdl92.g:834:21: '(' params= expression_list ')' pass char_literal496=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_postfix_expression9827) if self._state.backtracking == 0: stream_L_PAREN.add(char_literal496) self._state.following.append(self.FOLLOW_expression_list_in_postfix_expression9831) params = self.expression_list() self._state.following.pop() if self._state.backtracking == 0: stream_expression_list.add(params.tree) char_literal497=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_postfix_expression9833) if self._state.backtracking == 0: stream_R_PAREN.add(char_literal497) # AST Rewrite # elements: params, postfix_expression # token labels: # rule labels: retval, params # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) if params is not None: stream_params = RewriteRuleSubtreeStream(self._adaptor, "rule params", params.tree) else: stream_params = RewriteRuleSubtreeStream(self._adaptor, "token params", None) root_0 = self._adaptor.nil() # 834:52: -> ^( CALL $postfix_expression ^( PARAMS $params) ) # sdl92.g:834:55: ^( CALL $postfix_expression ^( PARAMS $params) ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(CALL, "CALL"), root_1) self._adaptor.addChild(root_1, stream_retval.nextTree()) # sdl92.g:834:82: ^( PARAMS $params) root_2 = self._adaptor.nil() root_2 = self._adaptor.becomeRoot(self._adaptor.createFromType(PARAMS, "PARAMS"), root_2) self._adaptor.addChild(root_2, stream_params.nextTree()) self._adaptor.addChild(root_1, root_2) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt158 == 2: # sdl92.g:835:21: '!' field_name pass char_literal498=self.match(self.input, 214, self.FOLLOW_214_in_postfix_expression9871) if self._state.backtracking == 0: stream_214.add(char_literal498) self._state.following.append(self.FOLLOW_field_name_in_postfix_expression9873) field_name499 = self.field_name() self._state.following.pop() if self._state.backtracking == 0: stream_field_name.add(field_name499.tree) # AST Rewrite # elements: postfix_expression, field_name # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 835:37: -> ^( SELECTOR $postfix_expression field_name ) # sdl92.g:835:40: ^( SELECTOR $postfix_expression field_name ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(SELECTOR, "SELECTOR"), root_1) self._adaptor.addChild(root_1, stream_retval.nextTree()) self._adaptor.addChild(root_1, stream_field_name.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 else: if cnt158 >= 1: break #loop158 if self._state.backtracking > 0: raise BacktrackingFailed eee = EarlyExitException(158, self.input) raise eee cnt158 += 1 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "postfix_expression" class primary_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.primary_expression_return, self).__init__() self.tree = None # $ANTLR start "primary_expression" # sdl92.g:840:1: primary_expression : ( primary -> ^( PRIMARY primary ) | '(' expression ')' -> ^( PAREN expression ) | conditional_expression ); def primary_expression(self, ): retval = self.primary_expression_return() retval.start = self.input.LT(1) root_0 = None char_literal501 = None char_literal503 = None primary500 = None expression502 = None conditional_expression504 = None char_literal501_tree = None char_literal503_tree = None stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") stream_primary = RewriteRuleSubtreeStream(self._adaptor, "rule primary") try: try: # sdl92.g:841:9: ( primary -> ^( PRIMARY primary ) | '(' expression ')' -> ^( PAREN expression ) | conditional_expression ) alt159 = 3 LA159 = self.input.LA(1) if LA159 == BITSTR or LA159 == FLOAT or LA159 == OCTSTR or LA159 == STRING or LA159 == INT or LA159 == ID or LA159 == TRUE or LA159 == FALSE or LA159 == NULL or LA159 == PLUS_INFINITY or LA159 == MINUS_INFINITY or LA159 == L_BRACKET: alt159 = 1 elif LA159 == L_PAREN: alt159 = 2 elif LA159 == IF: alt159 = 3 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 159, 0, self.input) raise nvae if alt159 == 1: # sdl92.g:841:17: primary pass self._state.following.append(self.FOLLOW_primary_in_primary_expression9936) primary500 = self.primary() self._state.following.pop() if self._state.backtracking == 0: stream_primary.add(primary500.tree) # AST Rewrite # elements: primary # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 841:47: -> ^( PRIMARY primary ) # sdl92.g:841:50: ^( PRIMARY primary ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(PRIMARY, "PRIMARY"), root_1) self._adaptor.addChild(root_1, stream_primary.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt159 == 2: # sdl92.g:842:17: '(' expression ')' pass char_literal501=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_primary_expression9984) if self._state.backtracking == 0: stream_L_PAREN.add(char_literal501) self._state.following.append(self.FOLLOW_expression_in_primary_expression9986) expression502 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression502.tree) char_literal503=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_primary_expression9988) if self._state.backtracking == 0: stream_R_PAREN.add(char_literal503) # AST Rewrite # elements: expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 842:47: -> ^( PAREN expression ) # sdl92.g:842:50: ^( PAREN expression ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(PAREN, "PAREN"), root_1) self._adaptor.addChild(root_1, stream_expression.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt159 == 3: # sdl92.g:843:17: conditional_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_conditional_expression_in_primary_expression10025) conditional_expression504 = self.conditional_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, conditional_expression504.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "primary_expression" class primary_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.primary_return, self).__init__() self.tree = None # $ANTLR start "primary" # sdl92.g:847:1: primary : ( BITSTR | OCTSTR | TRUE | FALSE | STRING | NULL | PLUS_INFINITY | MINUS_INFINITY | INT | FLOAT | ID ':' expression -> ^( CHOICE ID expression ) | ID -> ^( VARIABLE ID ) | '{' '}' -> ^( EMPTYSTR ) | '{' MANTISSA mant= INT COMMA BASE bas= INT COMMA EXPONENT exp= INT '}' -> ^( FLOAT2 $mant $bas $exp) | '{' named_value ( COMMA named_value )* '}' -> ^( SEQUENCE ( named_value )+ ) | '{' primary ( COMMA primary )* '}' -> ^( SEQOF ( primary )+ ) ); def primary(self, ): retval = self.primary_return() retval.start = self.input.LT(1) root_0 = None mant = None bas = None exp = None BITSTR505 = None OCTSTR506 = None TRUE507 = None FALSE508 = None STRING509 = None NULL510 = None PLUS_INFINITY511 = None MINUS_INFINITY512 = None INT513 = None FLOAT514 = None ID515 = None char_literal516 = None ID518 = None char_literal519 = None char_literal520 = None char_literal521 = None MANTISSA522 = None COMMA523 = None BASE524 = None COMMA525 = None EXPONENT526 = None char_literal527 = None char_literal528 = None COMMA530 = None char_literal532 = None char_literal533 = None COMMA535 = None char_literal537 = None expression517 = None named_value529 = None named_value531 = None primary534 = None primary536 = None mant_tree = None bas_tree = None exp_tree = None BITSTR505_tree = None OCTSTR506_tree = None TRUE507_tree = None FALSE508_tree = None STRING509_tree = None NULL510_tree = None PLUS_INFINITY511_tree = None MINUS_INFINITY512_tree = None INT513_tree = None FLOAT514_tree = None ID515_tree = None char_literal516_tree = None ID518_tree = None char_literal519_tree = None char_literal520_tree = None char_literal521_tree = None MANTISSA522_tree = None COMMA523_tree = None BASE524_tree = None COMMA525_tree = None EXPONENT526_tree = None char_literal527_tree = None char_literal528_tree = None COMMA530_tree = None char_literal532_tree = None char_literal533_tree = None COMMA535_tree = None char_literal537_tree = None stream_BASE = RewriteRuleTokenStream(self._adaptor, "token BASE") stream_MANTISSA = RewriteRuleTokenStream(self._adaptor, "token MANTISSA") stream_EXPONENT = RewriteRuleTokenStream(self._adaptor, "token EXPONENT") stream_INT = RewriteRuleTokenStream(self._adaptor, "token INT") stream_213 = RewriteRuleTokenStream(self._adaptor, "token 213") stream_L_BRACKET = RewriteRuleTokenStream(self._adaptor, "token L_BRACKET") stream_ID = RewriteRuleTokenStream(self._adaptor, "token ID") stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_R_BRACKET = RewriteRuleTokenStream(self._adaptor, "token R_BRACKET") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") stream_primary = RewriteRuleSubtreeStream(self._adaptor, "rule primary") stream_named_value = RewriteRuleSubtreeStream(self._adaptor, "rule named_value") try: try: # sdl92.g:848:9: ( BITSTR | OCTSTR | TRUE | FALSE | STRING | NULL | PLUS_INFINITY | MINUS_INFINITY | INT | FLOAT | ID ':' expression -> ^( CHOICE ID expression ) | ID -> ^( VARIABLE ID ) | '{' '}' -> ^( EMPTYSTR ) | '{' MANTISSA mant= INT COMMA BASE bas= INT COMMA EXPONENT exp= INT '}' -> ^( FLOAT2 $mant $bas $exp) | '{' named_value ( COMMA named_value )* '}' -> ^( SEQUENCE ( named_value )+ ) | '{' primary ( COMMA primary )* '}' -> ^( SEQOF ( primary )+ ) ) alt162 = 16 alt162 = self.dfa162.predict(self.input) if alt162 == 1: # sdl92.g:848:17: BITSTR pass root_0 = self._adaptor.nil() BITSTR505=self.match(self.input, BITSTR, self.FOLLOW_BITSTR_in_primary10057) if self._state.backtracking == 0: BITSTR505_tree = self._adaptor.createWithPayload(BITSTR505) root_0 = self._adaptor.becomeRoot(BITSTR505_tree, root_0) elif alt162 == 2: # sdl92.g:849:17: OCTSTR pass root_0 = self._adaptor.nil() OCTSTR506=self.match(self.input, OCTSTR, self.FOLLOW_OCTSTR_in_primary10076) if self._state.backtracking == 0: OCTSTR506_tree = self._adaptor.createWithPayload(OCTSTR506) root_0 = self._adaptor.becomeRoot(OCTSTR506_tree, root_0) elif alt162 == 3: # sdl92.g:850:17: TRUE pass root_0 = self._adaptor.nil() TRUE507=self.match(self.input, TRUE, self.FOLLOW_TRUE_in_primary10095) if self._state.backtracking == 0: TRUE507_tree = self._adaptor.createWithPayload(TRUE507) root_0 = self._adaptor.becomeRoot(TRUE507_tree, root_0) elif alt162 == 4: # sdl92.g:851:17: FALSE pass root_0 = self._adaptor.nil() FALSE508=self.match(self.input, FALSE, self.FOLLOW_FALSE_in_primary10114) if self._state.backtracking == 0: FALSE508_tree = self._adaptor.createWithPayload(FALSE508) root_0 = self._adaptor.becomeRoot(FALSE508_tree, root_0) elif alt162 == 5: # sdl92.g:852:17: STRING pass root_0 = self._adaptor.nil() STRING509=self.match(self.input, STRING, self.FOLLOW_STRING_in_primary10133) if self._state.backtracking == 0: STRING509_tree = self._adaptor.createWithPayload(STRING509) self._adaptor.addChild(root_0, STRING509_tree) elif alt162 == 6: # sdl92.g:853:17: NULL pass root_0 = self._adaptor.nil() NULL510=self.match(self.input, NULL, self.FOLLOW_NULL_in_primary10151) if self._state.backtracking == 0: NULL510_tree = self._adaptor.createWithPayload(NULL510) root_0 = self._adaptor.becomeRoot(NULL510_tree, root_0) elif alt162 == 7: # sdl92.g:854:17: PLUS_INFINITY pass root_0 = self._adaptor.nil() PLUS_INFINITY511=self.match(self.input, PLUS_INFINITY, self.FOLLOW_PLUS_INFINITY_in_primary10170) if self._state.backtracking == 0: PLUS_INFINITY511_tree = self._adaptor.createWithPayload(PLUS_INFINITY511) root_0 = self._adaptor.becomeRoot(PLUS_INFINITY511_tree, root_0) elif alt162 == 8: # sdl92.g:855:17: MINUS_INFINITY pass root_0 = self._adaptor.nil() MINUS_INFINITY512=self.match(self.input, MINUS_INFINITY, self.FOLLOW_MINUS_INFINITY_in_primary10189) if self._state.backtracking == 0: MINUS_INFINITY512_tree = self._adaptor.createWithPayload(MINUS_INFINITY512) root_0 = self._adaptor.becomeRoot(MINUS_INFINITY512_tree, root_0) elif alt162 == 9: # sdl92.g:856:17: INT pass root_0 = self._adaptor.nil() INT513=self.match(self.input, INT, self.FOLLOW_INT_in_primary10208) if self._state.backtracking == 0: INT513_tree = self._adaptor.createWithPayload(INT513) root_0 = self._adaptor.becomeRoot(INT513_tree, root_0) elif alt162 == 10: # sdl92.g:857:17: FLOAT pass root_0 = self._adaptor.nil() FLOAT514=self.match(self.input, FLOAT, self.FOLLOW_FLOAT_in_primary10227) if self._state.backtracking == 0: FLOAT514_tree = self._adaptor.createWithPayload(FLOAT514) root_0 = self._adaptor.becomeRoot(FLOAT514_tree, root_0) elif alt162 == 11: # sdl92.g:858:17: ID ':' expression pass ID515=self.match(self.input, ID, self.FOLLOW_ID_in_primary10246) if self._state.backtracking == 0: stream_ID.add(ID515) char_literal516=self.match(self.input, 213, self.FOLLOW_213_in_primary10248) if self._state.backtracking == 0: stream_213.add(char_literal516) self._state.following.append(self.FOLLOW_expression_in_primary10250) expression517 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression517.tree) # AST Rewrite # elements: expression, ID # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 858:45: -> ^( CHOICE ID expression ) # sdl92.g:858:48: ^( CHOICE ID expression ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(CHOICE, "CHOICE"), root_1) self._adaptor.addChild(root_1, stream_ID.nextNode()) self._adaptor.addChild(root_1, stream_expression.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt162 == 12: # sdl92.g:859:17: ID pass ID518=self.match(self.input, ID, self.FOLLOW_ID_in_primary10288) if self._state.backtracking == 0: stream_ID.add(ID518) # AST Rewrite # elements: ID # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 859:45: -> ^( VARIABLE ID ) # sdl92.g:859:48: ^( VARIABLE ID ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(VARIABLE, "VARIABLE"), root_1) self._adaptor.addChild(root_1, stream_ID.nextNode()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt162 == 13: # sdl92.g:860:17: '{' '}' pass char_literal519=self.match(self.input, L_BRACKET, self.FOLLOW_L_BRACKET_in_primary10339) if self._state.backtracking == 0: stream_L_BRACKET.add(char_literal519) char_literal520=self.match(self.input, R_BRACKET, self.FOLLOW_R_BRACKET_in_primary10341) if self._state.backtracking == 0: stream_R_BRACKET.add(char_literal520) # AST Rewrite # elements: # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 860:45: -> ^( EMPTYSTR ) # sdl92.g:860:48: ^( EMPTYSTR ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(EMPTYSTR, "EMPTYSTR"), root_1) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt162 == 14: # sdl92.g:861:17: '{' MANTISSA mant= INT COMMA BASE bas= INT COMMA EXPONENT exp= INT '}' pass char_literal521=self.match(self.input, L_BRACKET, self.FOLLOW_L_BRACKET_in_primary10385) if self._state.backtracking == 0: stream_L_BRACKET.add(char_literal521) MANTISSA522=self.match(self.input, MANTISSA, self.FOLLOW_MANTISSA_in_primary10403) if self._state.backtracking == 0: stream_MANTISSA.add(MANTISSA522) mant=self.match(self.input, INT, self.FOLLOW_INT_in_primary10407) if self._state.backtracking == 0: stream_INT.add(mant) COMMA523=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_primary10409) if self._state.backtracking == 0: stream_COMMA.add(COMMA523) BASE524=self.match(self.input, BASE, self.FOLLOW_BASE_in_primary10427) if self._state.backtracking == 0: stream_BASE.add(BASE524) bas=self.match(self.input, INT, self.FOLLOW_INT_in_primary10431) if self._state.backtracking == 0: stream_INT.add(bas) COMMA525=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_primary10433) if self._state.backtracking == 0: stream_COMMA.add(COMMA525) EXPONENT526=self.match(self.input, EXPONENT, self.FOLLOW_EXPONENT_in_primary10451) if self._state.backtracking == 0: stream_EXPONENT.add(EXPONENT526) exp=self.match(self.input, INT, self.FOLLOW_INT_in_primary10455) if self._state.backtracking == 0: stream_INT.add(exp) char_literal527=self.match(self.input, R_BRACKET, self.FOLLOW_R_BRACKET_in_primary10473) if self._state.backtracking == 0: stream_R_BRACKET.add(char_literal527) # AST Rewrite # elements: bas, exp, mant # token labels: exp, mant, bas # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 stream_exp = RewriteRuleTokenStream(self._adaptor, "token exp", exp) stream_mant = RewriteRuleTokenStream(self._adaptor, "token mant", mant) stream_bas = RewriteRuleTokenStream(self._adaptor, "token bas", bas) if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 865:45: -> ^( FLOAT2 $mant $bas $exp) # sdl92.g:865:48: ^( FLOAT2 $mant $bas $exp) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(FLOAT2, "FLOAT2"), root_1) self._adaptor.addChild(root_1, stream_mant.nextNode()) self._adaptor.addChild(root_1, stream_bas.nextNode()) self._adaptor.addChild(root_1, stream_exp.nextNode()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt162 == 15: # sdl92.g:866:17: '{' named_value ( COMMA named_value )* '}' pass char_literal528=self.match(self.input, L_BRACKET, self.FOLLOW_L_BRACKET_in_primary10530) if self._state.backtracking == 0: stream_L_BRACKET.add(char_literal528) self._state.following.append(self.FOLLOW_named_value_in_primary10548) named_value529 = self.named_value() self._state.following.pop() if self._state.backtracking == 0: stream_named_value.add(named_value529.tree) # sdl92.g:867:29: ( COMMA named_value )* while True: #loop160 alt160 = 2 LA160_0 = self.input.LA(1) if (LA160_0 == COMMA) : alt160 = 1 if alt160 == 1: # sdl92.g:867:30: COMMA named_value pass COMMA530=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_primary10551) if self._state.backtracking == 0: stream_COMMA.add(COMMA530) self._state.following.append(self.FOLLOW_named_value_in_primary10553) named_value531 = self.named_value() self._state.following.pop() if self._state.backtracking == 0: stream_named_value.add(named_value531.tree) else: break #loop160 char_literal532=self.match(self.input, R_BRACKET, self.FOLLOW_R_BRACKET_in_primary10573) if self._state.backtracking == 0: stream_R_BRACKET.add(char_literal532) # AST Rewrite # elements: named_value # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 868:45: -> ^( SEQUENCE ( named_value )+ ) # sdl92.g:868:48: ^( SEQUENCE ( named_value )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(SEQUENCE, "SEQUENCE"), root_1) # sdl92.g:868:59: ( named_value )+ if not (stream_named_value.hasNext()): raise RewriteEarlyExitException() while stream_named_value.hasNext(): self._adaptor.addChild(root_1, stream_named_value.nextTree()) stream_named_value.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt162 == 16: # sdl92.g:869:17: '{' primary ( COMMA primary )* '}' pass char_literal533=self.match(self.input, L_BRACKET, self.FOLLOW_L_BRACKET_in_primary10624) if self._state.backtracking == 0: stream_L_BRACKET.add(char_literal533) self._state.following.append(self.FOLLOW_primary_in_primary10642) primary534 = self.primary() self._state.following.pop() if self._state.backtracking == 0: stream_primary.add(primary534.tree) # sdl92.g:870:25: ( COMMA primary )* while True: #loop161 alt161 = 2 LA161_0 = self.input.LA(1) if (LA161_0 == COMMA) : alt161 = 1 if alt161 == 1: # sdl92.g:870:26: COMMA primary pass COMMA535=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_primary10645) if self._state.backtracking == 0: stream_COMMA.add(COMMA535) self._state.following.append(self.FOLLOW_primary_in_primary10647) primary536 = self.primary() self._state.following.pop() if self._state.backtracking == 0: stream_primary.add(primary536.tree) else: break #loop161 char_literal537=self.match(self.input, R_BRACKET, self.FOLLOW_R_BRACKET_in_primary10667) if self._state.backtracking == 0: stream_R_BRACKET.add(char_literal537) # AST Rewrite # elements: primary # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 871:45: -> ^( SEQOF ( primary )+ ) # sdl92.g:871:48: ^( SEQOF ( primary )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(SEQOF, "SEQOF"), root_1) # sdl92.g:871:56: ( primary )+ if not (stream_primary.hasNext()): raise RewriteEarlyExitException() while stream_primary.hasNext(): self._adaptor.addChild(root_1, stream_primary.nextTree()) stream_primary.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "primary" class informal_text_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.informal_text_return, self).__init__() self.tree = None # $ANTLR start "informal_text" # sdl92.g:875:1: informal_text : STRING -> ^( INFORMAL_TEXT STRING ) ; def informal_text(self, ): retval = self.informal_text_return() retval.start = self.input.LT(1) root_0 = None STRING538 = None STRING538_tree = None stream_STRING = RewriteRuleTokenStream(self._adaptor, "token STRING") try: try: # sdl92.g:876:9: ( STRING -> ^( INFORMAL_TEXT STRING ) ) # sdl92.g:876:18: STRING pass STRING538=self.match(self.input, STRING, self.FOLLOW_STRING_in_informal_text10733) if self._state.backtracking == 0: stream_STRING.add(STRING538) # AST Rewrite # elements: STRING # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 877:9: -> ^( INFORMAL_TEXT STRING ) # sdl92.g:877:18: ^( INFORMAL_TEXT STRING ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(INFORMAL_TEXT, "INFORMAL_TEXT"), root_1) self._adaptor.addChild(root_1, stream_STRING.nextNode()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "informal_text" class named_value_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.named_value_return, self).__init__() self.tree = None # $ANTLR start "named_value" # sdl92.g:881:1: named_value : ID expression ; def named_value(self, ): retval = self.named_value_return() retval.start = self.input.LT(1) root_0 = None ID539 = None expression540 = None ID539_tree = None try: try: # sdl92.g:882:9: ( ID expression ) # sdl92.g:882:17: ID expression pass root_0 = self._adaptor.nil() ID539=self.match(self.input, ID, self.FOLLOW_ID_in_named_value10779) if self._state.backtracking == 0: ID539_tree = self._adaptor.createWithPayload(ID539) self._adaptor.addChild(root_0, ID539_tree) self._state.following.append(self.FOLLOW_expression_in_named_value10781) expression540 = self.expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, expression540.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "named_value" class primary_params_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.primary_params_return, self).__init__() self.tree = None # $ANTLR start "primary_params" # sdl92.g:885:1: primary_params : ( '(' expression_list ')' -> ^( PARAMS expression_list ) | '!' literal_id -> ^( FIELD_NAME literal_id ) ); def primary_params(self, ): retval = self.primary_params_return() retval.start = self.input.LT(1) root_0 = None char_literal541 = None char_literal543 = None char_literal544 = None expression_list542 = None literal_id545 = None char_literal541_tree = None char_literal543_tree = None char_literal544_tree = None stream_214 = RewriteRuleTokenStream(self._adaptor, "token 214") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_expression_list = RewriteRuleSubtreeStream(self._adaptor, "rule expression_list") stream_literal_id = RewriteRuleSubtreeStream(self._adaptor, "rule literal_id") try: try: # sdl92.g:886:9: ( '(' expression_list ')' -> ^( PARAMS expression_list ) | '!' literal_id -> ^( FIELD_NAME literal_id ) ) alt163 = 2 LA163_0 = self.input.LA(1) if (LA163_0 == L_PAREN) : alt163 = 1 elif (LA163_0 == 214) : alt163 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 163, 0, self.input) raise nvae if alt163 == 1: # sdl92.g:886:16: '(' expression_list ')' pass char_literal541=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_primary_params10803) if self._state.backtracking == 0: stream_L_PAREN.add(char_literal541) self._state.following.append(self.FOLLOW_expression_list_in_primary_params10805) expression_list542 = self.expression_list() self._state.following.pop() if self._state.backtracking == 0: stream_expression_list.add(expression_list542.tree) char_literal543=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_primary_params10807) if self._state.backtracking == 0: stream_R_PAREN.add(char_literal543) # AST Rewrite # elements: expression_list # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 887:9: -> ^( PARAMS expression_list ) # sdl92.g:887:16: ^( PARAMS expression_list ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(PARAMS, "PARAMS"), root_1) self._adaptor.addChild(root_1, stream_expression_list.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 elif alt163 == 2: # sdl92.g:888:18: '!' literal_id pass char_literal544=self.match(self.input, 214, self.FOLLOW_214_in_primary_params10846) if self._state.backtracking == 0: stream_214.add(char_literal544) self._state.following.append(self.FOLLOW_literal_id_in_primary_params10848) literal_id545 = self.literal_id() self._state.following.pop() if self._state.backtracking == 0: stream_literal_id.add(literal_id545.tree) # AST Rewrite # elements: literal_id # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 889:9: -> ^( FIELD_NAME literal_id ) # sdl92.g:889:16: ^( FIELD_NAME literal_id ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(FIELD_NAME, "FIELD_NAME"), root_1) self._adaptor.addChild(root_1, stream_literal_id.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "primary_params" class indexed_primary_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.indexed_primary_return, self).__init__() self.tree = None # $ANTLR start "indexed_primary" # sdl92.g:902:1: indexed_primary : primary '(' expression_list ')' ; def indexed_primary(self, ): retval = self.indexed_primary_return() retval.start = self.input.LT(1) root_0 = None char_literal547 = None char_literal549 = None primary546 = None expression_list548 = None char_literal547_tree = None char_literal549_tree = None try: try: # sdl92.g:903:9: ( primary '(' expression_list ')' ) # sdl92.g:903:17: primary '(' expression_list ')' pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_primary_in_indexed_primary10895) primary546 = self.primary() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, primary546.tree) char_literal547=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_indexed_primary10897) if self._state.backtracking == 0: char_literal547_tree = self._adaptor.createWithPayload(char_literal547) self._adaptor.addChild(root_0, char_literal547_tree) self._state.following.append(self.FOLLOW_expression_list_in_indexed_primary10899) expression_list548 = self.expression_list() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, expression_list548.tree) char_literal549=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_indexed_primary10901) if self._state.backtracking == 0: char_literal549_tree = self._adaptor.createWithPayload(char_literal549) self._adaptor.addChild(root_0, char_literal549_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "indexed_primary" class field_primary_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.field_primary_return, self).__init__() self.tree = None # $ANTLR start "field_primary" # sdl92.g:906:1: field_primary : primary field_selection ; def field_primary(self, ): retval = self.field_primary_return() retval.start = self.input.LT(1) root_0 = None primary550 = None field_selection551 = None try: try: # sdl92.g:907:9: ( primary field_selection ) # sdl92.g:907:17: primary field_selection pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_primary_in_field_primary10924) primary550 = self.primary() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, primary550.tree) self._state.following.append(self.FOLLOW_field_selection_in_field_primary10926) field_selection551 = self.field_selection() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, field_selection551.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "field_primary" class structure_primary_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.structure_primary_return, self).__init__() self.tree = None # $ANTLR start "structure_primary" # sdl92.g:910:1: structure_primary : '(.' expression_list '.)' ; def structure_primary(self, ): retval = self.structure_primary_return() retval.start = self.input.LT(1) root_0 = None string_literal552 = None string_literal554 = None expression_list553 = None string_literal552_tree = None string_literal554_tree = None try: try: # sdl92.g:911:9: ( '(.' expression_list '.)' ) # sdl92.g:911:17: '(.' expression_list '.)' pass root_0 = self._adaptor.nil() string_literal552=self.match(self.input, 215, self.FOLLOW_215_in_structure_primary10949) if self._state.backtracking == 0: string_literal552_tree = self._adaptor.createWithPayload(string_literal552) self._adaptor.addChild(root_0, string_literal552_tree) self._state.following.append(self.FOLLOW_expression_list_in_structure_primary10951) expression_list553 = self.expression_list() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, expression_list553.tree) string_literal554=self.match(self.input, 216, self.FOLLOW_216_in_structure_primary10953) if self._state.backtracking == 0: string_literal554_tree = self._adaptor.createWithPayload(string_literal554) self._adaptor.addChild(root_0, string_literal554_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "structure_primary" class active_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.active_expression_return, self).__init__() self.tree = None # $ANTLR start "active_expression" # sdl92.g:916:1: active_expression : active_primary ; def active_expression(self, ): retval = self.active_expression_return() retval.start = self.input.LT(1) root_0 = None active_primary555 = None try: try: # sdl92.g:917:9: ( active_primary ) # sdl92.g:917:17: active_primary pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_active_primary_in_active_expression10978) active_primary555 = self.active_primary() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, active_primary555.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "active_expression" class active_primary_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.active_primary_return, self).__init__() self.tree = None # $ANTLR start "active_primary" # sdl92.g:920:1: active_primary : ( variable_access | operator_application | conditional_expression | imperative_operator | '(' active_expression ')' | 'ERROR' ); def active_primary(self, ): retval = self.active_primary_return() retval.start = self.input.LT(1) root_0 = None char_literal560 = None char_literal562 = None string_literal563 = None variable_access556 = None operator_application557 = None conditional_expression558 = None imperative_operator559 = None active_expression561 = None char_literal560_tree = None char_literal562_tree = None string_literal563_tree = None try: try: # sdl92.g:921:9: ( variable_access | operator_application | conditional_expression | imperative_operator | '(' active_expression ')' | 'ERROR' ) alt164 = 6 LA164 = self.input.LA(1) if LA164 == ID: LA164_1 = self.input.LA(2) if ((R_PAREN <= LA164_1 <= COMMA)) : alt164 = 1 elif (LA164_1 == L_PAREN) : alt164 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 164, 1, self.input) raise nvae elif LA164 == IF: alt164 = 3 elif LA164 == ANY or LA164 == ACTIVE or LA164 == IMPORT or LA164 == VIEW or LA164 == N or LA164 == P or LA164 == S or LA164 == O: alt164 = 4 elif LA164 == L_PAREN: alt164 = 5 elif LA164 == 217: alt164 = 6 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 164, 0, self.input) raise nvae if alt164 == 1: # sdl92.g:921:17: variable_access pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_variable_access_in_active_primary11001) variable_access556 = self.variable_access() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, variable_access556.tree) elif alt164 == 2: # sdl92.g:922:19: operator_application pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_operator_application_in_active_primary11021) operator_application557 = self.operator_application() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, operator_application557.tree) elif alt164 == 3: # sdl92.g:923:19: conditional_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_conditional_expression_in_active_primary11041) conditional_expression558 = self.conditional_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, conditional_expression558.tree) elif alt164 == 4: # sdl92.g:924:19: imperative_operator pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_imperative_operator_in_active_primary11061) imperative_operator559 = self.imperative_operator() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, imperative_operator559.tree) elif alt164 == 5: # sdl92.g:925:19: '(' active_expression ')' pass root_0 = self._adaptor.nil() char_literal560=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_active_primary11081) if self._state.backtracking == 0: char_literal560_tree = self._adaptor.createWithPayload(char_literal560) self._adaptor.addChild(root_0, char_literal560_tree) self._state.following.append(self.FOLLOW_active_expression_in_active_primary11083) active_expression561 = self.active_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, active_expression561.tree) char_literal562=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_active_primary11085) if self._state.backtracking == 0: char_literal562_tree = self._adaptor.createWithPayload(char_literal562) self._adaptor.addChild(root_0, char_literal562_tree) elif alt164 == 6: # sdl92.g:926:19: 'ERROR' pass root_0 = self._adaptor.nil() string_literal563=self.match(self.input, 217, self.FOLLOW_217_in_active_primary11105) if self._state.backtracking == 0: string_literal563_tree = self._adaptor.createWithPayload(string_literal563) self._adaptor.addChild(root_0, string_literal563_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "active_primary" class imperative_operator_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.imperative_operator_return, self).__init__() self.tree = None # $ANTLR start "imperative_operator" # sdl92.g:930:1: imperative_operator : ( now_expression | import_expression | pid_expression | view_expression | timer_active_expression | anyvalue_expression ); def imperative_operator(self, ): retval = self.imperative_operator_return() retval.start = self.input.LT(1) root_0 = None now_expression564 = None import_expression565 = None pid_expression566 = None view_expression567 = None timer_active_expression568 = None anyvalue_expression569 = None try: try: # sdl92.g:931:9: ( now_expression | import_expression | pid_expression | view_expression | timer_active_expression | anyvalue_expression ) alt165 = 6 LA165 = self.input.LA(1) if LA165 == N: alt165 = 1 elif LA165 == IMPORT: alt165 = 2 elif LA165 == P or LA165 == S or LA165 == O: alt165 = 3 elif LA165 == VIEW: alt165 = 4 elif LA165 == ACTIVE: alt165 = 5 elif LA165 == ANY: alt165 = 6 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 165, 0, self.input) raise nvae if alt165 == 1: # sdl92.g:931:17: now_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_now_expression_in_imperative_operator11132) now_expression564 = self.now_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, now_expression564.tree) elif alt165 == 2: # sdl92.g:932:19: import_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_import_expression_in_imperative_operator11152) import_expression565 = self.import_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, import_expression565.tree) elif alt165 == 3: # sdl92.g:933:19: pid_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_pid_expression_in_imperative_operator11172) pid_expression566 = self.pid_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, pid_expression566.tree) elif alt165 == 4: # sdl92.g:934:19: view_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_view_expression_in_imperative_operator11192) view_expression567 = self.view_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, view_expression567.tree) elif alt165 == 5: # sdl92.g:935:19: timer_active_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_timer_active_expression_in_imperative_operator11212) timer_active_expression568 = self.timer_active_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, timer_active_expression568.tree) elif alt165 == 6: # sdl92.g:936:19: anyvalue_expression pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_anyvalue_expression_in_imperative_operator11232) anyvalue_expression569 = self.anyvalue_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, anyvalue_expression569.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "imperative_operator" class timer_active_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.timer_active_expression_return, self).__init__() self.tree = None # $ANTLR start "timer_active_expression" # sdl92.g:939:1: timer_active_expression : ACTIVE '(' timer_id ( '(' expression_list ')' )? ')' ; def timer_active_expression(self, ): retval = self.timer_active_expression_return() retval.start = self.input.LT(1) root_0 = None ACTIVE570 = None char_literal571 = None char_literal573 = None char_literal575 = None char_literal576 = None timer_id572 = None expression_list574 = None ACTIVE570_tree = None char_literal571_tree = None char_literal573_tree = None char_literal575_tree = None char_literal576_tree = None try: try: # sdl92.g:940:9: ( ACTIVE '(' timer_id ( '(' expression_list ')' )? ')' ) # sdl92.g:940:17: ACTIVE '(' timer_id ( '(' expression_list ')' )? ')' pass root_0 = self._adaptor.nil() ACTIVE570=self.match(self.input, ACTIVE, self.FOLLOW_ACTIVE_in_timer_active_expression11255) if self._state.backtracking == 0: ACTIVE570_tree = self._adaptor.createWithPayload(ACTIVE570) self._adaptor.addChild(root_0, ACTIVE570_tree) char_literal571=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_timer_active_expression11257) if self._state.backtracking == 0: char_literal571_tree = self._adaptor.createWithPayload(char_literal571) self._adaptor.addChild(root_0, char_literal571_tree) self._state.following.append(self.FOLLOW_timer_id_in_timer_active_expression11259) timer_id572 = self.timer_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, timer_id572.tree) # sdl92.g:940:37: ( '(' expression_list ')' )? alt166 = 2 LA166_0 = self.input.LA(1) if (LA166_0 == L_PAREN) : alt166 = 1 if alt166 == 1: # sdl92.g:940:38: '(' expression_list ')' pass char_literal573=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_timer_active_expression11262) if self._state.backtracking == 0: char_literal573_tree = self._adaptor.createWithPayload(char_literal573) self._adaptor.addChild(root_0, char_literal573_tree) self._state.following.append(self.FOLLOW_expression_list_in_timer_active_expression11264) expression_list574 = self.expression_list() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, expression_list574.tree) char_literal575=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_timer_active_expression11266) if self._state.backtracking == 0: char_literal575_tree = self._adaptor.createWithPayload(char_literal575) self._adaptor.addChild(root_0, char_literal575_tree) char_literal576=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_timer_active_expression11270) if self._state.backtracking == 0: char_literal576_tree = self._adaptor.createWithPayload(char_literal576) self._adaptor.addChild(root_0, char_literal576_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "timer_active_expression" class anyvalue_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.anyvalue_expression_return, self).__init__() self.tree = None # $ANTLR start "anyvalue_expression" # sdl92.g:943:1: anyvalue_expression : ANY '(' sort ')' ; def anyvalue_expression(self, ): retval = self.anyvalue_expression_return() retval.start = self.input.LT(1) root_0 = None ANY577 = None char_literal578 = None char_literal580 = None sort579 = None ANY577_tree = None char_literal578_tree = None char_literal580_tree = None try: try: # sdl92.g:944:9: ( ANY '(' sort ')' ) # sdl92.g:944:17: ANY '(' sort ')' pass root_0 = self._adaptor.nil() ANY577=self.match(self.input, ANY, self.FOLLOW_ANY_in_anyvalue_expression11293) if self._state.backtracking == 0: ANY577_tree = self._adaptor.createWithPayload(ANY577) self._adaptor.addChild(root_0, ANY577_tree) char_literal578=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_anyvalue_expression11295) if self._state.backtracking == 0: char_literal578_tree = self._adaptor.createWithPayload(char_literal578) self._adaptor.addChild(root_0, char_literal578_tree) self._state.following.append(self.FOLLOW_sort_in_anyvalue_expression11297) sort579 = self.sort() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, sort579.tree) char_literal580=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_anyvalue_expression11299) if self._state.backtracking == 0: char_literal580_tree = self._adaptor.createWithPayload(char_literal580) self._adaptor.addChild(root_0, char_literal580_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "anyvalue_expression" class sort_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.sort_return, self).__init__() self.tree = None # $ANTLR start "sort" # sdl92.g:947:1: sort : sort_id -> ^( SORT sort_id ) ; def sort(self, ): retval = self.sort_return() retval.start = self.input.LT(1) root_0 = None sort_id581 = None stream_sort_id = RewriteRuleSubtreeStream(self._adaptor, "rule sort_id") try: try: # sdl92.g:947:9: ( sort_id -> ^( SORT sort_id ) ) # sdl92.g:947:17: sort_id pass self._state.following.append(self.FOLLOW_sort_id_in_sort11317) sort_id581 = self.sort_id() self._state.following.pop() if self._state.backtracking == 0: stream_sort_id.add(sort_id581.tree) # AST Rewrite # elements: sort_id # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 948:9: -> ^( SORT sort_id ) # sdl92.g:948:17: ^( SORT sort_id ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(SORT, "SORT"), root_1) self._adaptor.addChild(root_1, stream_sort_id.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "sort" class syntype_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.syntype_return, self).__init__() self.tree = None # $ANTLR start "syntype" # sdl92.g:951:1: syntype : syntype_id ; def syntype(self, ): retval = self.syntype_return() retval.start = self.input.LT(1) root_0 = None syntype_id582 = None try: try: # sdl92.g:951:9: ( syntype_id ) # sdl92.g:951:17: syntype_id pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_syntype_id_in_syntype11353) syntype_id582 = self.syntype_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, syntype_id582.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "syntype" class import_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.import_expression_return, self).__init__() self.tree = None # $ANTLR start "import_expression" # sdl92.g:954:1: import_expression : IMPORT '(' remote_variable_id ( ',' destination )? ')' ; def import_expression(self, ): retval = self.import_expression_return() retval.start = self.input.LT(1) root_0 = None IMPORT583 = None char_literal584 = None char_literal586 = None char_literal588 = None remote_variable_id585 = None destination587 = None IMPORT583_tree = None char_literal584_tree = None char_literal586_tree = None char_literal588_tree = None try: try: # sdl92.g:955:9: ( IMPORT '(' remote_variable_id ( ',' destination )? ')' ) # sdl92.g:955:17: IMPORT '(' remote_variable_id ( ',' destination )? ')' pass root_0 = self._adaptor.nil() IMPORT583=self.match(self.input, IMPORT, self.FOLLOW_IMPORT_in_import_expression11376) if self._state.backtracking == 0: IMPORT583_tree = self._adaptor.createWithPayload(IMPORT583) self._adaptor.addChild(root_0, IMPORT583_tree) char_literal584=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_import_expression11378) if self._state.backtracking == 0: char_literal584_tree = self._adaptor.createWithPayload(char_literal584) self._adaptor.addChild(root_0, char_literal584_tree) self._state.following.append(self.FOLLOW_remote_variable_id_in_import_expression11380) remote_variable_id585 = self.remote_variable_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, remote_variable_id585.tree) # sdl92.g:955:47: ( ',' destination )? alt167 = 2 LA167_0 = self.input.LA(1) if (LA167_0 == COMMA) : alt167 = 1 if alt167 == 1: # sdl92.g:955:48: ',' destination pass char_literal586=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_import_expression11383) if self._state.backtracking == 0: char_literal586_tree = self._adaptor.createWithPayload(char_literal586) self._adaptor.addChild(root_0, char_literal586_tree) self._state.following.append(self.FOLLOW_destination_in_import_expression11385) destination587 = self.destination() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, destination587.tree) char_literal588=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_import_expression11389) if self._state.backtracking == 0: char_literal588_tree = self._adaptor.createWithPayload(char_literal588) self._adaptor.addChild(root_0, char_literal588_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "import_expression" class view_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.view_expression_return, self).__init__() self.tree = None # $ANTLR start "view_expression" # sdl92.g:958:1: view_expression : VIEW '(' view_id ( ',' pid_expression )? ')' ; def view_expression(self, ): retval = self.view_expression_return() retval.start = self.input.LT(1) root_0 = None VIEW589 = None char_literal590 = None char_literal592 = None char_literal594 = None view_id591 = None pid_expression593 = None VIEW589_tree = None char_literal590_tree = None char_literal592_tree = None char_literal594_tree = None try: try: # sdl92.g:959:9: ( VIEW '(' view_id ( ',' pid_expression )? ')' ) # sdl92.g:959:17: VIEW '(' view_id ( ',' pid_expression )? ')' pass root_0 = self._adaptor.nil() VIEW589=self.match(self.input, VIEW, self.FOLLOW_VIEW_in_view_expression11412) if self._state.backtracking == 0: VIEW589_tree = self._adaptor.createWithPayload(VIEW589) self._adaptor.addChild(root_0, VIEW589_tree) char_literal590=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_view_expression11414) if self._state.backtracking == 0: char_literal590_tree = self._adaptor.createWithPayload(char_literal590) self._adaptor.addChild(root_0, char_literal590_tree) self._state.following.append(self.FOLLOW_view_id_in_view_expression11416) view_id591 = self.view_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, view_id591.tree) # sdl92.g:959:34: ( ',' pid_expression )? alt168 = 2 LA168_0 = self.input.LA(1) if (LA168_0 == COMMA) : alt168 = 1 if alt168 == 1: # sdl92.g:959:35: ',' pid_expression pass char_literal592=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_view_expression11419) if self._state.backtracking == 0: char_literal592_tree = self._adaptor.createWithPayload(char_literal592) self._adaptor.addChild(root_0, char_literal592_tree) self._state.following.append(self.FOLLOW_pid_expression_in_view_expression11421) pid_expression593 = self.pid_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, pid_expression593.tree) char_literal594=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_view_expression11425) if self._state.backtracking == 0: char_literal594_tree = self._adaptor.createWithPayload(char_literal594) self._adaptor.addChild(root_0, char_literal594_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "view_expression" class variable_access_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.variable_access_return, self).__init__() self.tree = None # $ANTLR start "variable_access" # sdl92.g:962:1: variable_access : variable_id ; def variable_access(self, ): retval = self.variable_access_return() retval.start = self.input.LT(1) root_0 = None variable_id595 = None try: try: # sdl92.g:963:9: ( variable_id ) # sdl92.g:963:17: variable_id pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_variable_id_in_variable_access11448) variable_id595 = self.variable_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, variable_id595.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "variable_access" class operator_application_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.operator_application_return, self).__init__() self.tree = None # $ANTLR start "operator_application" # sdl92.g:966:1: operator_application : operator_id '(' active_expression_list ')' ; def operator_application(self, ): retval = self.operator_application_return() retval.start = self.input.LT(1) root_0 = None char_literal597 = None char_literal599 = None operator_id596 = None active_expression_list598 = None char_literal597_tree = None char_literal599_tree = None try: try: # sdl92.g:967:9: ( operator_id '(' active_expression_list ')' ) # sdl92.g:967:17: operator_id '(' active_expression_list ')' pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_operator_id_in_operator_application11471) operator_id596 = self.operator_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, operator_id596.tree) char_literal597=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_operator_application11473) if self._state.backtracking == 0: char_literal597_tree = self._adaptor.createWithPayload(char_literal597) self._adaptor.addChild(root_0, char_literal597_tree) self._state.following.append(self.FOLLOW_active_expression_list_in_operator_application11474) active_expression_list598 = self.active_expression_list() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, active_expression_list598.tree) char_literal599=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_operator_application11476) if self._state.backtracking == 0: char_literal599_tree = self._adaptor.createWithPayload(char_literal599) self._adaptor.addChild(root_0, char_literal599_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "operator_application" class active_expression_list_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.active_expression_list_return, self).__init__() self.tree = None # $ANTLR start "active_expression_list" # sdl92.g:970:1: active_expression_list : active_expression ( ',' expression_list )? ; def active_expression_list(self, ): retval = self.active_expression_list_return() retval.start = self.input.LT(1) root_0 = None char_literal601 = None active_expression600 = None expression_list602 = None char_literal601_tree = None try: try: # sdl92.g:971:9: ( active_expression ( ',' expression_list )? ) # sdl92.g:971:17: active_expression ( ',' expression_list )? pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_active_expression_in_active_expression_list11499) active_expression600 = self.active_expression() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, active_expression600.tree) # sdl92.g:971:35: ( ',' expression_list )? alt169 = 2 LA169_0 = self.input.LA(1) if (LA169_0 == COMMA) : alt169 = 1 if alt169 == 1: # sdl92.g:971:36: ',' expression_list pass char_literal601=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_active_expression_list11502) if self._state.backtracking == 0: char_literal601_tree = self._adaptor.createWithPayload(char_literal601) self._adaptor.addChild(root_0, char_literal601_tree) self._state.following.append(self.FOLLOW_expression_list_in_active_expression_list11504) expression_list602 = self.expression_list() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, expression_list602.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "active_expression_list" class external_synonym_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.external_synonym_return, self).__init__() self.tree = None # $ANTLR start "external_synonym" # sdl92.g:977:1: external_synonym : external_synonym_id ; def external_synonym(self, ): retval = self.external_synonym_return() retval.start = self.input.LT(1) root_0 = None external_synonym_id603 = None try: try: # sdl92.g:978:9: ( external_synonym_id ) # sdl92.g:978:17: external_synonym_id pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_external_synonym_id_in_external_synonym11535) external_synonym_id603 = self.external_synonym_id() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, external_synonym_id603.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "external_synonym" class conditional_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.conditional_expression_return, self).__init__() self.tree = None # $ANTLR start "conditional_expression" # sdl92.g:981:1: conditional_expression : IF ifexpr= expression THEN thenexpr= expression ELSE elseexpr= expression FI -> ^( CONDITIONAL $ifexpr $thenexpr $elseexpr) ; def conditional_expression(self, ): retval = self.conditional_expression_return() retval.start = self.input.LT(1) root_0 = None IF604 = None THEN605 = None ELSE606 = None FI607 = None ifexpr = None thenexpr = None elseexpr = None IF604_tree = None THEN605_tree = None ELSE606_tree = None FI607_tree = None stream_THEN = RewriteRuleTokenStream(self._adaptor, "token THEN") stream_IF = RewriteRuleTokenStream(self._adaptor, "token IF") stream_ELSE = RewriteRuleTokenStream(self._adaptor, "token ELSE") stream_FI = RewriteRuleTokenStream(self._adaptor, "token FI") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") try: try: # sdl92.g:982:9: ( IF ifexpr= expression THEN thenexpr= expression ELSE elseexpr= expression FI -> ^( CONDITIONAL $ifexpr $thenexpr $elseexpr) ) # sdl92.g:982:17: IF ifexpr= expression THEN thenexpr= expression ELSE elseexpr= expression FI pass IF604=self.match(self.input, IF, self.FOLLOW_IF_in_conditional_expression11558) if self._state.backtracking == 0: stream_IF.add(IF604) self._state.following.append(self.FOLLOW_expression_in_conditional_expression11562) ifexpr = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(ifexpr.tree) THEN605=self.match(self.input, THEN, self.FOLLOW_THEN_in_conditional_expression11580) if self._state.backtracking == 0: stream_THEN.add(THEN605) self._state.following.append(self.FOLLOW_expression_in_conditional_expression11584) thenexpr = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(thenexpr.tree) ELSE606=self.match(self.input, ELSE, self.FOLLOW_ELSE_in_conditional_expression11602) if self._state.backtracking == 0: stream_ELSE.add(ELSE606) self._state.following.append(self.FOLLOW_expression_in_conditional_expression11606) elseexpr = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(elseexpr.tree) FI607=self.match(self.input, FI, self.FOLLOW_FI_in_conditional_expression11608) if self._state.backtracking == 0: stream_FI.add(FI607) # AST Rewrite # elements: elseexpr, thenexpr, ifexpr # token labels: # rule labels: elseexpr, retval, ifexpr, thenexpr # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if elseexpr is not None: stream_elseexpr = RewriteRuleSubtreeStream(self._adaptor, "rule elseexpr", elseexpr.tree) else: stream_elseexpr = RewriteRuleSubtreeStream(self._adaptor, "token elseexpr", None) if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) if ifexpr is not None: stream_ifexpr = RewriteRuleSubtreeStream(self._adaptor, "rule ifexpr", ifexpr.tree) else: stream_ifexpr = RewriteRuleSubtreeStream(self._adaptor, "token ifexpr", None) if thenexpr is not None: stream_thenexpr = RewriteRuleSubtreeStream(self._adaptor, "rule thenexpr", thenexpr.tree) else: stream_thenexpr = RewriteRuleSubtreeStream(self._adaptor, "token thenexpr", None) root_0 = self._adaptor.nil() # 985:9: -> ^( CONDITIONAL $ifexpr $thenexpr $elseexpr) # sdl92.g:985:17: ^( CONDITIONAL $ifexpr $thenexpr $elseexpr) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(CONDITIONAL, "CONDITIONAL"), root_1) self._adaptor.addChild(root_1, stream_ifexpr.nextTree()) self._adaptor.addChild(root_1, stream_thenexpr.nextTree()) self._adaptor.addChild(root_1, stream_elseexpr.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "conditional_expression" class expression_list_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.expression_list_return, self).__init__() self.tree = None # $ANTLR start "expression_list" # sdl92.g:988:1: expression_list : expression ( ',' expression )* -> ( expression )+ ; def expression_list(self, ): retval = self.expression_list_return() retval.start = self.input.LT(1) root_0 = None char_literal609 = None expression608 = None expression610 = None char_literal609_tree = None stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") try: try: # sdl92.g:989:9: ( expression ( ',' expression )* -> ( expression )+ ) # sdl92.g:989:17: expression ( ',' expression )* pass self._state.following.append(self.FOLLOW_expression_in_expression_list11659) expression608 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression608.tree) # sdl92.g:989:28: ( ',' expression )* while True: #loop170 alt170 = 2 LA170_0 = self.input.LA(1) if (LA170_0 == COMMA) : alt170 = 1 if alt170 == 1: # sdl92.g:989:29: ',' expression pass char_literal609=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_expression_list11662) if self._state.backtracking == 0: stream_COMMA.add(char_literal609) self._state.following.append(self.FOLLOW_expression_in_expression_list11664) expression610 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression610.tree) else: break #loop170 # AST Rewrite # elements: expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 990:9: -> ( expression )+ # sdl92.g:990:17: ( expression )+ if not (stream_expression.hasNext()): raise RewriteEarlyExitException() while stream_expression.hasNext(): self._adaptor.addChild(root_0, stream_expression.nextTree()) stream_expression.reset() retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "expression_list" class terminator_statement_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.terminator_statement_return, self).__init__() self.tree = None # $ANTLR start "terminator_statement" # sdl92.g:993:1: terminator_statement : ( label )? ( cif )? ( hyperlink )? terminator end -> ^( TERMINATOR ( label )? ( cif )? ( hyperlink )? ( end )? terminator ) ; def terminator_statement(self, ): retval = self.terminator_statement_return() retval.start = self.input.LT(1) root_0 = None label611 = None cif612 = None hyperlink613 = None terminator614 = None end615 = None stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_terminator = RewriteRuleSubtreeStream(self._adaptor, "rule terminator") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") stream_label = RewriteRuleSubtreeStream(self._adaptor, "rule label") stream_end = RewriteRuleSubtreeStream(self._adaptor, "rule end") try: try: # sdl92.g:994:9: ( ( label )? ( cif )? ( hyperlink )? terminator end -> ^( TERMINATOR ( label )? ( cif )? ( hyperlink )? ( end )? terminator ) ) # sdl92.g:994:17: ( label )? ( cif )? ( hyperlink )? terminator end pass # sdl92.g:994:17: ( label )? alt171 = 2 alt171 = self.dfa171.predict(self.input) if alt171 == 1: # sdl92.g:0:0: label pass self._state.following.append(self.FOLLOW_label_in_terminator_statement11707) label611 = self.label() self._state.following.pop() if self._state.backtracking == 0: stream_label.add(label611.tree) # sdl92.g:995:17: ( cif )? alt172 = 2 LA172_0 = self.input.LA(1) if (LA172_0 == 218) : LA172_1 = self.input.LA(2) if (LA172_1 == ANSWER or LA172_1 == COMMENT or LA172_1 == CONNECT or LA172_1 == DECISION or LA172_1 == INPUT or (JOIN <= LA172_1 <= LABEL) or LA172_1 == NEXTSTATE or LA172_1 == OUTPUT or (PROCEDURE <= LA172_1 <= PROCEDURE_CALL) or (PROCESS <= LA172_1 <= PROVIDED) or LA172_1 == RETURN or LA172_1 == STATE or LA172_1 == STOP or LA172_1 == TASK or LA172_1 == TEXT or LA172_1 == START) : alt172 = 1 if alt172 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_terminator_statement11726) cif612 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif612.tree) # sdl92.g:996:17: ( hyperlink )? alt173 = 2 LA173_0 = self.input.LA(1) if (LA173_0 == 218) : alt173 = 1 if alt173 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_terminator_statement11745) hyperlink613 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink613.tree) self._state.following.append(self.FOLLOW_terminator_in_terminator_statement11764) terminator614 = self.terminator() self._state.following.pop() if self._state.backtracking == 0: stream_terminator.add(terminator614.tree) self._state.following.append(self.FOLLOW_end_in_terminator_statement11782) end615 = self.end() self._state.following.pop() if self._state.backtracking == 0: stream_end.add(end615.tree) # AST Rewrite # elements: label, end, terminator, cif, hyperlink # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 999:9: -> ^( TERMINATOR ( label )? ( cif )? ( hyperlink )? ( end )? terminator ) # sdl92.g:999:17: ^( TERMINATOR ( label )? ( cif )? ( hyperlink )? ( end )? terminator ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(TERMINATOR, "TERMINATOR"), root_1) # sdl92.g:999:30: ( label )? if stream_label.hasNext(): self._adaptor.addChild(root_1, stream_label.nextTree()) stream_label.reset(); # sdl92.g:999:37: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:999:42: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); # sdl92.g:999:53: ( end )? if stream_end.hasNext(): self._adaptor.addChild(root_1, stream_end.nextTree()) stream_end.reset(); self._adaptor.addChild(root_1, stream_terminator.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "terminator_statement" class label_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.label_return, self).__init__() self.tree = None # $ANTLR start "label" # sdl92.g:1001:1: label : ( cif )? connector_name ':' -> ^( LABEL ( cif )? connector_name ) ; def label(self, ): retval = self.label_return() retval.start = self.input.LT(1) root_0 = None char_literal618 = None cif616 = None connector_name617 = None char_literal618_tree = None stream_213 = RewriteRuleTokenStream(self._adaptor, "token 213") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_connector_name = RewriteRuleSubtreeStream(self._adaptor, "rule connector_name") try: try: # sdl92.g:1002:9: ( ( cif )? connector_name ':' -> ^( LABEL ( cif )? connector_name ) ) # sdl92.g:1002:17: ( cif )? connector_name ':' pass # sdl92.g:1002:17: ( cif )? alt174 = 2 LA174_0 = self.input.LA(1) if (LA174_0 == 218) : alt174 = 1 if alt174 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_label11837) cif616 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif616.tree) self._state.following.append(self.FOLLOW_connector_name_in_label11840) connector_name617 = self.connector_name() self._state.following.pop() if self._state.backtracking == 0: stream_connector_name.add(connector_name617.tree) char_literal618=self.match(self.input, 213, self.FOLLOW_213_in_label11842) if self._state.backtracking == 0: stream_213.add(char_literal618) # AST Rewrite # elements: connector_name, cif # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1003:9: -> ^( LABEL ( cif )? connector_name ) # sdl92.g:1003:17: ^( LABEL ( cif )? connector_name ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(LABEL, "LABEL"), root_1) # sdl92.g:1003:25: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); self._adaptor.addChild(root_1, stream_connector_name.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "label" class terminator_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.terminator_return, self).__init__() self.tree = None # $ANTLR start "terminator" # sdl92.g:1006:1: terminator : ( nextstate | join | stop | return_stmt ); def terminator(self, ): retval = self.terminator_return() retval.start = self.input.LT(1) root_0 = None nextstate619 = None join620 = None stop621 = None return_stmt622 = None try: try: # sdl92.g:1007:9: ( nextstate | join | stop | return_stmt ) alt175 = 4 LA175 = self.input.LA(1) if LA175 == NEXTSTATE: alt175 = 1 elif LA175 == JOIN: alt175 = 2 elif LA175 == STOP: alt175 = 3 elif LA175 == RETURN: alt175 = 4 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 175, 0, self.input) raise nvae if alt175 == 1: # sdl92.g:1007:17: nextstate pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_nextstate_in_terminator11889) nextstate619 = self.nextstate() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, nextstate619.tree) elif alt175 == 2: # sdl92.g:1007:29: join pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_join_in_terminator11893) join620 = self.join() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, join620.tree) elif alt175 == 3: # sdl92.g:1007:36: stop pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_stop_in_terminator11897) stop621 = self.stop() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, stop621.tree) elif alt175 == 4: # sdl92.g:1007:43: return_stmt pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_return_stmt_in_terminator11901) return_stmt622 = self.return_stmt() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, return_stmt622.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "terminator" class join_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.join_return, self).__init__() self.tree = None # $ANTLR start "join" # sdl92.g:1010:1: join : JOIN connector_name -> ^( JOIN connector_name ) ; def join(self, ): retval = self.join_return() retval.start = self.input.LT(1) root_0 = None JOIN623 = None connector_name624 = None JOIN623_tree = None stream_JOIN = RewriteRuleTokenStream(self._adaptor, "token JOIN") stream_connector_name = RewriteRuleSubtreeStream(self._adaptor, "rule connector_name") try: try: # sdl92.g:1011:9: ( JOIN connector_name -> ^( JOIN connector_name ) ) # sdl92.g:1011:18: JOIN connector_name pass JOIN623=self.match(self.input, JOIN, self.FOLLOW_JOIN_in_join11925) if self._state.backtracking == 0: stream_JOIN.add(JOIN623) self._state.following.append(self.FOLLOW_connector_name_in_join11927) connector_name624 = self.connector_name() self._state.following.pop() if self._state.backtracking == 0: stream_connector_name.add(connector_name624.tree) # AST Rewrite # elements: JOIN, connector_name # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1012:9: -> ^( JOIN connector_name ) # sdl92.g:1012:18: ^( JOIN connector_name ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_JOIN.nextNode(), root_1) self._adaptor.addChild(root_1, stream_connector_name.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "join" class stop_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.stop_return, self).__init__() self.tree = None # $ANTLR start "stop" # sdl92.g:1015:1: stop : STOP ; def stop(self, ): retval = self.stop_return() retval.start = self.input.LT(1) root_0 = None STOP625 = None STOP625_tree = None try: try: # sdl92.g:1015:9: ( STOP ) # sdl92.g:1015:17: STOP pass root_0 = self._adaptor.nil() STOP625=self.match(self.input, STOP, self.FOLLOW_STOP_in_stop11967) if self._state.backtracking == 0: STOP625_tree = self._adaptor.createWithPayload(STOP625) self._adaptor.addChild(root_0, STOP625_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "stop" class return_stmt_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.return_stmt_return, self).__init__() self.tree = None # $ANTLR start "return_stmt" # sdl92.g:1018:1: return_stmt : RETURN ( expression )? -> ^( RETURN ( expression )? ) ; def return_stmt(self, ): retval = self.return_stmt_return() retval.start = self.input.LT(1) root_0 = None RETURN626 = None expression627 = None RETURN626_tree = None stream_RETURN = RewriteRuleTokenStream(self._adaptor, "token RETURN") stream_expression = RewriteRuleSubtreeStream(self._adaptor, "rule expression") try: try: # sdl92.g:1019:9: ( RETURN ( expression )? -> ^( RETURN ( expression )? ) ) # sdl92.g:1019:17: RETURN ( expression )? pass RETURN626=self.match(self.input, RETURN, self.FOLLOW_RETURN_in_return_stmt11990) if self._state.backtracking == 0: stream_RETURN.add(RETURN626) # sdl92.g:1019:24: ( expression )? alt176 = 2 LA176_0 = self.input.LA(1) if (LA176_0 == BITSTR or LA176_0 == FLOAT or LA176_0 == IF or LA176_0 == OCTSTR or LA176_0 == STRING or LA176_0 == INT or LA176_0 == L_PAREN or LA176_0 == ID or LA176_0 == DASH or (NOT <= LA176_0 <= MINUS_INFINITY) or LA176_0 == L_BRACKET) : alt176 = 1 if alt176 == 1: # sdl92.g:0:0: expression pass self._state.following.append(self.FOLLOW_expression_in_return_stmt11992) expression627 = self.expression() self._state.following.pop() if self._state.backtracking == 0: stream_expression.add(expression627.tree) # AST Rewrite # elements: RETURN, expression # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1020:9: -> ^( RETURN ( expression )? ) # sdl92.g:1020:17: ^( RETURN ( expression )? ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_RETURN.nextNode(), root_1) # sdl92.g:1020:26: ( expression )? if stream_expression.hasNext(): self._adaptor.addChild(root_1, stream_expression.nextTree()) stream_expression.reset(); self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "return_stmt" class nextstate_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.nextstate_return, self).__init__() self.tree = None # $ANTLR start "nextstate" # sdl92.g:1023:1: nextstate : NEXTSTATE nextstatebody -> ^( NEXTSTATE nextstatebody ) ; def nextstate(self, ): retval = self.nextstate_return() retval.start = self.input.LT(1) root_0 = None NEXTSTATE628 = None nextstatebody629 = None NEXTSTATE628_tree = None stream_NEXTSTATE = RewriteRuleTokenStream(self._adaptor, "token NEXTSTATE") stream_nextstatebody = RewriteRuleSubtreeStream(self._adaptor, "rule nextstatebody") try: try: # sdl92.g:1024:9: ( NEXTSTATE nextstatebody -> ^( NEXTSTATE nextstatebody ) ) # sdl92.g:1024:17: NEXTSTATE nextstatebody pass NEXTSTATE628=self.match(self.input, NEXTSTATE, self.FOLLOW_NEXTSTATE_in_nextstate12038) if self._state.backtracking == 0: stream_NEXTSTATE.add(NEXTSTATE628) self._state.following.append(self.FOLLOW_nextstatebody_in_nextstate12040) nextstatebody629 = self.nextstatebody() self._state.following.pop() if self._state.backtracking == 0: stream_nextstatebody.add(nextstatebody629.tree) # AST Rewrite # elements: nextstatebody, NEXTSTATE # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1025:9: -> ^( NEXTSTATE nextstatebody ) # sdl92.g:1025:17: ^( NEXTSTATE nextstatebody ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_NEXTSTATE.nextNode(), root_1) self._adaptor.addChild(root_1, stream_nextstatebody.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "nextstate" class nextstatebody_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.nextstatebody_return, self).__init__() self.tree = None # $ANTLR start "nextstatebody" # sdl92.g:1028:1: nextstatebody : ( statename ( via )? | dash_nextstate ); def nextstatebody(self, ): retval = self.nextstatebody_return() retval.start = self.input.LT(1) root_0 = None statename630 = None via631 = None dash_nextstate632 = None try: try: # sdl92.g:1029:9: ( statename ( via )? | dash_nextstate ) alt178 = 2 LA178_0 = self.input.LA(1) if (LA178_0 == ID) : alt178 = 1 elif (LA178_0 == DASH) : alt178 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 178, 0, self.input) raise nvae if alt178 == 1: # sdl92.g:1029:17: statename ( via )? pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_statename_in_nextstatebody12084) statename630 = self.statename() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, statename630.tree) # sdl92.g:1029:27: ( via )? alt177 = 2 LA177_0 = self.input.LA(1) if (LA177_0 == VIA) : alt177 = 1 if alt177 == 1: # sdl92.g:0:0: via pass self._state.following.append(self.FOLLOW_via_in_nextstatebody12086) via631 = self.via() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, via631.tree) elif alt178 == 2: # sdl92.g:1030:19: dash_nextstate pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_dash_nextstate_in_nextstatebody12107) dash_nextstate632 = self.dash_nextstate() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, dash_nextstate632.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "nextstatebody" class via_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.via_return, self).__init__() self.tree = None # $ANTLR start "via" # sdl92.g:1033:1: via : VIA state_entry_point_name -> ^( VIA state_entry_point_name ) ; def via(self, ): retval = self.via_return() retval.start = self.input.LT(1) root_0 = None VIA633 = None state_entry_point_name634 = None VIA633_tree = None stream_VIA = RewriteRuleTokenStream(self._adaptor, "token VIA") stream_state_entry_point_name = RewriteRuleSubtreeStream(self._adaptor, "rule state_entry_point_name") try: try: # sdl92.g:1033:9: ( VIA state_entry_point_name -> ^( VIA state_entry_point_name ) ) # sdl92.g:1033:17: VIA state_entry_point_name pass VIA633=self.match(self.input, VIA, self.FOLLOW_VIA_in_via12126) if self._state.backtracking == 0: stream_VIA.add(VIA633) self._state.following.append(self.FOLLOW_state_entry_point_name_in_via12128) state_entry_point_name634 = self.state_entry_point_name() self._state.following.pop() if self._state.backtracking == 0: stream_state_entry_point_name.add(state_entry_point_name634.tree) # AST Rewrite # elements: state_entry_point_name, VIA # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1034:9: -> ^( VIA state_entry_point_name ) # sdl92.g:1034:17: ^( VIA state_entry_point_name ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_VIA.nextNode(), root_1) self._adaptor.addChild(root_1, stream_state_entry_point_name.nextTree()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "via" class end_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.end_return, self).__init__() self.tree = None # $ANTLR start "end" # sdl92.g:1037:1: end : ( ( cif )? ( hyperlink )? COMMENT STRING )? SEMI -> ( ^( COMMENT ( cif )? ( hyperlink )? STRING ) )? ; def end(self, ): retval = self.end_return() retval.start = self.input.LT(1) root_0 = None COMMENT637 = None STRING638 = None SEMI639 = None cif635 = None hyperlink636 = None COMMENT637_tree = None STRING638_tree = None SEMI639_tree = None stream_COMMENT = RewriteRuleTokenStream(self._adaptor, "token COMMENT") stream_SEMI = RewriteRuleTokenStream(self._adaptor, "token SEMI") stream_STRING = RewriteRuleTokenStream(self._adaptor, "token STRING") stream_cif = RewriteRuleSubtreeStream(self._adaptor, "rule cif") stream_hyperlink = RewriteRuleSubtreeStream(self._adaptor, "rule hyperlink") try: try: # sdl92.g:1038:9: ( ( ( cif )? ( hyperlink )? COMMENT STRING )? SEMI -> ( ^( COMMENT ( cif )? ( hyperlink )? STRING ) )? ) # sdl92.g:1038:13: ( ( cif )? ( hyperlink )? COMMENT STRING )? SEMI pass # sdl92.g:1038:13: ( ( cif )? ( hyperlink )? COMMENT STRING )? alt181 = 2 LA181_0 = self.input.LA(1) if (LA181_0 == COMMENT or LA181_0 == 218) : alt181 = 1 if alt181 == 1: # sdl92.g:1038:14: ( cif )? ( hyperlink )? COMMENT STRING pass # sdl92.g:1038:14: ( cif )? alt179 = 2 LA179_0 = self.input.LA(1) if (LA179_0 == 218) : LA179_1 = self.input.LA(2) if (LA179_1 == ANSWER or LA179_1 == COMMENT or LA179_1 == CONNECT or LA179_1 == DECISION or LA179_1 == INPUT or (JOIN <= LA179_1 <= LABEL) or LA179_1 == NEXTSTATE or LA179_1 == OUTPUT or (PROCEDURE <= LA179_1 <= PROCEDURE_CALL) or (PROCESS <= LA179_1 <= PROVIDED) or LA179_1 == RETURN or LA179_1 == STATE or LA179_1 == STOP or LA179_1 == TASK or LA179_1 == TEXT or LA179_1 == START) : alt179 = 1 if alt179 == 1: # sdl92.g:0:0: cif pass self._state.following.append(self.FOLLOW_cif_in_end12169) cif635 = self.cif() self._state.following.pop() if self._state.backtracking == 0: stream_cif.add(cif635.tree) # sdl92.g:1038:19: ( hyperlink )? alt180 = 2 LA180_0 = self.input.LA(1) if (LA180_0 == 218) : alt180 = 1 if alt180 == 1: # sdl92.g:0:0: hyperlink pass self._state.following.append(self.FOLLOW_hyperlink_in_end12172) hyperlink636 = self.hyperlink() self._state.following.pop() if self._state.backtracking == 0: stream_hyperlink.add(hyperlink636.tree) COMMENT637=self.match(self.input, COMMENT, self.FOLLOW_COMMENT_in_end12175) if self._state.backtracking == 0: stream_COMMENT.add(COMMENT637) STRING638=self.match(self.input, STRING, self.FOLLOW_STRING_in_end12177) if self._state.backtracking == 0: stream_STRING.add(STRING638) SEMI639=self.match(self.input, SEMI, self.FOLLOW_SEMI_in_end12181) if self._state.backtracking == 0: stream_SEMI.add(SEMI639) # AST Rewrite # elements: COMMENT, hyperlink, STRING, cif # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1039:9: -> ( ^( COMMENT ( cif )? ( hyperlink )? STRING ) )? # sdl92.g:1039:12: ( ^( COMMENT ( cif )? ( hyperlink )? STRING ) )? if stream_COMMENT.hasNext() or stream_hyperlink.hasNext() or stream_STRING.hasNext() or stream_cif.hasNext(): # sdl92.g:1039:12: ^( COMMENT ( cif )? ( hyperlink )? STRING ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_COMMENT.nextNode(), root_1) # sdl92.g:1039:22: ( cif )? if stream_cif.hasNext(): self._adaptor.addChild(root_1, stream_cif.nextTree()) stream_cif.reset(); # sdl92.g:1039:27: ( hyperlink )? if stream_hyperlink.hasNext(): self._adaptor.addChild(root_1, stream_hyperlink.nextTree()) stream_hyperlink.reset(); self._adaptor.addChild(root_1, stream_STRING.nextNode()) self._adaptor.addChild(root_0, root_1) stream_COMMENT.reset(); stream_hyperlink.reset(); stream_STRING.reset(); stream_cif.reset(); retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "end" class cif_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.cif_return, self).__init__() self.tree = None # $ANTLR start "cif" # sdl92.g:1042:1: cif : cif_decl symbolname L_PAREN x= INT COMMA y= INT R_PAREN COMMA L_PAREN width= INT COMMA height= INT R_PAREN cif_end -> ^( CIF $x $y $width $height) ; def cif(self, ): retval = self.cif_return() retval.start = self.input.LT(1) root_0 = None x = None y = None width = None height = None L_PAREN642 = None COMMA643 = None R_PAREN644 = None COMMA645 = None L_PAREN646 = None COMMA647 = None R_PAREN648 = None cif_decl640 = None symbolname641 = None cif_end649 = None x_tree = None y_tree = None width_tree = None height_tree = None L_PAREN642_tree = None COMMA643_tree = None R_PAREN644_tree = None COMMA645_tree = None L_PAREN646_tree = None COMMA647_tree = None R_PAREN648_tree = None stream_INT = RewriteRuleTokenStream(self._adaptor, "token INT") stream_COMMA = RewriteRuleTokenStream(self._adaptor, "token COMMA") stream_R_PAREN = RewriteRuleTokenStream(self._adaptor, "token R_PAREN") stream_L_PAREN = RewriteRuleTokenStream(self._adaptor, "token L_PAREN") stream_symbolname = RewriteRuleSubtreeStream(self._adaptor, "rule symbolname") stream_cif_end = RewriteRuleSubtreeStream(self._adaptor, "rule cif_end") stream_cif_decl = RewriteRuleSubtreeStream(self._adaptor, "rule cif_decl") try: try: # sdl92.g:1043:9: ( cif_decl symbolname L_PAREN x= INT COMMA y= INT R_PAREN COMMA L_PAREN width= INT COMMA height= INT R_PAREN cif_end -> ^( CIF $x $y $width $height) ) # sdl92.g:1043:17: cif_decl symbolname L_PAREN x= INT COMMA y= INT R_PAREN COMMA L_PAREN width= INT COMMA height= INT R_PAREN cif_end pass self._state.following.append(self.FOLLOW_cif_decl_in_cif12227) cif_decl640 = self.cif_decl() self._state.following.pop() if self._state.backtracking == 0: stream_cif_decl.add(cif_decl640.tree) self._state.following.append(self.FOLLOW_symbolname_in_cif12229) symbolname641 = self.symbolname() self._state.following.pop() if self._state.backtracking == 0: stream_symbolname.add(symbolname641.tree) L_PAREN642=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_cif12247) if self._state.backtracking == 0: stream_L_PAREN.add(L_PAREN642) x=self.match(self.input, INT, self.FOLLOW_INT_in_cif12251) if self._state.backtracking == 0: stream_INT.add(x) COMMA643=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_cif12253) if self._state.backtracking == 0: stream_COMMA.add(COMMA643) y=self.match(self.input, INT, self.FOLLOW_INT_in_cif12257) if self._state.backtracking == 0: stream_INT.add(y) R_PAREN644=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_cif12259) if self._state.backtracking == 0: stream_R_PAREN.add(R_PAREN644) COMMA645=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_cif12277) if self._state.backtracking == 0: stream_COMMA.add(COMMA645) L_PAREN646=self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_cif12295) if self._state.backtracking == 0: stream_L_PAREN.add(L_PAREN646) width=self.match(self.input, INT, self.FOLLOW_INT_in_cif12299) if self._state.backtracking == 0: stream_INT.add(width) COMMA647=self.match(self.input, COMMA, self.FOLLOW_COMMA_in_cif12301) if self._state.backtracking == 0: stream_COMMA.add(COMMA647) height=self.match(self.input, INT, self.FOLLOW_INT_in_cif12305) if self._state.backtracking == 0: stream_INT.add(height) R_PAREN648=self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_cif12307) if self._state.backtracking == 0: stream_R_PAREN.add(R_PAREN648) self._state.following.append(self.FOLLOW_cif_end_in_cif12325) cif_end649 = self.cif_end() self._state.following.pop() if self._state.backtracking == 0: stream_cif_end.add(cif_end649.tree) # AST Rewrite # elements: y, x, width, height # token labels: height, width, y, x # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 stream_height = RewriteRuleTokenStream(self._adaptor, "token height", height) stream_width = RewriteRuleTokenStream(self._adaptor, "token width", width) stream_y = RewriteRuleTokenStream(self._adaptor, "token y", y) stream_x = RewriteRuleTokenStream(self._adaptor, "token x", x) if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1048:9: -> ^( CIF $x $y $width $height) # sdl92.g:1048:17: ^( CIF $x $y $width $height) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(CIF, "CIF"), root_1) self._adaptor.addChild(root_1, stream_x.nextNode()) self._adaptor.addChild(root_1, stream_y.nextNode()) self._adaptor.addChild(root_1, stream_width.nextNode()) self._adaptor.addChild(root_1, stream_height.nextNode()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "cif" class hyperlink_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.hyperlink_return, self).__init__() self.tree = None # $ANTLR start "hyperlink" # sdl92.g:1051:1: hyperlink : cif_decl KEEP SPECIFIC GEODE HYPERLINK STRING cif_end -> ^( HYPERLINK STRING ) ; def hyperlink(self, ): retval = self.hyperlink_return() retval.start = self.input.LT(1) root_0 = None KEEP651 = None SPECIFIC652 = None GEODE653 = None HYPERLINK654 = None STRING655 = None cif_decl650 = None cif_end656 = None KEEP651_tree = None SPECIFIC652_tree = None GEODE653_tree = None HYPERLINK654_tree = None STRING655_tree = None stream_SPECIFIC = RewriteRuleTokenStream(self._adaptor, "token SPECIFIC") stream_KEEP = RewriteRuleTokenStream(self._adaptor, "token KEEP") stream_HYPERLINK = RewriteRuleTokenStream(self._adaptor, "token HYPERLINK") stream_GEODE = RewriteRuleTokenStream(self._adaptor, "token GEODE") stream_STRING = RewriteRuleTokenStream(self._adaptor, "token STRING") stream_cif_end = RewriteRuleSubtreeStream(self._adaptor, "rule cif_end") stream_cif_decl = RewriteRuleSubtreeStream(self._adaptor, "rule cif_decl") try: try: # sdl92.g:1052:9: ( cif_decl KEEP SPECIFIC GEODE HYPERLINK STRING cif_end -> ^( HYPERLINK STRING ) ) # sdl92.g:1052:17: cif_decl KEEP SPECIFIC GEODE HYPERLINK STRING cif_end pass self._state.following.append(self.FOLLOW_cif_decl_in_hyperlink12379) cif_decl650 = self.cif_decl() self._state.following.pop() if self._state.backtracking == 0: stream_cif_decl.add(cif_decl650.tree) KEEP651=self.match(self.input, KEEP, self.FOLLOW_KEEP_in_hyperlink12381) if self._state.backtracking == 0: stream_KEEP.add(KEEP651) SPECIFIC652=self.match(self.input, SPECIFIC, self.FOLLOW_SPECIFIC_in_hyperlink12383) if self._state.backtracking == 0: stream_SPECIFIC.add(SPECIFIC652) GEODE653=self.match(self.input, GEODE, self.FOLLOW_GEODE_in_hyperlink12385) if self._state.backtracking == 0: stream_GEODE.add(GEODE653) HYPERLINK654=self.match(self.input, HYPERLINK, self.FOLLOW_HYPERLINK_in_hyperlink12387) if self._state.backtracking == 0: stream_HYPERLINK.add(HYPERLINK654) STRING655=self.match(self.input, STRING, self.FOLLOW_STRING_in_hyperlink12389) if self._state.backtracking == 0: stream_STRING.add(STRING655) self._state.following.append(self.FOLLOW_cif_end_in_hyperlink12407) cif_end656 = self.cif_end() self._state.following.pop() if self._state.backtracking == 0: stream_cif_end.add(cif_end656.tree) # AST Rewrite # elements: STRING, HYPERLINK # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1054:9: -> ^( HYPERLINK STRING ) # sdl92.g:1054:17: ^( HYPERLINK STRING ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_HYPERLINK.nextNode(), root_1) self._adaptor.addChild(root_1, stream_STRING.nextNode()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "hyperlink" class paramnames_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.paramnames_return, self).__init__() self.tree = None # $ANTLR start "paramnames" # sdl92.g:1063:1: paramnames : cif_decl KEEP SPECIFIC GEODE PARAMNAMES ( field_name )+ cif_end -> ^( PARAMNAMES ( field_name )+ ) ; def paramnames(self, ): retval = self.paramnames_return() retval.start = self.input.LT(1) root_0 = None KEEP658 = None SPECIFIC659 = None GEODE660 = None PARAMNAMES661 = None cif_decl657 = None field_name662 = None cif_end663 = None KEEP658_tree = None SPECIFIC659_tree = None GEODE660_tree = None PARAMNAMES661_tree = None stream_SPECIFIC = RewriteRuleTokenStream(self._adaptor, "token SPECIFIC") stream_PARAMNAMES = RewriteRuleTokenStream(self._adaptor, "token PARAMNAMES") stream_KEEP = RewriteRuleTokenStream(self._adaptor, "token KEEP") stream_GEODE = RewriteRuleTokenStream(self._adaptor, "token GEODE") stream_field_name = RewriteRuleSubtreeStream(self._adaptor, "rule field_name") stream_cif_end = RewriteRuleSubtreeStream(self._adaptor, "rule cif_end") stream_cif_decl = RewriteRuleSubtreeStream(self._adaptor, "rule cif_decl") try: try: # sdl92.g:1064:9: ( cif_decl KEEP SPECIFIC GEODE PARAMNAMES ( field_name )+ cif_end -> ^( PARAMNAMES ( field_name )+ ) ) # sdl92.g:1064:17: cif_decl KEEP SPECIFIC GEODE PARAMNAMES ( field_name )+ cif_end pass self._state.following.append(self.FOLLOW_cif_decl_in_paramnames12452) cif_decl657 = self.cif_decl() self._state.following.pop() if self._state.backtracking == 0: stream_cif_decl.add(cif_decl657.tree) KEEP658=self.match(self.input, KEEP, self.FOLLOW_KEEP_in_paramnames12454) if self._state.backtracking == 0: stream_KEEP.add(KEEP658) SPECIFIC659=self.match(self.input, SPECIFIC, self.FOLLOW_SPECIFIC_in_paramnames12456) if self._state.backtracking == 0: stream_SPECIFIC.add(SPECIFIC659) GEODE660=self.match(self.input, GEODE, self.FOLLOW_GEODE_in_paramnames12458) if self._state.backtracking == 0: stream_GEODE.add(GEODE660) PARAMNAMES661=self.match(self.input, PARAMNAMES, self.FOLLOW_PARAMNAMES_in_paramnames12460) if self._state.backtracking == 0: stream_PARAMNAMES.add(PARAMNAMES661) # sdl92.g:1064:57: ( field_name )+ cnt182 = 0 while True: #loop182 alt182 = 2 LA182_0 = self.input.LA(1) if (LA182_0 == ID) : alt182 = 1 if alt182 == 1: # sdl92.g:0:0: field_name pass self._state.following.append(self.FOLLOW_field_name_in_paramnames12462) field_name662 = self.field_name() self._state.following.pop() if self._state.backtracking == 0: stream_field_name.add(field_name662.tree) else: if cnt182 >= 1: break #loop182 if self._state.backtracking > 0: raise BacktrackingFailed eee = EarlyExitException(182, self.input) raise eee cnt182 += 1 self._state.following.append(self.FOLLOW_cif_end_in_paramnames12465) cif_end663 = self.cif_end() self._state.following.pop() if self._state.backtracking == 0: stream_cif_end.add(cif_end663.tree) # AST Rewrite # elements: field_name, PARAMNAMES # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1065:9: -> ^( PARAMNAMES ( field_name )+ ) # sdl92.g:1065:17: ^( PARAMNAMES ( field_name )+ ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_PARAMNAMES.nextNode(), root_1) # sdl92.g:1065:30: ( field_name )+ if not (stream_field_name.hasNext()): raise RewriteEarlyExitException() while stream_field_name.hasNext(): self._adaptor.addChild(root_1, stream_field_name.nextTree()) stream_field_name.reset() self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "paramnames" class use_asn1_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.use_asn1_return, self).__init__() self.tree = None # $ANTLR start "use_asn1" # sdl92.g:1072:1: use_asn1 : cif_decl KEEP SPECIFIC GEODE ASNFILENAME STRING cif_end -> ^( ASN1 STRING ) ; def use_asn1(self, ): retval = self.use_asn1_return() retval.start = self.input.LT(1) root_0 = None KEEP665 = None SPECIFIC666 = None GEODE667 = None ASNFILENAME668 = None STRING669 = None cif_decl664 = None cif_end670 = None KEEP665_tree = None SPECIFIC666_tree = None GEODE667_tree = None ASNFILENAME668_tree = None STRING669_tree = None stream_ASNFILENAME = RewriteRuleTokenStream(self._adaptor, "token ASNFILENAME") stream_SPECIFIC = RewriteRuleTokenStream(self._adaptor, "token SPECIFIC") stream_KEEP = RewriteRuleTokenStream(self._adaptor, "token KEEP") stream_GEODE = RewriteRuleTokenStream(self._adaptor, "token GEODE") stream_STRING = RewriteRuleTokenStream(self._adaptor, "token STRING") stream_cif_end = RewriteRuleSubtreeStream(self._adaptor, "rule cif_end") stream_cif_decl = RewriteRuleSubtreeStream(self._adaptor, "rule cif_decl") try: try: # sdl92.g:1073:9: ( cif_decl KEEP SPECIFIC GEODE ASNFILENAME STRING cif_end -> ^( ASN1 STRING ) ) # sdl92.g:1073:17: cif_decl KEEP SPECIFIC GEODE ASNFILENAME STRING cif_end pass self._state.following.append(self.FOLLOW_cif_decl_in_use_asn112512) cif_decl664 = self.cif_decl() self._state.following.pop() if self._state.backtracking == 0: stream_cif_decl.add(cif_decl664.tree) KEEP665=self.match(self.input, KEEP, self.FOLLOW_KEEP_in_use_asn112514) if self._state.backtracking == 0: stream_KEEP.add(KEEP665) SPECIFIC666=self.match(self.input, SPECIFIC, self.FOLLOW_SPECIFIC_in_use_asn112516) if self._state.backtracking == 0: stream_SPECIFIC.add(SPECIFIC666) GEODE667=self.match(self.input, GEODE, self.FOLLOW_GEODE_in_use_asn112518) if self._state.backtracking == 0: stream_GEODE.add(GEODE667) ASNFILENAME668=self.match(self.input, ASNFILENAME, self.FOLLOW_ASNFILENAME_in_use_asn112520) if self._state.backtracking == 0: stream_ASNFILENAME.add(ASNFILENAME668) STRING669=self.match(self.input, STRING, self.FOLLOW_STRING_in_use_asn112522) if self._state.backtracking == 0: stream_STRING.add(STRING669) self._state.following.append(self.FOLLOW_cif_end_in_use_asn112524) cif_end670 = self.cif_end() self._state.following.pop() if self._state.backtracking == 0: stream_cif_end.add(cif_end670.tree) # AST Rewrite # elements: STRING # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1074:9: -> ^( ASN1 STRING ) # sdl92.g:1074:17: ^( ASN1 STRING ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(self._adaptor.createFromType(ASN1, "ASN1"), root_1) self._adaptor.addChild(root_1, stream_STRING.nextNode()) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "use_asn1" class symbolname_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.symbolname_return, self).__init__() self.tree = None # $ANTLR start "symbolname" # sdl92.g:1077:1: symbolname : ( START | INPUT | OUTPUT | STATE | PROCEDURE | PROCESS | PROCEDURE_CALL | STOP | RETURN | DECISION | TEXT | TASK | NEXTSTATE | ANSWER | PROVIDED | COMMENT | LABEL | JOIN | CONNECT ); def symbolname(self, ): retval = self.symbolname_return() retval.start = self.input.LT(1) root_0 = None set671 = None set671_tree = None try: try: # sdl92.g:1078:9: ( START | INPUT | OUTPUT | STATE | PROCEDURE | PROCESS | PROCEDURE_CALL | STOP | RETURN | DECISION | TEXT | TASK | NEXTSTATE | ANSWER | PROVIDED | COMMENT | LABEL | JOIN | CONNECT ) # sdl92.g: pass root_0 = self._adaptor.nil() set671 = self.input.LT(1) if self.input.LA(1) == ANSWER or self.input.LA(1) == COMMENT or self.input.LA(1) == CONNECT or self.input.LA(1) == DECISION or self.input.LA(1) == INPUT or (JOIN <= self.input.LA(1) <= LABEL) or self.input.LA(1) == NEXTSTATE or self.input.LA(1) == OUTPUT or (PROCEDURE <= self.input.LA(1) <= PROCEDURE_CALL) or (PROCESS <= self.input.LA(1) <= PROVIDED) or self.input.LA(1) == RETURN or self.input.LA(1) == STATE or self.input.LA(1) == STOP or self.input.LA(1) == TASK or self.input.LA(1) == TEXT or self.input.LA(1) == START: self.input.consume() if self._state.backtracking == 0: self._adaptor.addChild(root_0, self._adaptor.createWithPayload(set671)) self._state.errorRecovery = False else: if self._state.backtracking > 0: raise BacktrackingFailed mse = MismatchedSetException(None, self.input) raise mse retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "symbolname" class cif_decl_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.cif_decl_return, self).__init__() self.tree = None # $ANTLR start "cif_decl" # sdl92.g:1099:1: cif_decl : '/* CIF' ; def cif_decl(self, ): retval = self.cif_decl_return() retval.start = self.input.LT(1) root_0 = None string_literal672 = None string_literal672_tree = None try: try: # sdl92.g:1100:9: ( '/* CIF' ) # sdl92.g:1100:17: '/* CIF' pass root_0 = self._adaptor.nil() string_literal672=self.match(self.input, 218, self.FOLLOW_218_in_cif_decl12951) if self._state.backtracking == 0: string_literal672_tree = self._adaptor.createWithPayload(string_literal672) self._adaptor.addChild(root_0, string_literal672_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "cif_decl" class cif_end_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.cif_end_return, self).__init__() self.tree = None # $ANTLR start "cif_end" # sdl92.g:1103:1: cif_end : '*/' ; def cif_end(self, ): retval = self.cif_end_return() retval.start = self.input.LT(1) root_0 = None string_literal673 = None string_literal673_tree = None try: try: # sdl92.g:1104:9: ( '*/' ) # sdl92.g:1104:17: '*/' pass root_0 = self._adaptor.nil() string_literal673=self.match(self.input, 219, self.FOLLOW_219_in_cif_end12974) if self._state.backtracking == 0: string_literal673_tree = self._adaptor.createWithPayload(string_literal673) self._adaptor.addChild(root_0, string_literal673_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "cif_end" class cif_end_text_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.cif_end_text_return, self).__init__() self.tree = None # $ANTLR start "cif_end_text" # sdl92.g:1107:1: cif_end_text : cif_decl ENDTEXT cif_end -> ^( ENDTEXT ) ; def cif_end_text(self, ): retval = self.cif_end_text_return() retval.start = self.input.LT(1) root_0 = None ENDTEXT675 = None cif_decl674 = None cif_end676 = None ENDTEXT675_tree = None stream_ENDTEXT = RewriteRuleTokenStream(self._adaptor, "token ENDTEXT") stream_cif_end = RewriteRuleSubtreeStream(self._adaptor, "rule cif_end") stream_cif_decl = RewriteRuleSubtreeStream(self._adaptor, "rule cif_decl") try: try: # sdl92.g:1108:9: ( cif_decl ENDTEXT cif_end -> ^( ENDTEXT ) ) # sdl92.g:1108:17: cif_decl ENDTEXT cif_end pass self._state.following.append(self.FOLLOW_cif_decl_in_cif_end_text12997) cif_decl674 = self.cif_decl() self._state.following.pop() if self._state.backtracking == 0: stream_cif_decl.add(cif_decl674.tree) ENDTEXT675=self.match(self.input, ENDTEXT, self.FOLLOW_ENDTEXT_in_cif_end_text12999) if self._state.backtracking == 0: stream_ENDTEXT.add(ENDTEXT675) self._state.following.append(self.FOLLOW_cif_end_in_cif_end_text13001) cif_end676 = self.cif_end() self._state.following.pop() if self._state.backtracking == 0: stream_cif_end.add(cif_end676.tree) # AST Rewrite # elements: ENDTEXT # token labels: # rule labels: retval # token list labels: # rule list labels: # wildcard labels: if self._state.backtracking == 0: retval.tree = root_0 if retval is not None: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "rule retval", retval.tree) else: stream_retval = RewriteRuleSubtreeStream(self._adaptor, "token retval", None) root_0 = self._adaptor.nil() # 1109:9: -> ^( ENDTEXT ) # sdl92.g:1109:17: ^( ENDTEXT ) root_1 = self._adaptor.nil() root_1 = self._adaptor.becomeRoot(stream_ENDTEXT.nextNode(), root_1) self._adaptor.addChild(root_0, root_1) retval.tree = root_0 retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "cif_end_text" class cif_end_label_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.cif_end_label_return, self).__init__() self.tree = None # $ANTLR start "cif_end_label" # sdl92.g:1111:1: cif_end_label : cif_decl END LABEL cif_end ; def cif_end_label(self, ): retval = self.cif_end_label_return() retval.start = self.input.LT(1) root_0 = None END678 = None LABEL679 = None cif_decl677 = None cif_end680 = None END678_tree = None LABEL679_tree = None try: try: # sdl92.g:1112:9: ( cif_decl END LABEL cif_end ) # sdl92.g:1112:17: cif_decl END LABEL cif_end pass root_0 = self._adaptor.nil() self._state.following.append(self.FOLLOW_cif_decl_in_cif_end_label13042) cif_decl677 = self.cif_decl() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, cif_decl677.tree) END678=self.match(self.input, END, self.FOLLOW_END_in_cif_end_label13044) if self._state.backtracking == 0: END678_tree = self._adaptor.createWithPayload(END678) self._adaptor.addChild(root_0, END678_tree) LABEL679=self.match(self.input, LABEL, self.FOLLOW_LABEL_in_cif_end_label13046) if self._state.backtracking == 0: LABEL679_tree = self._adaptor.createWithPayload(LABEL679) self._adaptor.addChild(root_0, LABEL679_tree) self._state.following.append(self.FOLLOW_cif_end_in_cif_end_label13048) cif_end680 = self.cif_end() self._state.following.pop() if self._state.backtracking == 0: self._adaptor.addChild(root_0, cif_end680.tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "cif_end_label" class dash_nextstate_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.dash_nextstate_return, self).__init__() self.tree = None # $ANTLR start "dash_nextstate" # sdl92.g:1115:1: dash_nextstate : DASH ; def dash_nextstate(self, ): retval = self.dash_nextstate_return() retval.start = self.input.LT(1) root_0 = None DASH681 = None DASH681_tree = None try: try: # sdl92.g:1115:17: ( DASH ) # sdl92.g:1115:25: DASH pass root_0 = self._adaptor.nil() DASH681=self.match(self.input, DASH, self.FOLLOW_DASH_in_dash_nextstate13064) if self._state.backtracking == 0: DASH681_tree = self._adaptor.createWithPayload(DASH681) self._adaptor.addChild(root_0, DASH681_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "dash_nextstate" class connector_name_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.connector_name_return, self).__init__() self.tree = None # $ANTLR start "connector_name" # sdl92.g:1116:1: connector_name : ID ; def connector_name(self, ): retval = self.connector_name_return() retval.start = self.input.LT(1) root_0 = None ID682 = None ID682_tree = None try: try: # sdl92.g:1116:17: ( ID ) # sdl92.g:1116:25: ID pass root_0 = self._adaptor.nil() ID682=self.match(self.input, ID, self.FOLLOW_ID_in_connector_name13078) if self._state.backtracking == 0: ID682_tree = self._adaptor.createWithPayload(ID682) self._adaptor.addChild(root_0, ID682_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "connector_name" class signal_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.signal_id_return, self).__init__() self.tree = None # $ANTLR start "signal_id" # sdl92.g:1117:1: signal_id : ID ; def signal_id(self, ): retval = self.signal_id_return() retval.start = self.input.LT(1) root_0 = None ID683 = None ID683_tree = None try: try: # sdl92.g:1117:17: ( ID ) # sdl92.g:1117:25: ID pass root_0 = self._adaptor.nil() ID683=self.match(self.input, ID, self.FOLLOW_ID_in_signal_id13097) if self._state.backtracking == 0: ID683_tree = self._adaptor.createWithPayload(ID683) self._adaptor.addChild(root_0, ID683_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "signal_id" class statename_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.statename_return, self).__init__() self.tree = None # $ANTLR start "statename" # sdl92.g:1118:1: statename : ID ; def statename(self, ): retval = self.statename_return() retval.start = self.input.LT(1) root_0 = None ID684 = None ID684_tree = None try: try: # sdl92.g:1118:17: ( ID ) # sdl92.g:1118:25: ID pass root_0 = self._adaptor.nil() ID684=self.match(self.input, ID, self.FOLLOW_ID_in_statename13116) if self._state.backtracking == 0: ID684_tree = self._adaptor.createWithPayload(ID684) self._adaptor.addChild(root_0, ID684_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "statename" class state_exit_point_name_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.state_exit_point_name_return, self).__init__() self.tree = None # $ANTLR start "state_exit_point_name" # sdl92.g:1119:1: state_exit_point_name : ID ; def state_exit_point_name(self, ): retval = self.state_exit_point_name_return() retval.start = self.input.LT(1) root_0 = None ID685 = None ID685_tree = None try: try: # sdl92.g:1120:17: ( ID ) # sdl92.g:1120:25: ID pass root_0 = self._adaptor.nil() ID685=self.match(self.input, ID, self.FOLLOW_ID_in_state_exit_point_name13145) if self._state.backtracking == 0: ID685_tree = self._adaptor.createWithPayload(ID685) self._adaptor.addChild(root_0, ID685_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "state_exit_point_name" class state_entry_point_name_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.state_entry_point_name_return, self).__init__() self.tree = None # $ANTLR start "state_entry_point_name" # sdl92.g:1121:1: state_entry_point_name : ID ; def state_entry_point_name(self, ): retval = self.state_entry_point_name_return() retval.start = self.input.LT(1) root_0 = None ID686 = None ID686_tree = None try: try: # sdl92.g:1122:17: ( ID ) # sdl92.g:1122:25: ID pass root_0 = self._adaptor.nil() ID686=self.match(self.input, ID, self.FOLLOW_ID_in_state_entry_point_name13174) if self._state.backtracking == 0: ID686_tree = self._adaptor.createWithPayload(ID686) self._adaptor.addChild(root_0, ID686_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "state_entry_point_name" class variable_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.variable_id_return, self).__init__() self.tree = None # $ANTLR start "variable_id" # sdl92.g:1123:1: variable_id : ID ; def variable_id(self, ): retval = self.variable_id_return() retval.start = self.input.LT(1) root_0 = None ID687 = None ID687_tree = None try: try: # sdl92.g:1123:17: ( ID ) # sdl92.g:1123:25: ID pass root_0 = self._adaptor.nil() ID687=self.match(self.input, ID, self.FOLLOW_ID_in_variable_id13191) if self._state.backtracking == 0: ID687_tree = self._adaptor.createWithPayload(ID687) self._adaptor.addChild(root_0, ID687_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "variable_id" class literal_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.literal_id_return, self).__init__() self.tree = None # $ANTLR start "literal_id" # sdl92.g:1124:1: literal_id : ( ID | INT ); def literal_id(self, ): retval = self.literal_id_return() retval.start = self.input.LT(1) root_0 = None set688 = None set688_tree = None try: try: # sdl92.g:1124:17: ( ID | INT ) # sdl92.g: pass root_0 = self._adaptor.nil() set688 = self.input.LT(1) if self.input.LA(1) == INT or self.input.LA(1) == ID: self.input.consume() if self._state.backtracking == 0: self._adaptor.addChild(root_0, self._adaptor.createWithPayload(set688)) self._state.errorRecovery = False else: if self._state.backtracking > 0: raise BacktrackingFailed mse = MismatchedSetException(None, self.input) raise mse retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "literal_id" class process_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.process_id_return, self).__init__() self.tree = None # $ANTLR start "process_id" # sdl92.g:1125:1: process_id : ID ; def process_id(self, ): retval = self.process_id_return() retval.start = self.input.LT(1) root_0 = None ID689 = None ID689_tree = None try: try: # sdl92.g:1125:17: ( ID ) # sdl92.g:1125:25: ID pass root_0 = self._adaptor.nil() ID689=self.match(self.input, ID, self.FOLLOW_ID_in_process_id13231) if self._state.backtracking == 0: ID689_tree = self._adaptor.createWithPayload(ID689) self._adaptor.addChild(root_0, ID689_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "process_id" class system_name_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.system_name_return, self).__init__() self.tree = None # $ANTLR start "system_name" # sdl92.g:1126:1: system_name : ID ; def system_name(self, ): retval = self.system_name_return() retval.start = self.input.LT(1) root_0 = None ID690 = None ID690_tree = None try: try: # sdl92.g:1126:17: ( ID ) # sdl92.g:1126:25: ID pass root_0 = self._adaptor.nil() ID690=self.match(self.input, ID, self.FOLLOW_ID_in_system_name13248) if self._state.backtracking == 0: ID690_tree = self._adaptor.createWithPayload(ID690) self._adaptor.addChild(root_0, ID690_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "system_name" class package_name_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.package_name_return, self).__init__() self.tree = None # $ANTLR start "package_name" # sdl92.g:1127:1: package_name : ID ; def package_name(self, ): retval = self.package_name_return() retval.start = self.input.LT(1) root_0 = None ID691 = None ID691_tree = None try: try: # sdl92.g:1127:17: ( ID ) # sdl92.g:1127:25: ID pass root_0 = self._adaptor.nil() ID691=self.match(self.input, ID, self.FOLLOW_ID_in_package_name13264) if self._state.backtracking == 0: ID691_tree = self._adaptor.createWithPayload(ID691) self._adaptor.addChild(root_0, ID691_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "package_name" class priority_signal_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.priority_signal_id_return, self).__init__() self.tree = None # $ANTLR start "priority_signal_id" # sdl92.g:1128:1: priority_signal_id : ID ; def priority_signal_id(self, ): retval = self.priority_signal_id_return() retval.start = self.input.LT(1) root_0 = None ID692 = None ID692_tree = None try: try: # sdl92.g:1129:17: ( ID ) # sdl92.g:1129:25: ID pass root_0 = self._adaptor.nil() ID692=self.match(self.input, ID, self.FOLLOW_ID_in_priority_signal_id13293) if self._state.backtracking == 0: ID692_tree = self._adaptor.createWithPayload(ID692) self._adaptor.addChild(root_0, ID692_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "priority_signal_id" class signal_list_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.signal_list_id_return, self).__init__() self.tree = None # $ANTLR start "signal_list_id" # sdl92.g:1130:1: signal_list_id : ID ; def signal_list_id(self, ): retval = self.signal_list_id_return() retval.start = self.input.LT(1) root_0 = None ID693 = None ID693_tree = None try: try: # sdl92.g:1130:17: ( ID ) # sdl92.g:1130:25: ID pass root_0 = self._adaptor.nil() ID693=self.match(self.input, ID, self.FOLLOW_ID_in_signal_list_id13307) if self._state.backtracking == 0: ID693_tree = self._adaptor.createWithPayload(ID693) self._adaptor.addChild(root_0, ID693_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "signal_list_id" class timer_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.timer_id_return, self).__init__() self.tree = None # $ANTLR start "timer_id" # sdl92.g:1131:1: timer_id : ID ; def timer_id(self, ): retval = self.timer_id_return() retval.start = self.input.LT(1) root_0 = None ID694 = None ID694_tree = None try: try: # sdl92.g:1131:17: ( ID ) # sdl92.g:1131:25: ID pass root_0 = self._adaptor.nil() ID694=self.match(self.input, ID, self.FOLLOW_ID_in_timer_id13327) if self._state.backtracking == 0: ID694_tree = self._adaptor.createWithPayload(ID694) self._adaptor.addChild(root_0, ID694_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "timer_id" class field_name_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.field_name_return, self).__init__() self.tree = None # $ANTLR start "field_name" # sdl92.g:1132:1: field_name : ID ; def field_name(self, ): retval = self.field_name_return() retval.start = self.input.LT(1) root_0 = None ID695 = None ID695_tree = None try: try: # sdl92.g:1132:17: ( ID ) # sdl92.g:1132:25: ID pass root_0 = self._adaptor.nil() ID695=self.match(self.input, ID, self.FOLLOW_ID_in_field_name13345) if self._state.backtracking == 0: ID695_tree = self._adaptor.createWithPayload(ID695) self._adaptor.addChild(root_0, ID695_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "field_name" class signal_route_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.signal_route_id_return, self).__init__() self.tree = None # $ANTLR start "signal_route_id" # sdl92.g:1133:1: signal_route_id : ID ; def signal_route_id(self, ): retval = self.signal_route_id_return() retval.start = self.input.LT(1) root_0 = None ID696 = None ID696_tree = None try: try: # sdl92.g:1133:17: ( ID ) # sdl92.g:1133:25: ID pass root_0 = self._adaptor.nil() ID696=self.match(self.input, ID, self.FOLLOW_ID_in_signal_route_id13358) if self._state.backtracking == 0: ID696_tree = self._adaptor.createWithPayload(ID696) self._adaptor.addChild(root_0, ID696_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "signal_route_id" class channel_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.channel_id_return, self).__init__() self.tree = None # $ANTLR start "channel_id" # sdl92.g:1134:1: channel_id : ID ; def channel_id(self, ): retval = self.channel_id_return() retval.start = self.input.LT(1) root_0 = None ID697 = None ID697_tree = None try: try: # sdl92.g:1134:17: ( ID ) # sdl92.g:1134:25: ID pass root_0 = self._adaptor.nil() ID697=self.match(self.input, ID, self.FOLLOW_ID_in_channel_id13376) if self._state.backtracking == 0: ID697_tree = self._adaptor.createWithPayload(ID697) self._adaptor.addChild(root_0, ID697_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "channel_id" class route_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.route_id_return, self).__init__() self.tree = None # $ANTLR start "route_id" # sdl92.g:1135:1: route_id : ID ; def route_id(self, ): retval = self.route_id_return() retval.start = self.input.LT(1) root_0 = None ID698 = None ID698_tree = None try: try: # sdl92.g:1135:17: ( ID ) # sdl92.g:1135:25: ID pass root_0 = self._adaptor.nil() ID698=self.match(self.input, ID, self.FOLLOW_ID_in_route_id13396) if self._state.backtracking == 0: ID698_tree = self._adaptor.createWithPayload(ID698) self._adaptor.addChild(root_0, ID698_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "route_id" class block_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.block_id_return, self).__init__() self.tree = None # $ANTLR start "block_id" # sdl92.g:1136:1: block_id : ID ; def block_id(self, ): retval = self.block_id_return() retval.start = self.input.LT(1) root_0 = None ID699 = None ID699_tree = None try: try: # sdl92.g:1136:17: ( ID ) # sdl92.g:1136:25: ID pass root_0 = self._adaptor.nil() ID699=self.match(self.input, ID, self.FOLLOW_ID_in_block_id13416) if self._state.backtracking == 0: ID699_tree = self._adaptor.createWithPayload(ID699) self._adaptor.addChild(root_0, ID699_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "block_id" class source_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.source_id_return, self).__init__() self.tree = None # $ANTLR start "source_id" # sdl92.g:1137:1: source_id : ID ; def source_id(self, ): retval = self.source_id_return() retval.start = self.input.LT(1) root_0 = None ID700 = None ID700_tree = None try: try: # sdl92.g:1137:17: ( ID ) # sdl92.g:1137:25: ID pass root_0 = self._adaptor.nil() ID700=self.match(self.input, ID, self.FOLLOW_ID_in_source_id13435) if self._state.backtracking == 0: ID700_tree = self._adaptor.createWithPayload(ID700) self._adaptor.addChild(root_0, ID700_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "source_id" class dest_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.dest_id_return, self).__init__() self.tree = None # $ANTLR start "dest_id" # sdl92.g:1138:1: dest_id : ID ; def dest_id(self, ): retval = self.dest_id_return() retval.start = self.input.LT(1) root_0 = None ID701 = None ID701_tree = None try: try: # sdl92.g:1138:17: ( ID ) # sdl92.g:1138:25: ID pass root_0 = self._adaptor.nil() ID701=self.match(self.input, ID, self.FOLLOW_ID_in_dest_id13456) if self._state.backtracking == 0: ID701_tree = self._adaptor.createWithPayload(ID701) self._adaptor.addChild(root_0, ID701_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "dest_id" class gate_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.gate_id_return, self).__init__() self.tree = None # $ANTLR start "gate_id" # sdl92.g:1139:1: gate_id : ID ; def gate_id(self, ): retval = self.gate_id_return() retval.start = self.input.LT(1) root_0 = None ID702 = None ID702_tree = None try: try: # sdl92.g:1139:17: ( ID ) # sdl92.g:1139:25: ID pass root_0 = self._adaptor.nil() ID702=self.match(self.input, ID, self.FOLLOW_ID_in_gate_id13477) if self._state.backtracking == 0: ID702_tree = self._adaptor.createWithPayload(ID702) self._adaptor.addChild(root_0, ID702_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "gate_id" class procedure_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.procedure_id_return, self).__init__() self.tree = None # $ANTLR start "procedure_id" # sdl92.g:1140:1: procedure_id : ID ; def procedure_id(self, ): retval = self.procedure_id_return() retval.start = self.input.LT(1) root_0 = None ID703 = None ID703_tree = None try: try: # sdl92.g:1140:17: ( ID ) # sdl92.g:1140:25: ID pass root_0 = self._adaptor.nil() ID703=self.match(self.input, ID, self.FOLLOW_ID_in_procedure_id13493) if self._state.backtracking == 0: ID703_tree = self._adaptor.createWithPayload(ID703) self._adaptor.addChild(root_0, ID703_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "procedure_id" class remote_procedure_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.remote_procedure_id_return, self).__init__() self.tree = None # $ANTLR start "remote_procedure_id" # sdl92.g:1141:1: remote_procedure_id : ID ; def remote_procedure_id(self, ): retval = self.remote_procedure_id_return() retval.start = self.input.LT(1) root_0 = None ID704 = None ID704_tree = None try: try: # sdl92.g:1142:17: ( ID ) # sdl92.g:1142:25: ID pass root_0 = self._adaptor.nil() ID704=self.match(self.input, ID, self.FOLLOW_ID_in_remote_procedure_id13522) if self._state.backtracking == 0: ID704_tree = self._adaptor.createWithPayload(ID704) self._adaptor.addChild(root_0, ID704_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "remote_procedure_id" class operator_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.operator_id_return, self).__init__() self.tree = None # $ANTLR start "operator_id" # sdl92.g:1143:1: operator_id : ID ; def operator_id(self, ): retval = self.operator_id_return() retval.start = self.input.LT(1) root_0 = None ID705 = None ID705_tree = None try: try: # sdl92.g:1143:17: ( ID ) # sdl92.g:1143:25: ID pass root_0 = self._adaptor.nil() ID705=self.match(self.input, ID, self.FOLLOW_ID_in_operator_id13539) if self._state.backtracking == 0: ID705_tree = self._adaptor.createWithPayload(ID705) self._adaptor.addChild(root_0, ID705_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "operator_id" class synonym_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.synonym_id_return, self).__init__() self.tree = None # $ANTLR start "synonym_id" # sdl92.g:1144:1: synonym_id : ID ; def synonym_id(self, ): retval = self.synonym_id_return() retval.start = self.input.LT(1) root_0 = None ID706 = None ID706_tree = None try: try: # sdl92.g:1144:17: ( ID ) # sdl92.g:1144:25: ID pass root_0 = self._adaptor.nil() ID706=self.match(self.input, ID, self.FOLLOW_ID_in_synonym_id13557) if self._state.backtracking == 0: ID706_tree = self._adaptor.createWithPayload(ID706) self._adaptor.addChild(root_0, ID706_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "synonym_id" class external_synonym_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.external_synonym_id_return, self).__init__() self.tree = None # $ANTLR start "external_synonym_id" # sdl92.g:1145:1: external_synonym_id : ID ; def external_synonym_id(self, ): retval = self.external_synonym_id_return() retval.start = self.input.LT(1) root_0 = None ID707 = None ID707_tree = None try: try: # sdl92.g:1146:17: ( ID ) # sdl92.g:1146:25: ID pass root_0 = self._adaptor.nil() ID707=self.match(self.input, ID, self.FOLLOW_ID_in_external_synonym_id13586) if self._state.backtracking == 0: ID707_tree = self._adaptor.createWithPayload(ID707) self._adaptor.addChild(root_0, ID707_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "external_synonym_id" class remote_variable_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.remote_variable_id_return, self).__init__() self.tree = None # $ANTLR start "remote_variable_id" # sdl92.g:1147:1: remote_variable_id : ID ; def remote_variable_id(self, ): retval = self.remote_variable_id_return() retval.start = self.input.LT(1) root_0 = None ID708 = None ID708_tree = None try: try: # sdl92.g:1148:17: ( ID ) # sdl92.g:1148:25: ID pass root_0 = self._adaptor.nil() ID708=self.match(self.input, ID, self.FOLLOW_ID_in_remote_variable_id13615) if self._state.backtracking == 0: ID708_tree = self._adaptor.createWithPayload(ID708) self._adaptor.addChild(root_0, ID708_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "remote_variable_id" class view_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.view_id_return, self).__init__() self.tree = None # $ANTLR start "view_id" # sdl92.g:1149:1: view_id : ID ; def view_id(self, ): retval = self.view_id_return() retval.start = self.input.LT(1) root_0 = None ID709 = None ID709_tree = None try: try: # sdl92.g:1149:17: ( ID ) # sdl92.g:1149:25: ID pass root_0 = self._adaptor.nil() ID709=self.match(self.input, ID, self.FOLLOW_ID_in_view_id13636) if self._state.backtracking == 0: ID709_tree = self._adaptor.createWithPayload(ID709) self._adaptor.addChild(root_0, ID709_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "view_id" class sort_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.sort_id_return, self).__init__() self.tree = None # $ANTLR start "sort_id" # sdl92.g:1150:1: sort_id : ID ; def sort_id(self, ): retval = self.sort_id_return() retval.start = self.input.LT(1) root_0 = None ID710 = None ID710_tree = None try: try: # sdl92.g:1150:17: ( ID ) # sdl92.g:1150:25: ID pass root_0 = self._adaptor.nil() ID710=self.match(self.input, ID, self.FOLLOW_ID_in_sort_id13657) if self._state.backtracking == 0: ID710_tree = self._adaptor.createWithPayload(ID710) self._adaptor.addChild(root_0, ID710_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "sort_id" class syntype_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.syntype_id_return, self).__init__() self.tree = None # $ANTLR start "syntype_id" # sdl92.g:1151:1: syntype_id : ID ; def syntype_id(self, ): retval = self.syntype_id_return() retval.start = self.input.LT(1) root_0 = None ID711 = None ID711_tree = None try: try: # sdl92.g:1151:17: ( ID ) # sdl92.g:1151:25: ID pass root_0 = self._adaptor.nil() ID711=self.match(self.input, ID, self.FOLLOW_ID_in_syntype_id13675) if self._state.backtracking == 0: ID711_tree = self._adaptor.createWithPayload(ID711) self._adaptor.addChild(root_0, ID711_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "syntype_id" class stimulus_id_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.stimulus_id_return, self).__init__() self.tree = None # $ANTLR start "stimulus_id" # sdl92.g:1152:1: stimulus_id : ID ; def stimulus_id(self, ): retval = self.stimulus_id_return() retval.start = self.input.LT(1) root_0 = None ID712 = None ID712_tree = None try: try: # sdl92.g:1152:17: ( ID ) # sdl92.g:1152:25: ID pass root_0 = self._adaptor.nil() ID712=self.match(self.input, ID, self.FOLLOW_ID_in_stimulus_id13692) if self._state.backtracking == 0: ID712_tree = self._adaptor.createWithPayload(ID712) self._adaptor.addChild(root_0, ID712_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "stimulus_id" class pid_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.pid_expression_return, self).__init__() self.tree = None # $ANTLR start "pid_expression" # sdl92.g:1187:1: pid_expression : ( S E L F | P A R E N T | O F F S P R I N G | S E N D E R ); def pid_expression(self, ): retval = self.pid_expression_return() retval.start = self.input.LT(1) root_0 = None S713 = None E714 = None L715 = None F716 = None P717 = None A718 = None R719 = None E720 = None N721 = None T722 = None O723 = None F724 = None F725 = None S726 = None P727 = None R728 = None I729 = None N730 = None G731 = None S732 = None E733 = None N734 = None D735 = None E736 = None R737 = None S713_tree = None E714_tree = None L715_tree = None F716_tree = None P717_tree = None A718_tree = None R719_tree = None E720_tree = None N721_tree = None T722_tree = None O723_tree = None F724_tree = None F725_tree = None S726_tree = None P727_tree = None R728_tree = None I729_tree = None N730_tree = None G731_tree = None S732_tree = None E733_tree = None N734_tree = None D735_tree = None E736_tree = None R737_tree = None try: try: # sdl92.g:1188:17: ( S E L F | P A R E N T | O F F S P R I N G | S E N D E R ) alt183 = 4 LA183 = self.input.LA(1) if LA183 == S: LA183_1 = self.input.LA(2) if (LA183_1 == E) : LA183_4 = self.input.LA(3) if (LA183_4 == L) : alt183 = 1 elif (LA183_4 == N) : alt183 = 4 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 183, 4, self.input) raise nvae else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 183, 1, self.input) raise nvae elif LA183 == P: alt183 = 2 elif LA183 == O: alt183 = 3 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 183, 0, self.input) raise nvae if alt183 == 1: # sdl92.g:1188:25: S E L F pass root_0 = self._adaptor.nil() S713=self.match(self.input, S, self.FOLLOW_S_in_pid_expression14726) if self._state.backtracking == 0: S713_tree = self._adaptor.createWithPayload(S713) self._adaptor.addChild(root_0, S713_tree) E714=self.match(self.input, E, self.FOLLOW_E_in_pid_expression14728) if self._state.backtracking == 0: E714_tree = self._adaptor.createWithPayload(E714) self._adaptor.addChild(root_0, E714_tree) L715=self.match(self.input, L, self.FOLLOW_L_in_pid_expression14730) if self._state.backtracking == 0: L715_tree = self._adaptor.createWithPayload(L715) self._adaptor.addChild(root_0, L715_tree) F716=self.match(self.input, F, self.FOLLOW_F_in_pid_expression14732) if self._state.backtracking == 0: F716_tree = self._adaptor.createWithPayload(F716) self._adaptor.addChild(root_0, F716_tree) elif alt183 == 2: # sdl92.g:1189:25: P A R E N T pass root_0 = self._adaptor.nil() P717=self.match(self.input, P, self.FOLLOW_P_in_pid_expression14758) if self._state.backtracking == 0: P717_tree = self._adaptor.createWithPayload(P717) self._adaptor.addChild(root_0, P717_tree) A718=self.match(self.input, A, self.FOLLOW_A_in_pid_expression14760) if self._state.backtracking == 0: A718_tree = self._adaptor.createWithPayload(A718) self._adaptor.addChild(root_0, A718_tree) R719=self.match(self.input, R, self.FOLLOW_R_in_pid_expression14762) if self._state.backtracking == 0: R719_tree = self._adaptor.createWithPayload(R719) self._adaptor.addChild(root_0, R719_tree) E720=self.match(self.input, E, self.FOLLOW_E_in_pid_expression14764) if self._state.backtracking == 0: E720_tree = self._adaptor.createWithPayload(E720) self._adaptor.addChild(root_0, E720_tree) N721=self.match(self.input, N, self.FOLLOW_N_in_pid_expression14766) if self._state.backtracking == 0: N721_tree = self._adaptor.createWithPayload(N721) self._adaptor.addChild(root_0, N721_tree) T722=self.match(self.input, T, self.FOLLOW_T_in_pid_expression14768) if self._state.backtracking == 0: T722_tree = self._adaptor.createWithPayload(T722) self._adaptor.addChild(root_0, T722_tree) elif alt183 == 3: # sdl92.g:1190:25: O F F S P R I N G pass root_0 = self._adaptor.nil() O723=self.match(self.input, O, self.FOLLOW_O_in_pid_expression14794) if self._state.backtracking == 0: O723_tree = self._adaptor.createWithPayload(O723) self._adaptor.addChild(root_0, O723_tree) F724=self.match(self.input, F, self.FOLLOW_F_in_pid_expression14796) if self._state.backtracking == 0: F724_tree = self._adaptor.createWithPayload(F724) self._adaptor.addChild(root_0, F724_tree) F725=self.match(self.input, F, self.FOLLOW_F_in_pid_expression14798) if self._state.backtracking == 0: F725_tree = self._adaptor.createWithPayload(F725) self._adaptor.addChild(root_0, F725_tree) S726=self.match(self.input, S, self.FOLLOW_S_in_pid_expression14800) if self._state.backtracking == 0: S726_tree = self._adaptor.createWithPayload(S726) self._adaptor.addChild(root_0, S726_tree) P727=self.match(self.input, P, self.FOLLOW_P_in_pid_expression14802) if self._state.backtracking == 0: P727_tree = self._adaptor.createWithPayload(P727) self._adaptor.addChild(root_0, P727_tree) R728=self.match(self.input, R, self.FOLLOW_R_in_pid_expression14804) if self._state.backtracking == 0: R728_tree = self._adaptor.createWithPayload(R728) self._adaptor.addChild(root_0, R728_tree) I729=self.match(self.input, I, self.FOLLOW_I_in_pid_expression14806) if self._state.backtracking == 0: I729_tree = self._adaptor.createWithPayload(I729) self._adaptor.addChild(root_0, I729_tree) N730=self.match(self.input, N, self.FOLLOW_N_in_pid_expression14808) if self._state.backtracking == 0: N730_tree = self._adaptor.createWithPayload(N730) self._adaptor.addChild(root_0, N730_tree) G731=self.match(self.input, G, self.FOLLOW_G_in_pid_expression14810) if self._state.backtracking == 0: G731_tree = self._adaptor.createWithPayload(G731) self._adaptor.addChild(root_0, G731_tree) elif alt183 == 4: # sdl92.g:1191:25: S E N D E R pass root_0 = self._adaptor.nil() S732=self.match(self.input, S, self.FOLLOW_S_in_pid_expression14836) if self._state.backtracking == 0: S732_tree = self._adaptor.createWithPayload(S732) self._adaptor.addChild(root_0, S732_tree) E733=self.match(self.input, E, self.FOLLOW_E_in_pid_expression14838) if self._state.backtracking == 0: E733_tree = self._adaptor.createWithPayload(E733) self._adaptor.addChild(root_0, E733_tree) N734=self.match(self.input, N, self.FOLLOW_N_in_pid_expression14840) if self._state.backtracking == 0: N734_tree = self._adaptor.createWithPayload(N734) self._adaptor.addChild(root_0, N734_tree) D735=self.match(self.input, D, self.FOLLOW_D_in_pid_expression14842) if self._state.backtracking == 0: D735_tree = self._adaptor.createWithPayload(D735) self._adaptor.addChild(root_0, D735_tree) E736=self.match(self.input, E, self.FOLLOW_E_in_pid_expression14844) if self._state.backtracking == 0: E736_tree = self._adaptor.createWithPayload(E736) self._adaptor.addChild(root_0, E736_tree) R737=self.match(self.input, R, self.FOLLOW_R_in_pid_expression14846) if self._state.backtracking == 0: R737_tree = self._adaptor.createWithPayload(R737) self._adaptor.addChild(root_0, R737_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "pid_expression" class now_expression_return(ParserRuleReturnScope): def __init__(self): super(sdl92Parser.now_expression_return, self).__init__() self.tree = None # $ANTLR start "now_expression" # sdl92.g:1192:1: now_expression : N O W ; def now_expression(self, ): retval = self.now_expression_return() retval.start = self.input.LT(1) root_0 = None N738 = None O739 = None W740 = None N738_tree = None O739_tree = None W740_tree = None try: try: # sdl92.g:1192:17: ( N O W ) # sdl92.g:1192:25: N O W pass root_0 = self._adaptor.nil() N738=self.match(self.input, N, self.FOLLOW_N_in_now_expression14860) if self._state.backtracking == 0: N738_tree = self._adaptor.createWithPayload(N738) self._adaptor.addChild(root_0, N738_tree) O739=self.match(self.input, O, self.FOLLOW_O_in_now_expression14862) if self._state.backtracking == 0: O739_tree = self._adaptor.createWithPayload(O739) self._adaptor.addChild(root_0, O739_tree) W740=self.match(self.input, W, self.FOLLOW_W_in_now_expression14864) if self._state.backtracking == 0: W740_tree = self._adaptor.createWithPayload(W740) self._adaptor.addChild(root_0, W740_tree) retval.stop = self.input.LT(-1) if self._state.backtracking == 0: retval.tree = self._adaptor.rulePostProcessing(root_0) self._adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop) except RecognitionException, re: self.reportError(re) self.recover(self.input, re) retval.tree = self._adaptor.errorNode(self.input, retval.start, self.input.LT(-1), re) finally: pass return retval # $ANTLR end "now_expression" # $ANTLR start "synpred7_sdl92" def synpred7_sdl92_fragment(self, ): # sdl92.g:161:17: ( signal_declaration ) # sdl92.g:161:17: signal_declaration pass self._state.following.append(self.FOLLOW_signal_declaration_in_synpred7_sdl921521) self.signal_declaration() self._state.following.pop() # $ANTLR end "synpred7_sdl92" # $ANTLR start "synpred8_sdl92" def synpred8_sdl92_fragment(self, ): # sdl92.g:162:19: ( text_area ) # sdl92.g:162:19: text_area pass self._state.following.append(self.FOLLOW_text_area_in_synpred8_sdl921541) self.text_area() self._state.following.pop() # $ANTLR end "synpred8_sdl92" # $ANTLR start "synpred9_sdl92" def synpred9_sdl92_fragment(self, ): # sdl92.g:163:19: ( procedure ) # sdl92.g:163:19: procedure pass self._state.following.append(self.FOLLOW_procedure_in_synpred9_sdl921561) self.procedure() self._state.following.pop() # $ANTLR end "synpred9_sdl92" # $ANTLR start "synpred25_sdl92" def synpred25_sdl92_fragment(self, ): # sdl92.g:222:18: ( text_area ) # sdl92.g:222:18: text_area pass self._state.following.append(self.FOLLOW_text_area_in_synpred25_sdl922258) self.text_area() self._state.following.pop() # $ANTLR end "synpred25_sdl92" # $ANTLR start "synpred26_sdl92" def synpred26_sdl92_fragment(self, ): # sdl92.g:222:30: ( procedure ) # sdl92.g:222:30: procedure pass self._state.following.append(self.FOLLOW_procedure_in_synpred26_sdl922262) self.procedure() self._state.following.pop() # $ANTLR end "synpred26_sdl92" # $ANTLR start "synpred27_sdl92" def synpred27_sdl92_fragment(self, ): # sdl92.g:222:42: ( composite_state ) # sdl92.g:222:42: composite_state pass self._state.following.append(self.FOLLOW_composite_state_in_synpred27_sdl922266) self.composite_state() self._state.following.pop() # $ANTLR end "synpred27_sdl92" # $ANTLR start "synpred28_sdl92" def synpred28_sdl92_fragment(self, ): # sdl92.g:223:17: ( processBody ) # sdl92.g:223:17: processBody pass self._state.following.append(self.FOLLOW_processBody_in_synpred28_sdl922286) self.processBody() self._state.following.pop() # $ANTLR end "synpred28_sdl92" # $ANTLR start "synpred32_sdl92" def synpred32_sdl92_fragment(self, ): # sdl92.g:235:18: ( text_area ) # sdl92.g:235:18: text_area pass self._state.following.append(self.FOLLOW_text_area_in_synpred32_sdl922454) self.text_area() self._state.following.pop() # $ANTLR end "synpred32_sdl92" # $ANTLR start "synpred33_sdl92" def synpred33_sdl92_fragment(self, ): # sdl92.g:235:30: ( procedure ) # sdl92.g:235:30: procedure pass self._state.following.append(self.FOLLOW_procedure_in_synpred33_sdl922458) self.procedure() self._state.following.pop() # $ANTLR end "synpred33_sdl92" # $ANTLR start "synpred34_sdl92" def synpred34_sdl92_fragment(self, ): # sdl92.g:236:19: ( processBody ) # sdl92.g:236:19: processBody pass self._state.following.append(self.FOLLOW_processBody_in_synpred34_sdl922480) self.processBody() self._state.following.pop() # $ANTLR end "synpred34_sdl92" # $ANTLR start "synpred41_sdl92" def synpred41_sdl92_fragment(self, ): # sdl92.g:259:17: ( content ) # sdl92.g:259:17: content pass self._state.following.append(self.FOLLOW_content_in_synpred41_sdl922786) self.content() self._state.following.pop() # $ANTLR end "synpred41_sdl92" # $ANTLR start "synpred87_sdl92" def synpred87_sdl92_fragment(self, ): # sdl92.g:422:18: ( text_area ) # sdl92.g:422:18: text_area pass self._state.following.append(self.FOLLOW_text_area_in_synpred87_sdl924993) self.text_area() self._state.following.pop() # $ANTLR end "synpred87_sdl92" # $ANTLR start "synpred88_sdl92" def synpred88_sdl92_fragment(self, ): # sdl92.g:422:30: ( procedure ) # sdl92.g:422:30: procedure pass self._state.following.append(self.FOLLOW_procedure_in_synpred88_sdl924997) self.procedure() self._state.following.pop() # $ANTLR end "synpred88_sdl92" # $ANTLR start "synpred89_sdl92" def synpred89_sdl92_fragment(self, ): # sdl92.g:422:42: ( composite_state ) # sdl92.g:422:42: composite_state pass self._state.following.append(self.FOLLOW_composite_state_in_synpred89_sdl925001) self.composite_state() self._state.following.pop() # $ANTLR end "synpred89_sdl92" # $ANTLR start "synpred111_sdl92" def synpred111_sdl92_fragment(self, ): # sdl92.g:519:17: ( enabling_condition ) # sdl92.g:519:17: enabling_condition pass self._state.following.append(self.FOLLOW_enabling_condition_in_synpred111_sdl925937) self.enabling_condition() self._state.following.pop() # $ANTLR end "synpred111_sdl92" # $ANTLR start "synpred118_sdl92" def synpred118_sdl92_fragment(self, ): # sdl92.g:543:25: ( label ) # sdl92.g:543:25: label pass self._state.following.append(self.FOLLOW_label_in_synpred118_sdl926193) self.label() self._state.following.pop() # $ANTLR end "synpred118_sdl92" # $ANTLR start "synpred142_sdl92" def synpred142_sdl92_fragment(self, ): # sdl92.g:628:17: ( expression ) # sdl92.g:628:17: expression pass self._state.following.append(self.FOLLOW_expression_in_synpred142_sdl927213) self.expression() self._state.following.pop() # $ANTLR end "synpred142_sdl92" # $ANTLR start "synpred145_sdl92" def synpred145_sdl92_fragment(self, ): # sdl92.g:636:17: ( answer_part ) # sdl92.g:636:17: answer_part pass self._state.following.append(self.FOLLOW_answer_part_in_synpred145_sdl927318) self.answer_part() self._state.following.pop() # $ANTLR end "synpred145_sdl92" # $ANTLR start "synpred150_sdl92" def synpred150_sdl92_fragment(self, ): # sdl92.g:651:17: ( range_condition ) # sdl92.g:651:17: range_condition pass self._state.following.append(self.FOLLOW_range_condition_in_synpred150_sdl927536) self.range_condition() self._state.following.pop() # $ANTLR end "synpred150_sdl92" # $ANTLR start "synpred154_sdl92" def synpred154_sdl92_fragment(self, ): # sdl92.g:663:17: ( expression ) # sdl92.g:663:17: expression pass self._state.following.append(self.FOLLOW_expression_in_synpred154_sdl927673) self.expression() self._state.following.pop() # $ANTLR end "synpred154_sdl92" # $ANTLR start "synpred155_sdl92" def synpred155_sdl92_fragment(self, ): # sdl92.g:665:19: ( informal_text ) # sdl92.g:665:19: informal_text pass self._state.following.append(self.FOLLOW_informal_text_in_synpred155_sdl927714) self.informal_text() self._state.following.pop() # $ANTLR end "synpred155_sdl92" # $ANTLR start "synpred156_sdl92" def synpred156_sdl92_fragment(self, ): # sdl92.g:672:18: ( closed_range ) # sdl92.g:672:18: closed_range pass self._state.following.append(self.FOLLOW_closed_range_in_synpred156_sdl927794) self.closed_range() self._state.following.pop() # $ANTLR end "synpred156_sdl92" # $ANTLR start "synpred185_sdl92" def synpred185_sdl92_fragment(self, ): # sdl92.g:787:18: ( COMMA b= ground_expression ) # sdl92.g:787:18: COMMA b= ground_expression pass self.match(self.input, COMMA, self.FOLLOW_COMMA_in_synpred185_sdl929170) self._state.following.append(self.FOLLOW_ground_expression_in_synpred185_sdl929174) b = self.ground_expression() self._state.following.pop() # $ANTLR end "synpred185_sdl92" # $ANTLR start "synpred189_sdl92" def synpred189_sdl92_fragment(self, ): # sdl92.g:811:39: ( IMPLIES binary_expression_0 ) # sdl92.g:811:39: IMPLIES binary_expression_0 pass self.match(self.input, IMPLIES, self.FOLLOW_IMPLIES_in_synpred189_sdl929434) self._state.following.append(self.FOLLOW_binary_expression_0_in_synpred189_sdl929437) self.binary_expression_0() self._state.following.pop() # $ANTLR end "synpred189_sdl92" # $ANTLR start "synpred192_sdl92" def synpred192_sdl92_fragment(self, ): # sdl92.g:813:38: ( ( ( OR ( ELSE )? ) | XOR ) binary_expression_1 ) # sdl92.g:813:38: ( ( OR ( ELSE )? ) | XOR ) binary_expression_1 pass # sdl92.g:813:38: ( ( OR ( ELSE )? ) | XOR ) alt199 = 2 LA199_0 = self.input.LA(1) if (LA199_0 == OR) : alt199 = 1 elif (LA199_0 == XOR) : alt199 = 2 else: if self._state.backtracking > 0: raise BacktrackingFailed nvae = NoViableAltException("", 199, 0, self.input) raise nvae if alt199 == 1: # sdl92.g:813:40: ( OR ( ELSE )? ) pass # sdl92.g:813:40: ( OR ( ELSE )? ) # sdl92.g:813:41: OR ( ELSE )? pass self.match(self.input, OR, self.FOLLOW_OR_in_synpred192_sdl929466) # sdl92.g:813:45: ( ELSE )? alt198 = 2 LA198_0 = self.input.LA(1) if (LA198_0 == ELSE) : alt198 = 1 if alt198 == 1: # sdl92.g:0:0: ELSE pass self.match(self.input, ELSE, self.FOLLOW_ELSE_in_synpred192_sdl929469) elif alt199 == 2: # sdl92.g:813:54: XOR pass self.match(self.input, XOR, self.FOLLOW_XOR_in_synpred192_sdl929475) self._state.following.append(self.FOLLOW_binary_expression_1_in_synpred192_sdl929480) self.binary_expression_1() self._state.following.pop() # $ANTLR end "synpred192_sdl92" # $ANTLR start "synpred194_sdl92" def synpred194_sdl92_fragment(self, ): # sdl92.g:815:39: ( AND ( THEN )? binary_expression_2 ) # sdl92.g:815:39: AND ( THEN )? binary_expression_2 pass self.match(self.input, AND, self.FOLLOW_AND_in_synpred194_sdl929507) # sdl92.g:815:44: ( THEN )? alt200 = 2 LA200_0 = self.input.LA(1) if (LA200_0 == THEN) : alt200 = 1 if alt200 == 1: # sdl92.g:0:0: THEN pass self.match(self.input, THEN, self.FOLLOW_THEN_in_synpred194_sdl929510) self._state.following.append(self.FOLLOW_binary_expression_2_in_synpred194_sdl929513) self.binary_expression_2() self._state.following.pop() # $ANTLR end "synpred194_sdl92" # $ANTLR start "synpred201_sdl92" def synpred201_sdl92_fragment(self, ): # sdl92.g:817:38: ( ( EQ | NEQ | GT | GE | LT | LE | IN ) binary_expression_3 ) # sdl92.g:817:38: ( EQ | NEQ | GT | GE | LT | LE | IN ) binary_expression_3 pass if self.input.LA(1) == IN or (EQ <= self.input.LA(1) <= GE): self.input.consume() self._state.errorRecovery = False else: if self._state.backtracking > 0: raise BacktrackingFailed mse = MismatchedSetException(None, self.input) raise mse self._state.following.append(self.FOLLOW_binary_expression_3_in_synpred201_sdl929576) self.binary_expression_3() self._state.following.pop() # $ANTLR end "synpred201_sdl92" # $ANTLR start "synpred204_sdl92" def synpred204_sdl92_fragment(self, ): # sdl92.g:819:38: ( ( PLUS | DASH | APPEND ) binary_expression_4 ) # sdl92.g:819:38: ( PLUS | DASH | APPEND ) binary_expression_4 pass if (PLUS <= self.input.LA(1) <= APPEND): self.input.consume() self._state.errorRecovery = False else: if self._state.backtracking > 0: raise BacktrackingFailed mse = MismatchedSetException(None, self.input) raise mse self._state.following.append(self.FOLLOW_binary_expression_4_in_synpred204_sdl929619) self.binary_expression_4() self._state.following.pop() # $ANTLR end "synpred204_sdl92" # $ANTLR start "synpred208_sdl92" def synpred208_sdl92_fragment(self, ): # sdl92.g:821:35: ( ( ASTERISK | DIV | MOD | REM ) unary_expression ) # sdl92.g:821:35: ( ASTERISK | DIV | MOD | REM ) unary_expression pass if self.input.LA(1) == ASTERISK or (DIV <= self.input.LA(1) <= REM): self.input.consume() self._state.errorRecovery = False else: if self._state.backtracking > 0: raise BacktrackingFailed mse = MismatchedSetException(None, self.input) raise mse self._state.following.append(self.FOLLOW_unary_expression_in_synpred208_sdl929667) self.unary_expression() self._state.following.pop() # $ANTLR end "synpred208_sdl92" # $ANTLR start "synpred209_sdl92" def synpred209_sdl92_fragment(self, ): # sdl92.g:825:17: ( postfix_expression ) # sdl92.g:825:17: postfix_expression pass self._state.following.append(self.FOLLOW_postfix_expression_in_synpred209_sdl929692) self.postfix_expression() self._state.following.pop() # $ANTLR end "synpred209_sdl92" # $ANTLR start "synpred210_sdl92" def synpred210_sdl92_fragment(self, ): # sdl92.g:826:17: ( primary_expression ) # sdl92.g:826:17: primary_expression pass self._state.following.append(self.FOLLOW_primary_expression_in_synpred210_sdl929710) self.primary_expression() self._state.following.pop() # $ANTLR end "synpred210_sdl92" # $ANTLR start "synpred212_sdl92" def synpred212_sdl92_fragment(self, ): # sdl92.g:834:21: ( '(' params= expression_list ')' ) # sdl92.g:834:21: '(' params= expression_list ')' pass self.match(self.input, L_PAREN, self.FOLLOW_L_PAREN_in_synpred212_sdl929827) self._state.following.append(self.FOLLOW_expression_list_in_synpred212_sdl929831) params = self.expression_list() self._state.following.pop() self.match(self.input, R_PAREN, self.FOLLOW_R_PAREN_in_synpred212_sdl929833) # $ANTLR end "synpred212_sdl92" # $ANTLR start "synpred213_sdl92" def synpred213_sdl92_fragment(self, ): # sdl92.g:835:21: ( '!' field_name ) # sdl92.g:835:21: '!' field_name pass self.match(self.input, 214, self.FOLLOW_214_in_synpred213_sdl929871) self._state.following.append(self.FOLLOW_field_name_in_synpred213_sdl929873) self.field_name() self._state.following.pop() # $ANTLR end "synpred213_sdl92" # $ANTLR start "synpred226_sdl92" def synpred226_sdl92_fragment(self, ): # sdl92.g:858:17: ( ID ':' expression ) # sdl92.g:858:17: ID ':' expression pass self.match(self.input, ID, self.FOLLOW_ID_in_synpred226_sdl9210246) self.match(self.input, 213, self.FOLLOW_213_in_synpred226_sdl9210248) self._state.following.append(self.FOLLOW_expression_in_synpred226_sdl9210250) self.expression() self._state.following.pop() # $ANTLR end "synpred226_sdl92" # $ANTLR start "synpred227_sdl92" def synpred227_sdl92_fragment(self, ): # sdl92.g:859:17: ( ID ) # sdl92.g:859:17: ID pass self.match(self.input, ID, self.FOLLOW_ID_in_synpred227_sdl9210288) # $ANTLR end "synpred227_sdl92" # $ANTLR start "synpred228_sdl92" def synpred228_sdl92_fragment(self, ): # sdl92.g:860:17: ( '{' '}' ) # sdl92.g:860:17: '{' '}' pass self.match(self.input, L_BRACKET, self.FOLLOW_L_BRACKET_in_synpred228_sdl9210339) self.match(self.input, R_BRACKET, self.FOLLOW_R_BRACKET_in_synpred228_sdl9210341) # $ANTLR end "synpred228_sdl92" # $ANTLR start "synpred229_sdl92" def synpred229_sdl92_fragment(self, ): # sdl92.g:861:17: ( '{' MANTISSA mant= INT COMMA BASE bas= INT COMMA EXPONENT exp= INT '}' ) # sdl92.g:861:17: '{' MANTISSA mant= INT COMMA BASE bas= INT COMMA EXPONENT exp= INT '}' pass self.match(self.input, L_BRACKET, self.FOLLOW_L_BRACKET_in_synpred229_sdl9210385) self.match(self.input, MANTISSA, self.FOLLOW_MANTISSA_in_synpred229_sdl9210403) mant=self.match(self.input, INT, self.FOLLOW_INT_in_synpred229_sdl9210407) self.match(self.input, COMMA, self.FOLLOW_COMMA_in_synpred229_sdl9210409) self.match(self.input, BASE, self.FOLLOW_BASE_in_synpred229_sdl9210427) bas=self.match(self.input, INT, self.FOLLOW_INT_in_synpred229_sdl9210431) self.match(self.input, COMMA, self.FOLLOW_COMMA_in_synpred229_sdl9210433) self.match(self.input, EXPONENT, self.FOLLOW_EXPONENT_in_synpred229_sdl9210451) exp=self.match(self.input, INT, self.FOLLOW_INT_in_synpred229_sdl9210455) self.match(self.input, R_BRACKET, self.FOLLOW_R_BRACKET_in_synpred229_sdl9210473) # $ANTLR end "synpred229_sdl92" # $ANTLR start "synpred231_sdl92" def synpred231_sdl92_fragment(self, ): # sdl92.g:866:17: ( '{' named_value ( COMMA named_value )* '}' ) # sdl92.g:866:17: '{' named_value ( COMMA named_value )* '}' pass self.match(self.input, L_BRACKET, self.FOLLOW_L_BRACKET_in_synpred231_sdl9210530) self._state.following.append(self.FOLLOW_named_value_in_synpred231_sdl9210548) self.named_value() self._state.following.pop() # sdl92.g:867:29: ( COMMA named_value )* while True: #loop201 alt201 = 2 LA201_0 = self.input.LA(1) if (LA201_0 == COMMA) : alt201 = 1 if alt201 == 1: # sdl92.g:867:30: COMMA named_value pass self.match(self.input, COMMA, self.FOLLOW_COMMA_in_synpred231_sdl9210551) self._state.following.append(self.FOLLOW_named_value_in_synpred231_sdl9210553) self.named_value() self._state.following.pop() else: break #loop201 self.match(self.input, R_BRACKET, self.FOLLOW_R_BRACKET_in_synpred231_sdl9210573) # $ANTLR end "synpred231_sdl92" # Delegated rules def synpred9_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred9_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred28_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred28_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred7_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred7_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred8_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred8_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred208_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred208_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred155_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred155_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred27_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred27_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred32_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred32_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred118_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred118_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred145_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred145_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred213_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred213_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred185_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred185_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred194_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred194_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred201_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred201_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred25_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred25_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred209_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred209_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred26_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred26_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred87_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred87_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred142_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred142_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred229_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred229_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred156_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred156_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred192_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred192_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred154_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred154_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred231_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred231_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred34_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred34_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred88_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred88_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred212_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred212_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred228_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred228_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred226_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred226_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred33_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred33_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred41_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred41_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred204_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred204_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred210_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred210_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred89_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred89_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred227_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred227_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred111_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred111_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred150_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred150_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success def synpred189_sdl92(self): self._state.backtracking += 1 start = self.input.mark() try: self.synpred189_sdl92_fragment() except BacktrackingFailed: success = False else: success = True self.input.rewind(start) self._state.backtracking -= 1 return success # lookup tables for DFA #19 DFA19_eot = DFA.unpack( u"\12\uffff" ) DFA19_eof = DFA.unpack( u"\12\uffff" ) DFA19_min = DFA.unpack( u"\1\111\1\u0096\1\uffff\1\21\1\174\1\uffff\1\u0089\1\174\1\u0088" u"\1\21" ) DFA19_max = DFA.unpack( u"\1\u00da\1\u0096\1\uffff\1\u00da\1\174\1\uffff\1\u0089\1\174\1" u"\u0088\1\u00da" ) DFA19_accept = DFA.unpack( u"\2\uffff\1\2\2\uffff\1\1\4\uffff" ) DFA19_special = DFA.unpack( u"\12\uffff" ) DFA19_transition = [ DFA.unpack(u"\1\1\u0090\uffff\1\2"), DFA.unpack(u"\1\3"), DFA.unpack(u""), DFA.unpack(u"\1\2\147\uffff\1\5\5\uffff\1\2\7\uffff\1\4\122\uffff" u"\1\2"), DFA.unpack(u"\1\6"), DFA.unpack(u""), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\2\147\uffff\1\5\5\uffff\1\2\132\uffff\1\2") ] # class definition for DFA #19 class DFA19(DFA): pass # lookup tables for DFA #30 DFA30_eot = DFA.unpack( u"\17\uffff" ) DFA30_eof = DFA.unpack( u"\1\2\16\uffff" ) DFA30_min = DFA.unpack( u"\1\30\1\7\12\uffff\1\u00ae\1\u00af\1\102" ) DFA30_max = DFA.unpack( u"\1\u00da\1\u00ad\12\uffff\1\u00ae\1\u00af\1\u00b0" ) DFA30_accept = DFA.unpack( u"\2\uffff\1\12\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\10\1\11\3\uffff" ) DFA30_special = DFA.unpack( u"\17\uffff" ) DFA30_transition = [ DFA.unpack(u"\1\12\22\uffff\1\6\16\uffff\1\11\13\uffff\1\3\16\uffff" u"\1\5\10\uffff\1\13\1\uffff\1\10\10\uffff\1\7\2\uffff\1\4\155\uffff" u"\1\1"), DFA.unpack(u"\1\3\11\uffff\1\3\2\uffff\1\3\4\uffff\1\3\5\uffff\1" u"\2\23\uffff\1\3\2\uffff\2\3\3\uffff\1\3\3\uffff\1\3\6\uffff\2\3" u"\1\uffff\2\3\3\uffff\1\3\11\uffff\1\3\2\uffff\1\3\6\uffff\1\3\2" u"\uffff\1\3\27\uffff\1\3\57\uffff\1\14"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\5\155\uffff\1\4") ] # class definition for DFA #30 class DFA30(DFA): pass # lookup tables for DFA #37 DFA37_eot = DFA.unpack( u"\33\uffff" ) DFA37_eof = DFA.unpack( u"\3\uffff\1\10\27\uffff" ) DFA37_min = DFA.unpack( u"\1\21\1\7\1\134\1\35\1\u0087\1\u00ae\1\177\2\uffff\1\174\1\u00af" u"\1\u0089\1\55\1\174\1\134\1\u0088\1\u00db\1\u0089\1\21\1\u0087" u"\1\174\1\u0089\1\174\1\u0088\1\u00db\1\21\1\u00ad" ) DFA37_max = DFA.unpack( u"\1\u00da\1\u00ad\1\134\1\u0096\1\u0087\1\u00ae\1\177\2\uffff\1" u"\174\1\u00af\1\u0089\1\55\1\174\1\134\1\u0088\1\u00db\1\u0089\1" u"\21\1\u0087\1\174\1\u0089\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA37_accept = DFA.unpack( u"\7\uffff\1\1\1\2\22\uffff" ) DFA37_special = DFA.unpack( u"\33\uffff" ) DFA37_transition = [ DFA.unpack(u"\1\2\155\uffff\1\3\132\uffff\1\1"), DFA.unpack(u"\1\4\11\uffff\1\4\2\uffff\1\4\4\uffff\1\4\31\uffff" u"\1\4\2\uffff\2\4\3\uffff\1\4\3\uffff\1\4\6\uffff\2\4\1\uffff\2" u"\4\3\uffff\1\4\11\uffff\1\4\2\uffff\1\4\6\uffff\1\4\2\uffff\1\4" u"\27\uffff\1\4\57\uffff\1\5"), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\10\170\uffff\1\7"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\3"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\2"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\27"), DFA.unpack(u"\1\30"), DFA.unpack(u"\1\31"), DFA.unpack(u"\1\2\u00c8\uffff\1\32"), DFA.unpack(u"\1\5") ] # class definition for DFA #37 class DFA37(DFA): pass # lookup tables for DFA #43 DFA43_eot = DFA.unpack( u"\30\uffff" ) DFA43_eof = DFA.unpack( u"\1\3\27\uffff" ) DFA43_min = DFA.unpack( u"\1\25\1\7\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089\1" u"\134\1\174\1\u00db\1\u0088\1\25\1\u0089\1\u0087\1\174\1\u0089\1" u"\174\1\u0088\1\u00db\1\25\1\u00ad" ) DFA43_max = DFA.unpack( u"\1\u00da\1\u00ad\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089" u"\1\134\1\174\1\u00db\1\u0088\1\175\1\u0089\1\u0087\1\174\1\u0089" u"\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA43_accept = DFA.unpack( u"\2\uffff\1\1\1\2\24\uffff" ) DFA43_special = DFA.unpack( u"\30\uffff" ) DFA43_transition = [ DFA.unpack(u"\1\3\102\uffff\1\3\41\uffff\2\3\1\uffff\1\2\134\uffff" u"\1\1"), DFA.unpack(u"\1\5\11\uffff\1\5\2\uffff\1\5\4\uffff\1\5\31\uffff" u"\1\5\2\uffff\2\5\3\uffff\1\5\3\uffff\1\5\6\uffff\2\5\1\uffff\2" u"\5\3\uffff\1\5\11\uffff\1\5\2\uffff\1\5\6\uffff\1\5\2\uffff\1\5" u"\27\uffff\1\5\57\uffff\1\4"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\3\102\uffff\1\3\44\uffff\1\2"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\3\102\uffff\1\3\44\uffff\1\2\134\uffff\1\27"), DFA.unpack(u"\1\4") ] # class definition for DFA #43 class DFA43(DFA): pass # lookup tables for DFA #44 DFA44_eot = DFA.unpack( u"\31\uffff" ) DFA44_eof = DFA.unpack( u"\1\1\30\uffff" ) DFA44_min = DFA.unpack( u"\1\25\1\uffff\1\7\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1" u"\u0089\1\134\1\174\1\u00db\1\u0088\1\25\1\u0089\1\u0087\1\174\1" u"\u0089\1\174\1\u0088\1\u00db\1\25\1\u00ad" ) DFA44_max = DFA.unpack( u"\1\u00da\1\uffff\1\u00ad\2\uffff\1\u00ae\1\u0087\1\u00af\1\174" u"\1\55\1\u0089\1\134\1\174\1\u00db\1\u0088\1\130\1\u0089\1\u0087" u"\1\174\1\u0089\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA44_accept = DFA.unpack( u"\1\uffff\1\3\1\uffff\1\1\1\2\24\uffff" ) DFA44_special = DFA.unpack( u"\31\uffff" ) DFA44_transition = [ DFA.unpack(u"\1\4\102\uffff\1\3\41\uffff\2\1\136\uffff\1\2"), DFA.unpack(u""), DFA.unpack(u"\1\6\11\uffff\1\6\2\uffff\1\6\4\uffff\1\6\31\uffff" u"\1\6\2\uffff\2\6\3\uffff\1\6\3\uffff\1\6\6\uffff\2\6\1\uffff\2" u"\6\3\uffff\1\6\11\uffff\1\6\2\uffff\1\6\6\uffff\1\6\2\uffff\1\6" u"\27\uffff\1\6\57\uffff\1\5"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\4\102\uffff\1\3"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\27"), DFA.unpack(u"\1\4\102\uffff\1\3\u0081\uffff\1\30"), DFA.unpack(u"\1\5") ] # class definition for DFA #44 class DFA44(DFA): pass # lookup tables for DFA #48 DFA48_eot = DFA.unpack( u"\30\uffff" ) DFA48_eof = DFA.unpack( u"\1\3\27\uffff" ) DFA48_min = DFA.unpack( u"\1\6\1\7\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089\1\134" u"\1\174\1\u00db\1\u0088\1\25\1\u0089\1\u0087\1\174\1\u0089\1\174" u"\1\u0088\1\u00db\1\25\1\u00ad" ) DFA48_max = DFA.unpack( u"\1\u00da\1\u00ad\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089" u"\1\134\1\174\1\u00db\1\u0088\1\u008a\1\u0089\1\u0087\1\174\1\u0089" u"\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA48_accept = DFA.unpack( u"\2\uffff\1\1\1\2\24\uffff" ) DFA48_special = DFA.unpack( u"\30\uffff" ) DFA48_transition = [ DFA.unpack(u"\1\2\16\uffff\1\3\3\uffff\1\2\6\uffff\1\2\11\uffff\1" u"\2\13\uffff\1\2\4\uffff\1\2\3\uffff\1\2\15\uffff\2\2\5\uffff\1" u"\2\3\uffff\1\3\2\uffff\2\2\5\uffff\1\2\27\uffff\2\3\1\uffff\1\3" u"\5\uffff\1\3\6\uffff\1\2\11\uffff\1\2\1\uffff\1\2\103\uffff\1\1"), DFA.unpack(u"\1\5\11\uffff\1\5\2\uffff\1\5\4\uffff\1\5\31\uffff" u"\1\5\2\uffff\2\5\3\uffff\1\5\3\uffff\1\5\6\uffff\2\5\1\uffff\2" u"\5\3\uffff\1\5\11\uffff\1\5\2\uffff\1\5\6\uffff\1\5\2\uffff\1\5" u"\27\uffff\1\5\57\uffff\1\4"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\3\3\uffff\1\2\34\uffff\1\2\4\uffff\1\2\3\uffff\1" u"\2\16\uffff\1\2\11\uffff\1\3\2\uffff\1\2\6\uffff\1\2\32\uffff\1" u"\3\14\uffff\1\2"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\3\3\uffff\1\2\34\uffff\1\2\4\uffff\1\2\3\uffff\1" u"\2\16\uffff\1\2\11\uffff\1\3\2\uffff\1\2\6\uffff\1\2\32\uffff\1" u"\3\14\uffff\1\2\13\uffff\1\2\103\uffff\1\27"), DFA.unpack(u"\1\4") ] # class definition for DFA #48 class DFA48(DFA): pass # lookup tables for DFA #66 DFA66_eot = DFA.unpack( u"\30\uffff" ) DFA66_eof = DFA.unpack( u"\30\uffff" ) DFA66_min = DFA.unpack( u"\1\25\1\7\2\uffff\1\u0087\1\u00ae\1\174\1\u00af\1\u0089\1\55\1" u"\174\1\134\1\u0088\1\u00db\1\u0089\1\25\1\u0087\1\174\1\u0089\1" u"\174\1\u0088\1\u00db\1\25\1\u00ad" ) DFA66_max = DFA.unpack( u"\1\u00da\1\u00ad\2\uffff\1\u0087\1\u00ae\1\174\1\u00af\1\u0089" u"\1\55\1\174\1\134\1\u0088\1\u00db\1\u0089\1\175\1\u0087\1\174\1" u"\u0089\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA66_accept = DFA.unpack( u"\2\uffff\1\2\1\1\24\uffff" ) DFA66_special = DFA.unpack( u"\30\uffff" ) DFA66_transition = [ DFA.unpack(u"\1\2\102\uffff\1\2\44\uffff\1\3\5\uffff\1\2\126\uffff" u"\1\1"), DFA.unpack(u"\1\4\11\uffff\1\4\2\uffff\1\4\4\uffff\1\4\31\uffff" u"\1\4\2\uffff\2\4\3\uffff\1\4\3\uffff\1\4\6\uffff\2\4\1\uffff\2" u"\4\3\uffff\1\4\11\uffff\1\4\2\uffff\1\4\6\uffff\1\4\2\uffff\1\4" u"\27\uffff\1\4\57\uffff\1\5"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\2\102\uffff\1\2\44\uffff\1\3"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\2\102\uffff\1\2\44\uffff\1\3\134\uffff\1\27"), DFA.unpack(u"\1\5") ] # class definition for DFA #66 class DFA66(DFA): pass # lookup tables for DFA #67 DFA67_eot = DFA.unpack( u"\31\uffff" ) DFA67_eof = DFA.unpack( u"\31\uffff" ) DFA67_min = DFA.unpack( u"\1\25\1\uffff\1\7\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1" u"\u0089\1\134\1\174\1\u00db\1\u0088\1\25\1\u0089\1\u0087\1\174\1" u"\u0089\1\174\1\u0088\1\u00db\1\25\1\u00ad" ) DFA67_max = DFA.unpack( u"\1\u00da\1\uffff\1\u00ad\2\uffff\1\u00ae\1\u0087\1\u00af\1\174" u"\1\55\1\u0089\1\134\1\174\1\u00db\1\u0088\1\130\1\u0089\1\u0087" u"\1\174\1\u0089\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA67_accept = DFA.unpack( u"\1\uffff\1\3\1\uffff\1\1\1\2\24\uffff" ) DFA67_special = DFA.unpack( u"\31\uffff" ) DFA67_transition = [ DFA.unpack(u"\1\4\102\uffff\1\3\52\uffff\1\1\126\uffff\1\2"), DFA.unpack(u""), DFA.unpack(u"\1\6\11\uffff\1\6\2\uffff\1\6\4\uffff\1\6\31\uffff" u"\1\6\2\uffff\2\6\3\uffff\1\6\3\uffff\1\6\6\uffff\2\6\1\uffff\2" u"\6\3\uffff\1\6\11\uffff\1\6\2\uffff\1\6\6\uffff\1\6\2\uffff\1\6" u"\27\uffff\1\6\57\uffff\1\5"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\4\102\uffff\1\3"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\27"), DFA.unpack(u"\1\4\102\uffff\1\3\u0081\uffff\1\30"), DFA.unpack(u"\1\5") ] # class definition for DFA #67 class DFA67(DFA): pass # lookup tables for DFA #68 DFA68_eot = DFA.unpack( u"\34\uffff" ) DFA68_eof = DFA.unpack( u"\34\uffff" ) DFA68_min = DFA.unpack( u"\1\24\1\7\1\u0081\3\uffff\1\u00ae\1\u0087\2\uffff\1\u00af\1\174" u"\1\55\1\u0089\1\134\1\174\1\u00db\1\u0088\1\24\1\u0089\1\u0087" u"\1\174\1\u0089\1\174\1\u0088\1\u00db\1\24\1\u00ad" ) DFA68_max = DFA.unpack( u"\1\u00da\1\u00ad\1\u0096\3\uffff\1\u00ae\1\u0087\2\uffff\1\u00af" u"\1\174\1\55\1\u0089\1\134\1\174\1\u00db\1\u0088\1\63\1\u0089\1" u"\u0087\1\174\1\u0089\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA68_accept = DFA.unpack( u"\3\uffff\1\2\1\4\1\5\2\uffff\1\3\1\1\22\uffff" ) DFA68_special = DFA.unpack( u"\34\uffff" ) DFA68_transition = [ DFA.unpack(u"\1\5\36\uffff\1\2\26\uffff\1\4\5\uffff\1\3\u0089\uffff" u"\1\1"), DFA.unpack(u"\1\7\11\uffff\1\7\2\uffff\1\7\4\uffff\1\7\31\uffff" u"\1\7\2\uffff\2\7\3\uffff\1\7\3\uffff\1\7\6\uffff\2\7\1\uffff\2" u"\7\3\uffff\1\7\11\uffff\1\7\2\uffff\1\7\6\uffff\1\7\2\uffff\1\7" u"\27\uffff\1\7\57\uffff\1\6"), DFA.unpack(u"\1\11\3\uffff\1\10\20\uffff\1\11"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\5\36\uffff\1\2"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\27"), DFA.unpack(u"\1\30"), DFA.unpack(u"\1\31"), DFA.unpack(u"\1\32"), DFA.unpack(u"\1\5\36\uffff\1\2\u00a6\uffff\1\33"), DFA.unpack(u"\1\6") ] # class definition for DFA #68 class DFA68(DFA): pass # lookup tables for DFA #72 DFA72_eot = DFA.unpack( u"\30\uffff" ) DFA72_eof = DFA.unpack( u"\1\3\27\uffff" ) DFA72_min = DFA.unpack( u"\1\6\1\7\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089\1\134" u"\1\174\1\u00db\1\u0088\1\24\1\u0089\1\u0087\1\174\1\u0089\1\174" u"\1\u0088\1\u00db\1\24\1\u00ad" ) DFA72_max = DFA.unpack( u"\1\u00da\1\u00ad\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089" u"\1\134\1\174\1\u00db\1\u0088\1\u008a\1\u0089\1\u0087\1\174\1\u0089" u"\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA72_accept = DFA.unpack( u"\2\uffff\1\1\1\2\24\uffff" ) DFA72_special = DFA.unpack( u"\30\uffff" ) DFA72_transition = [ DFA.unpack(u"\1\2\15\uffff\1\3\4\uffff\1\2\6\uffff\1\2\11\uffff\1" u"\2\10\uffff\1\3\2\uffff\1\2\4\uffff\1\2\3\uffff\1\2\12\uffff\1" u"\3\2\uffff\2\2\1\uffff\1\3\3\uffff\1\2\6\uffff\2\2\5\uffff\1\2" u"\35\uffff\1\3\11\uffff\1\2\11\uffff\1\2\1\uffff\1\2\103\uffff\1" u"\1"), DFA.unpack(u"\1\5\11\uffff\1\5\2\uffff\1\5\4\uffff\1\5\31\uffff" u"\1\5\2\uffff\2\5\3\uffff\1\5\3\uffff\1\5\6\uffff\2\5\1\uffff\2" u"\5\3\uffff\1\5\11\uffff\1\5\2\uffff\1\5\6\uffff\1\5\2\uffff\1\5" u"\27\uffff\1\5\57\uffff\1\4"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\3\4\uffff\1\2\31\uffff\1\3\2\uffff\1\2\4\uffff\1" u"\2\3\uffff\1\2\16\uffff\1\2\14\uffff\1\2\6\uffff\1\2\47\uffff\1" u"\2"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\3\4\uffff\1\2\31\uffff\1\3\2\uffff\1\2\4\uffff\1" u"\2\3\uffff\1\2\16\uffff\1\2\14\uffff\1\2\6\uffff\1\2\47\uffff\1" u"\2\13\uffff\1\2\103\uffff\1\27"), DFA.unpack(u"\1\4") ] # class definition for DFA #72 class DFA72(DFA): pass # lookup tables for DFA #83 DFA83_eot = DFA.unpack( u"\31\uffff" ) DFA83_eof = DFA.unpack( u"\1\2\30\uffff" ) DFA83_min = DFA.unpack( u"\1\6\1\0\27\uffff" ) DFA83_max = DFA.unpack( u"\1\u00da\1\0\27\uffff" ) DFA83_accept = DFA.unpack( u"\2\uffff\1\2\25\uffff\1\1" ) DFA83_special = DFA.unpack( u"\1\uffff\1\0\27\uffff" ) DFA83_transition = [ DFA.unpack(u"\1\2\15\uffff\1\2\4\uffff\1\2\6\uffff\1\2\11\uffff\1" u"\2\10\uffff\1\2\2\uffff\1\2\4\uffff\1\2\3\uffff\1\2\12\uffff\1" u"\1\2\uffff\2\2\1\uffff\1\2\3\uffff\1\2\6\uffff\2\2\5\uffff\1\2" u"\35\uffff\1\2\11\uffff\1\2\11\uffff\1\2\1\uffff\1\2\103\uffff\1" u"\2"), DFA.unpack(u"\1\uffff"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"") ] # class definition for DFA #83 class DFA83(DFA): pass def specialStateTransition(self_, s, input): # convince pylint that my self_ magic is ok ;) # pylint: disable-msg=E0213 # pretend we are a member of the recognizer # thus semantic predicates can be evaluated self = self_.recognizer _s = s if s == 0: LA83_1 = input.LA(1) index83_1 = input.index() input.rewind() s = -1 if (self.synpred111_sdl92()): s = 24 elif (True): s = 2 input.seek(index83_1) if s >= 0: return s if self._state.backtracking >0: raise BacktrackingFailed nvae = NoViableAltException(self_.getDescription(), 83, _s, input) self_.error(nvae) raise nvae # lookup tables for DFA #84 DFA84_eot = DFA.unpack( u"\30\uffff" ) DFA84_eof = DFA.unpack( u"\1\3\27\uffff" ) DFA84_min = DFA.unpack( u"\1\6\1\7\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089\1\134" u"\1\174\1\u00db\1\u0088\1\24\1\u0089\1\u0087\1\174\1\u0089\1\174" u"\1\u0088\1\u00db\1\24\1\u00ad" ) DFA84_max = DFA.unpack( u"\1\u00da\1\u00ad\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089" u"\1\134\1\174\1\u00db\1\u0088\1\u008a\1\u0089\1\u0087\1\174\1\u0089" u"\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA84_accept = DFA.unpack( u"\2\uffff\1\1\1\2\24\uffff" ) DFA84_special = DFA.unpack( u"\30\uffff" ) DFA84_transition = [ DFA.unpack(u"\1\2\15\uffff\1\3\4\uffff\1\2\6\uffff\1\2\11\uffff\1" u"\2\10\uffff\1\3\2\uffff\1\2\4\uffff\1\2\3\uffff\1\2\12\uffff\1" u"\3\2\uffff\2\2\1\uffff\1\3\3\uffff\1\2\6\uffff\2\2\5\uffff\1\2" u"\35\uffff\1\3\11\uffff\1\2\11\uffff\1\2\1\uffff\1\2\103\uffff\1" u"\1"), DFA.unpack(u"\1\5\11\uffff\1\5\2\uffff\1\5\4\uffff\1\5\31\uffff" u"\1\5\2\uffff\2\5\3\uffff\1\5\3\uffff\1\5\6\uffff\2\5\1\uffff\2" u"\5\3\uffff\1\5\11\uffff\1\5\2\uffff\1\5\6\uffff\1\5\2\uffff\1\5" u"\27\uffff\1\5\57\uffff\1\4"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\3\4\uffff\1\2\31\uffff\1\3\2\uffff\1\2\4\uffff\1" u"\2\3\uffff\1\2\16\uffff\1\2\14\uffff\1\2\6\uffff\1\2\47\uffff\1" u"\2"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\3\4\uffff\1\2\31\uffff\1\3\2\uffff\1\2\4\uffff\1" u"\2\3\uffff\1\2\16\uffff\1\2\14\uffff\1\2\6\uffff\1\2\47\uffff\1" u"\2\13\uffff\1\2\103\uffff\1\27"), DFA.unpack(u"\1\4") ] # class definition for DFA #84 class DFA84(DFA): pass # lookup tables for DFA #92 DFA92_eot = DFA.unpack( u"\51\uffff" ) DFA92_eof = DFA.unpack( u"\51\uffff" ) DFA92_min = DFA.unpack( u"\1\6\1\7\1\u0087\2\uffff\1\u00ae\1\u0087\1\6\1\u00af\1\174\1\7" u"\1\55\1\u0089\1\u0087\1\134\2\174\1\u00db\1\u0088\1\u0089\1\31" u"\1\u0089\1\174\1\u0087\1\u0088\1\174\2\u0089\1\u0087\2\174\1\u0088" u"\1\u0089\1\u00db\1\174\1\31\1\u0088\1\u00ad\1\u00d5\1\u00db\1\31" ) DFA92_max = DFA.unpack( u"\1\u00da\1\u00ad\1\u00d6\2\uffff\1\u00ae\1\u0087\1\u00da\1\u00af" u"\1\174\1\u00ad\1\55\1\u0089\1\u0087\1\134\2\174\1\u00db\1\u0088" u"\1\u0089\1\u008a\1\u0089\1\174\1\u0087\1\u0088\1\174\2\u0089\1" u"\u0087\2\174\1\u0088\1\u0089\1\u00db\1\174\1\u00da\1\u0088\1\u00ad" u"\1\u00d5\1\u00db\1\u00da" ) DFA92_accept = DFA.unpack( u"\3\uffff\1\1\1\2\44\uffff" ) DFA92_special = DFA.unpack( u"\51\uffff" ) DFA92_transition = [ DFA.unpack(u"\1\3\22\uffff\1\3\6\uffff\1\3\11\uffff\1\3\13\uffff" u"\1\4\4\uffff\1\4\3\uffff\1\3\15\uffff\1\3\1\4\5\uffff\1\3\6\uffff" u"\1\4\1\3\5\uffff\1\3\47\uffff\1\3\11\uffff\1\3\1\uffff\1\2\103" u"\uffff\1\1"), DFA.unpack(u"\1\6\11\uffff\1\6\2\uffff\1\6\4\uffff\1\6\31\uffff" u"\1\6\2\uffff\2\6\3\uffff\1\6\3\uffff\1\6\6\uffff\2\6\1\uffff\2" u"\6\3\uffff\1\6\11\uffff\1\6\2\uffff\1\6\6\uffff\1\6\2\uffff\1\6" u"\27\uffff\1\6\57\uffff\1\5"), DFA.unpack(u"\1\3\52\uffff\1\3\42\uffff\1\7\1\3"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\3\22\uffff\1\3\6\uffff\1\3\11\uffff\1\3\13\uffff" u"\1\4\4\uffff\1\4\3\uffff\1\3\15\uffff\1\3\1\4\5\uffff\1\3\6\uffff" u"\1\4\1\3\5\uffff\1\3\47\uffff\1\3\11\uffff\1\3\1\uffff\1\3\103" u"\uffff\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15\11\uffff\1\15\2\uffff\1\15\4\uffff\1\15\31\uffff" u"\1\15\2\uffff\2\15\3\uffff\1\15\3\uffff\1\15\6\uffff\2\15\1\uffff" u"\2\15\3\uffff\1\15\11\uffff\1\15\2\uffff\1\15\6\uffff\1\15\2\uffff" u"\1\15\27\uffff\1\15\57\uffff\1\5"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\3\34\uffff\1\4\4\uffff\1\4\3\uffff\1\3\16\uffff" u"\1\4\14\uffff\1\4\6\uffff\1\3\47\uffff\1\3"), DFA.unpack(u"\1\27"), DFA.unpack(u"\1\30"), DFA.unpack(u"\1\31"), DFA.unpack(u"\1\32"), DFA.unpack(u"\1\33"), DFA.unpack(u"\1\34"), DFA.unpack(u"\1\35"), DFA.unpack(u"\1\36"), DFA.unpack(u"\1\37"), DFA.unpack(u"\1\40"), DFA.unpack(u"\1\41"), DFA.unpack(u"\1\42"), DFA.unpack(u"\1\43"), DFA.unpack(u"\1\44"), DFA.unpack(u"\1\3\34\uffff\1\4\4\uffff\1\4\3\uffff\1\3\16\uffff" u"\1\4\14\uffff\1\4\6\uffff\1\3\47\uffff\1\3\13\uffff\1\46\103\uffff" u"\1\45"), DFA.unpack(u"\1\47"), DFA.unpack(u"\1\5"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\50"), DFA.unpack(u"\1\3\34\uffff\1\4\4\uffff\1\4\3\uffff\1\3\16\uffff" u"\1\4\14\uffff\1\4\6\uffff\1\3\47\uffff\1\3\117\uffff\1\45") ] # class definition for DFA #92 class DFA92(DFA): pass # lookup tables for DFA #89 DFA89_eot = DFA.unpack( u"\52\uffff" ) DFA89_eof = DFA.unpack( u"\1\3\6\uffff\1\3\42\uffff" ) DFA89_min = DFA.unpack( u"\1\6\1\7\1\u0087\2\uffff\1\u00ae\1\u0087\1\6\1\u00af\1\174\1\7" u"\1\u0087\1\55\1\u0089\1\u0087\1\134\2\174\1\u00db\1\u0088\1\u0089" u"\1\24\1\u0089\1\174\1\u0087\1\u0088\1\174\2\u0089\1\u0087\2\174" u"\1\u0088\1\u0089\1\u00db\1\174\1\24\1\u0088\1\u00ad\1\u00d5\1\u00db" u"\1\24" ) DFA89_max = DFA.unpack( u"\1\u00da\1\u00b1\1\u00d6\2\uffff\1\u00ae\1\u0087\1\u00da\1\u00af" u"\1\174\1\u00b1\1\u00d6\1\55\1\u0089\1\u0087\1\134\2\174\1\u00db" u"\1\u0088\1\u0089\1\u008a\1\u0089\1\174\1\u0087\1\u0088\1\174\2" u"\u0089\1\u0087\2\174\1\u0088\1\u0089\1\u00db\1\174\1\u00da\1\u0088" u"\1\u00ad\1\u00d5\1\u00db\1\u00da" ) DFA89_accept = DFA.unpack( u"\3\uffff\1\2\1\1\45\uffff" ) DFA89_special = DFA.unpack( u"\52\uffff" ) DFA89_transition = [ DFA.unpack(u"\1\4\15\uffff\2\3\3\uffff\1\4\1\uffff\1\3\4\uffff\1" u"\4\11\uffff\1\4\10\uffff\1\3\2\uffff\1\3\4\uffff\1\3\3\uffff\1" u"\4\12\uffff\1\3\2\uffff\1\4\1\3\1\uffff\1\3\3\uffff\1\4\3\uffff" u"\1\3\2\uffff\1\3\1\4\5\uffff\1\4\27\uffff\2\3\1\uffff\2\3\1\uffff" u"\1\3\2\uffff\1\3\3\uffff\1\3\2\uffff\1\4\2\3\7\uffff\1\4\1\uffff" u"\1\2\1\3\102\uffff\1\1"), DFA.unpack(u"\1\6\11\uffff\1\6\2\uffff\1\6\4\uffff\1\6\31\uffff" u"\1\6\2\uffff\2\6\3\uffff\1\6\3\uffff\1\6\6\uffff\2\6\1\uffff\2" u"\6\3\uffff\1\6\11\uffff\1\6\2\uffff\1\6\6\uffff\1\6\2\uffff\1\6" u"\27\uffff\1\6\57\uffff\1\5\3\uffff\1\3"), DFA.unpack(u"\1\4\52\uffff\1\4\42\uffff\1\7\1\4"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\4\15\uffff\2\3\3\uffff\1\4\1\uffff\1\3\4\uffff\1" u"\4\11\uffff\1\4\10\uffff\1\3\2\uffff\1\3\4\uffff\1\3\3\uffff\1" u"\4\12\uffff\1\3\2\uffff\1\4\1\3\1\uffff\1\3\3\uffff\1\4\3\uffff" u"\1\3\2\uffff\1\3\1\4\5\uffff\1\4\27\uffff\2\3\1\uffff\2\3\1\uffff" u"\1\3\2\uffff\1\3\3\uffff\1\3\2\uffff\1\4\2\3\7\uffff\1\4\1\uffff" u"\1\13\1\3\102\uffff\1\12"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16\11\uffff\1\16\2\uffff\1\16\4\uffff\1\16\31\uffff" u"\1\16\2\uffff\2\16\3\uffff\1\16\3\uffff\1\16\6\uffff\2\16\1\uffff" u"\2\16\3\uffff\1\16\11\uffff\1\16\2\uffff\1\16\6\uffff\1\16\2\uffff" u"\1\16\27\uffff\1\16\57\uffff\1\5\3\uffff\1\3"), DFA.unpack(u"\1\4\52\uffff\1\4\42\uffff\1\3\1\4"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\27"), DFA.unpack(u"\2\3\3\uffff\1\4\1\uffff\1\3\27\uffff\1\3\2\uffff\1" u"\3\4\uffff\1\3\3\uffff\1\4\16\uffff\1\3\11\uffff\1\3\2\uffff\1" u"\3\6\uffff\1\4\32\uffff\1\3\11\uffff\1\3\2\uffff\1\4"), DFA.unpack(u"\1\30"), DFA.unpack(u"\1\31"), DFA.unpack(u"\1\32"), DFA.unpack(u"\1\33"), DFA.unpack(u"\1\34"), DFA.unpack(u"\1\35"), DFA.unpack(u"\1\36"), DFA.unpack(u"\1\37"), DFA.unpack(u"\1\40"), DFA.unpack(u"\1\41"), DFA.unpack(u"\1\42"), DFA.unpack(u"\1\43"), DFA.unpack(u"\1\44"), DFA.unpack(u"\1\45"), DFA.unpack(u"\2\3\3\uffff\1\4\1\uffff\1\3\27\uffff\1\3\2\uffff\1" u"\3\4\uffff\1\3\3\uffff\1\4\16\uffff\1\3\11\uffff\1\3\2\uffff\1" u"\3\6\uffff\1\4\32\uffff\1\3\11\uffff\1\3\2\uffff\1\4\13\uffff\1" u"\47\103\uffff\1\46"), DFA.unpack(u"\1\50"), DFA.unpack(u"\1\5"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\51"), DFA.unpack(u"\2\3\3\uffff\1\4\1\uffff\1\3\27\uffff\1\3\2\uffff\1" u"\3\4\uffff\1\3\3\uffff\1\4\16\uffff\1\3\11\uffff\1\3\2\uffff\1" u"\3\6\uffff\1\4\32\uffff\1\3\11\uffff\1\3\2\uffff\1\4\13\uffff\1" u"\3\103\uffff\1\46") ] # class definition for DFA #89 class DFA89(DFA): pass # lookup tables for DFA #90 DFA90_eot = DFA.unpack( u"\23\uffff" ) DFA90_eof = DFA.unpack( u"\1\3\22\uffff" ) DFA90_min = DFA.unpack( u"\1\24\1\7\1\u00d5\1\uffff\1\u0087\1\0\1\174\1\uffff\1\u0089\1\174" u"\1\u0088\1\u0089\1\u0087\1\174\1\u0089\1\174\1\u0088\1\u00db\1" u"\24" ) DFA90_max = DFA.unpack( u"\1\u00da\1\u00b1\1\u00d5\1\uffff\1\u0087\1\0\1\174\1\uffff\1\u0089" u"\1\174\1\u0088\1\u0089\1\u0087\1\174\1\u0089\1\174\1\u0088\1\u00db" u"\1\u00da" ) DFA90_accept = DFA.unpack( u"\3\uffff\1\2\3\uffff\1\1\13\uffff" ) DFA90_special = DFA.unpack( u"\5\uffff\1\0\15\uffff" ) DFA90_transition = [ DFA.unpack(u"\2\3\5\uffff\1\3\27\uffff\1\3\2\uffff\1\3\4\uffff\1" u"\3\16\uffff\1\3\3\uffff\1\3\1\uffff\1\3\7\uffff\1\3\2\uffff\1\3" u"\36\uffff\2\3\1\uffff\2\3\1\uffff\1\3\2\uffff\1\3\3\uffff\1\3\3" u"\uffff\2\3\11\uffff\1\2\1\3\102\uffff\1\1"), DFA.unpack(u"\1\4\11\uffff\1\4\2\uffff\1\4\4\uffff\1\4\31\uffff" u"\1\4\2\uffff\2\4\3\uffff\1\4\3\uffff\1\4\6\uffff\2\4\1\uffff\2" u"\4\3\uffff\1\4\11\uffff\1\4\2\uffff\1\4\6\uffff\1\4\2\uffff\1\4" u"\27\uffff\1\4\57\uffff\1\3\3\uffff\1\3"), DFA.unpack(u"\1\5"), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\10"), DFA.unpack(u""), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\2\3\5\uffff\1\3\27\uffff\1\3\2\uffff\1\3\4\uffff\1" u"\3\22\uffff\1\3\11\uffff\1\3\2\uffff\1\3\41\uffff\1\3\11\uffff" u"\1\3\16\uffff\1\2\103\uffff\1\3") ] # class definition for DFA #90 class DFA90(DFA): pass def specialStateTransition(self_, s, input): # convince pylint that my self_ magic is ok ;) # pylint: disable-msg=E0213 # pretend we are a member of the recognizer # thus semantic predicates can be evaluated self = self_.recognizer _s = s if s == 0: LA90_5 = input.LA(1) index90_5 = input.index() input.rewind() s = -1 if (self.synpred118_sdl92()): s = 7 elif (True): s = 3 input.seek(index90_5) if s >= 0: return s if self._state.backtracking >0: raise BacktrackingFailed nvae = NoViableAltException(self_.getDescription(), 90, _s, input) self_.error(nvae) raise nvae # lookup tables for DFA #91 DFA91_eot = DFA.unpack( u"\30\uffff" ) DFA91_eof = DFA.unpack( u"\1\3\27\uffff" ) DFA91_min = DFA.unpack( u"\1\24\1\7\2\uffff\1\u0087\1\u00ae\1\174\1\u00af\1\u0089\1\55\1" u"\174\1\134\1\u0088\1\u00db\1\u0089\1\24\1\u0087\1\174\1\u0089\1" u"\174\1\u0088\1\u00db\1\24\1\u00ad" ) DFA91_max = DFA.unpack( u"\1\u00da\1\u00b1\2\uffff\1\u0087\1\u00ae\1\174\1\u00af\1\u0089" u"\1\55\1\174\1\134\1\u0088\1\u00db\1\u0089\2\u0087\1\174\1\u0089" u"\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA91_accept = DFA.unpack( u"\2\uffff\1\1\1\2\24\uffff" ) DFA91_special = DFA.unpack( u"\30\uffff" ) DFA91_transition = [ DFA.unpack(u"\2\3\5\uffff\1\3\27\uffff\1\3\2\uffff\1\2\4\uffff\1" u"\2\16\uffff\1\3\3\uffff\1\2\1\uffff\1\3\7\uffff\1\3\2\uffff\1\2" u"\36\uffff\2\3\1\uffff\2\3\1\uffff\1\3\2\uffff\1\3\3\uffff\1\3\3" u"\uffff\2\3\11\uffff\1\2\1\3\102\uffff\1\1"), DFA.unpack(u"\1\4\11\uffff\1\4\2\uffff\1\4\4\uffff\1\4\31\uffff" u"\1\4\2\uffff\2\4\3\uffff\1\4\3\uffff\1\4\6\uffff\2\4\1\uffff\2" u"\4\3\uffff\1\4\11\uffff\1\4\2\uffff\1\4\6\uffff\1\4\2\uffff\1\4" u"\27\uffff\1\4\57\uffff\1\5\3\uffff\1\3"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\2\3\5\uffff\1\3\27\uffff\1\3\2\uffff\1\2\4\uffff\1" u"\2\22\uffff\1\2\11\uffff\1\3\2\uffff\1\2\41\uffff\1\3\11\uffff" u"\1\3"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\2\3\5\uffff\1\3\27\uffff\1\3\2\uffff\1\2\4\uffff\1" u"\2\22\uffff\1\2\11\uffff\1\3\2\uffff\1\2\41\uffff\1\3\11\uffff" u"\1\3\16\uffff\1\2\103\uffff\1\27"), DFA.unpack(u"\1\5") ] # class definition for DFA #91 class DFA91(DFA): pass # lookup tables for DFA #93 DFA93_eot = DFA.unpack( u"\22\uffff" ) DFA93_eof = DFA.unpack( u"\22\uffff" ) DFA93_min = DFA.unpack( u"\1\6\1\7\1\u0087\1\uffff\1\u0087\1\uffff\1\174\1\u0089\1\174\1" u"\u0088\1\u0089\1\u0087\1\174\1\u0089\1\174\1\u0088\1\u00db\1\31" ) DFA93_max = DFA.unpack( u"\1\u00da\1\u00ad\1\u00d6\1\uffff\1\u0087\1\uffff\1\174\1\u0089" u"\1\174\1\u0088\1\u0089\1\u0087\1\174\1\u0089\1\174\1\u0088\1\u00db" u"\1\u00da" ) DFA93_accept = DFA.unpack( u"\3\uffff\1\2\1\uffff\1\1\14\uffff" ) DFA93_special = DFA.unpack( u"\22\uffff" ) DFA93_transition = [ DFA.unpack(u"\1\3\22\uffff\1\3\6\uffff\1\3\11\uffff\1\3\24\uffff" u"\1\3\15\uffff\1\3\6\uffff\1\3\7\uffff\1\3\5\uffff\1\3\47\uffff" u"\1\3\11\uffff\1\3\1\uffff\1\2\103\uffff\1\1"), DFA.unpack(u"\1\4\11\uffff\1\4\2\uffff\1\4\4\uffff\1\4\31\uffff" u"\1\4\2\uffff\2\4\3\uffff\1\4\3\uffff\1\4\6\uffff\2\4\1\uffff\2" u"\4\3\uffff\1\4\11\uffff\1\4\2\uffff\1\4\6\uffff\1\4\2\uffff\1\4" u"\27\uffff\1\4\57\uffff\1\3"), DFA.unpack(u"\1\3\52\uffff\1\3\42\uffff\1\5\1\3"), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u""), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\3\45\uffff\1\3\42\uffff\1\3\47\uffff\1\3\13\uffff" u"\1\5\103\uffff\1\3") ] # class definition for DFA #93 class DFA93(DFA): pass # lookup tables for DFA #94 DFA94_eot = DFA.unpack( u"\40\uffff" ) DFA94_eof = DFA.unpack( u"\40\uffff" ) DFA94_min = DFA.unpack( u"\1\6\1\7\12\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089\1" u"\134\1\174\1\u00db\1\u0088\1\31\1\u0089\1\u0087\1\174\1\u0089\1" u"\174\1\u0088\1\u00db\1\31\1\u00ad" ) DFA94_max = DFA.unpack( u"\1\u00da\1\u00ad\12\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1" u"\u0089\1\134\1\174\1\u00db\1\u0088\1\u008a\1\u0089\1\u0087\1\174" u"\1\u0089\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA94_accept = DFA.unpack( u"\2\uffff\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\10\1\11\1\12\24\uffff" ) DFA94_special = DFA.unpack( u"\40\uffff" ) DFA94_transition = [ DFA.unpack(u"\1\7\22\uffff\1\6\6\uffff\1\12\11\uffff\1\3\24\uffff" u"\1\4\15\uffff\1\11\6\uffff\1\10\7\uffff\1\3\5\uffff\1\2\47\uffff" u"\1\13\11\uffff\1\5\1\uffff\1\3\103\uffff\1\1"), DFA.unpack(u"\1\15\11\uffff\1\15\2\uffff\1\15\4\uffff\1\15\31\uffff" u"\1\15\2\uffff\2\15\3\uffff\1\15\3\uffff\1\15\6\uffff\2\15\1\uffff" u"\2\15\3\uffff\1\15\11\uffff\1\15\2\uffff\1\15\6\uffff\1\15\2\uffff" u"\1\15\27\uffff\1\15\57\uffff\1\14"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\27"), DFA.unpack(u"\1\6\45\uffff\1\4\42\uffff\1\2\47\uffff\1\13"), DFA.unpack(u"\1\30"), DFA.unpack(u"\1\31"), DFA.unpack(u"\1\32"), DFA.unpack(u"\1\33"), DFA.unpack(u"\1\34"), DFA.unpack(u"\1\35"), DFA.unpack(u"\1\36"), DFA.unpack(u"\1\6\45\uffff\1\4\42\uffff\1\2\47\uffff\1\13\117\uffff" u"\1\37"), DFA.unpack(u"\1\14") ] # class definition for DFA #94 class DFA94(DFA): pass # lookup tables for DFA #105 DFA105_eot = DFA.unpack( u"\30\uffff" ) DFA105_eof = DFA.unpack( u"\30\uffff" ) DFA105_min = DFA.unpack( u"\1\33\1\7\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089\1" u"\134\1\174\1\u00db\1\u0088\1\33\1\u0089\1\u0087\1\174\1\u0089\1" u"\174\1\u0088\1\u00db\1\33\1\u00ad" ) DFA105_max = DFA.unpack( u"\1\u00da\1\u00ad\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089" u"\1\134\1\174\1\u00db\1\u0088\1\u0087\1\u0089\1\u0087\1\174\1\u0089" u"\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA105_accept = DFA.unpack( u"\2\uffff\1\1\1\2\24\uffff" ) DFA105_special = DFA.unpack( u"\30\uffff" ) DFA105_transition = [ DFA.unpack(u"\1\3\153\uffff\1\2\122\uffff\1\1"), DFA.unpack(u"\1\5\11\uffff\1\5\2\uffff\1\5\4\uffff\1\5\31\uffff" u"\1\5\2\uffff\2\5\3\uffff\1\5\3\uffff\1\5\6\uffff\2\5\1\uffff\2" u"\5\3\uffff\1\5\11\uffff\1\5\2\uffff\1\5\6\uffff\1\5\2\uffff\1\5" u"\27\uffff\1\5\57\uffff\1\4"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\3\153\uffff\1\2"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\3\153\uffff\1\2\122\uffff\1\27"), DFA.unpack(u"\1\4") ] # class definition for DFA #105 class DFA105(DFA): pass # lookup tables for DFA #103 DFA103_eot = DFA.unpack( u"\30\uffff" ) DFA103_eof = DFA.unpack( u"\1\2\27\uffff" ) DFA103_min = DFA.unpack( u"\1\33\1\7\2\uffff\1\u0087\1\u00ae\1\174\1\u00af\1\u0089\1\55\1" u"\174\1\134\1\u0088\1\u00db\1\u0089\1\33\1\u0087\1\174\1\u0089\1" u"\174\1\u0088\1\u00db\1\33\1\u00ad" ) DFA103_max = DFA.unpack( u"\1\u00da\1\u00ad\2\uffff\1\u0087\1\u00ae\1\174\1\u00af\1\u0089" u"\1\55\1\174\1\134\1\u0088\1\u00db\1\u0089\2\u0087\1\174\1\u0089" u"\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA103_accept = DFA.unpack( u"\2\uffff\1\2\1\1\24\uffff" ) DFA103_special = DFA.unpack( u"\30\uffff" ) DFA103_transition = [ DFA.unpack(u"\1\2\153\uffff\1\3\3\uffff\2\2\115\uffff\1\1"), DFA.unpack(u"\1\4\11\uffff\1\4\2\uffff\1\4\4\uffff\1\4\31\uffff" u"\1\4\2\uffff\2\4\3\uffff\1\4\3\uffff\1\4\6\uffff\2\4\1\uffff\2" u"\4\3\uffff\1\4\11\uffff\1\4\2\uffff\1\4\6\uffff\1\4\2\uffff\1\4" u"\27\uffff\1\4\57\uffff\1\5"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\2\153\uffff\1\3"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\2\153\uffff\1\3\122\uffff\1\27"), DFA.unpack(u"\1\5") ] # class definition for DFA #103 class DFA103(DFA): pass # lookup tables for DFA #113 DFA113_eot = DFA.unpack( u"\30\uffff" ) DFA113_eof = DFA.unpack( u"\1\3\27\uffff" ) DFA113_min = DFA.unpack( u"\1\6\1\7\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089\1\134" u"\1\174\1\u00db\1\u0088\1\31\1\u0089\1\u0087\1\174\1\u0089\1\174" u"\1\u0088\1\u00db\1\31\1\u00ad" ) DFA113_max = DFA.unpack( u"\1\u00da\1\u00ad\2\uffff\1\u00ae\1\u0087\1\u00af\1\174\1\55\1\u0089" u"\1\134\1\174\1\u00db\1\u0088\1\u008a\1\u0089\1\u0087\1\174\1\u0089" u"\1\174\1\u0088\1\u00db\1\u00da\1\u00ad" ) DFA113_accept = DFA.unpack( u"\2\uffff\1\1\1\2\24\uffff" ) DFA113_special = DFA.unpack( u"\30\uffff" ) DFA113_transition = [ DFA.unpack(u"\1\2\22\uffff\1\2\1\uffff\1\3\4\uffff\1\2\11\uffff\1" u"\2\13\uffff\1\2\4\uffff\1\2\3\uffff\1\2\15\uffff\2\2\5\uffff\1" u"\2\6\uffff\2\2\5\uffff\1\2\44\uffff\1\3\2\uffff\1\2\2\3\7\uffff" u"\1\2\1\uffff\1\2\103\uffff\1\1"), DFA.unpack(u"\1\5\11\uffff\1\5\2\uffff\1\5\4\uffff\1\5\31\uffff" u"\1\5\2\uffff\2\5\3\uffff\1\5\3\uffff\1\5\6\uffff\2\5\1\uffff\2" u"\5\3\uffff\1\5\11\uffff\1\5\2\uffff\1\5\6\uffff\1\5\2\uffff\1\5" u"\27\uffff\1\5\57\uffff\1\4"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\2\1\uffff\1\3\32\uffff\1\2\4\uffff\1\2\3\uffff\1" u"\2\16\uffff\1\2\14\uffff\1\2\6\uffff\1\2\44\uffff\1\3\2\uffff\1" u"\2"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\21"), DFA.unpack(u"\1\22"), DFA.unpack(u"\1\23"), DFA.unpack(u"\1\24"), DFA.unpack(u"\1\25"), DFA.unpack(u"\1\26"), DFA.unpack(u"\1\2\1\uffff\1\3\32\uffff\1\2\4\uffff\1\2\3\uffff\1" u"\2\16\uffff\1\2\14\uffff\1\2\6\uffff\1\2\44\uffff\1\3\2\uffff\1" u"\2\13\uffff\1\2\103\uffff\1\27"), DFA.unpack(u"\1\4") ] # class definition for DFA #113 class DFA113(DFA): pass # lookup tables for DFA #119 DFA119_eot = DFA.unpack( u"\30\uffff" ) DFA119_eof = DFA.unpack( u"\30\uffff" ) DFA119_min = DFA.unpack( u"\1\13\20\0\7\uffff" ) DFA119_max = DFA.unpack( u"\1\u00b3\20\0\7\uffff" ) DFA119_accept = DFA.unpack( u"\21\uffff\1\2\5\uffff\1\1" ) DFA119_special = DFA.unpack( u"\1\uffff\1\0\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\10\1\11\1\12\1\13\1" u"\14\1\15\1\16\1\17\7\uffff" ) DFA119_transition = [ DFA.unpack(u"\1\2\34\uffff\1\13\5\uffff\1\16\16\uffff\1\3\36\uffff" u"\1\6\37\uffff\1\12\12\uffff\1\15\6\uffff\6\21\2\uffff\1\1\5\uffff" u"\1\20\4\uffff\1\17\1\4\1\5\1\7\1\10\1\11\14\uffff\1\14"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"") ] # class definition for DFA #119 class DFA119(DFA): pass def specialStateTransition(self_, s, input): # convince pylint that my self_ magic is ok ;) # pylint: disable-msg=E0213 # pretend we are a member of the recognizer # thus semantic predicates can be evaluated self = self_.recognizer _s = s if s == 0: LA119_1 = input.LA(1) index119_1 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_1) if s >= 0: return s elif s == 1: LA119_2 = input.LA(1) index119_2 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_2) if s >= 0: return s elif s == 2: LA119_3 = input.LA(1) index119_3 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_3) if s >= 0: return s elif s == 3: LA119_4 = input.LA(1) index119_4 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_4) if s >= 0: return s elif s == 4: LA119_5 = input.LA(1) index119_5 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_5) if s >= 0: return s elif s == 5: LA119_6 = input.LA(1) index119_6 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_6) if s >= 0: return s elif s == 6: LA119_7 = input.LA(1) index119_7 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_7) if s >= 0: return s elif s == 7: LA119_8 = input.LA(1) index119_8 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_8) if s >= 0: return s elif s == 8: LA119_9 = input.LA(1) index119_9 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_9) if s >= 0: return s elif s == 9: LA119_10 = input.LA(1) index119_10 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_10) if s >= 0: return s elif s == 10: LA119_11 = input.LA(1) index119_11 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_11) if s >= 0: return s elif s == 11: LA119_12 = input.LA(1) index119_12 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_12) if s >= 0: return s elif s == 12: LA119_13 = input.LA(1) index119_13 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_13) if s >= 0: return s elif s == 13: LA119_14 = input.LA(1) index119_14 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_14) if s >= 0: return s elif s == 14: LA119_15 = input.LA(1) index119_15 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_15) if s >= 0: return s elif s == 15: LA119_16 = input.LA(1) index119_16 = input.index() input.rewind() s = -1 if (self.synpred156_sdl92()): s = 23 elif (True): s = 17 input.seek(index119_16) if s >= 0: return s if self._state.backtracking >0: raise BacktrackingFailed nvae = NoViableAltException(self_.getDescription(), 119, _s, input) self_.error(nvae) raise nvae # lookup tables for DFA #152 DFA152_eot = DFA.unpack( u"\12\uffff" ) DFA152_eof = DFA.unpack( u"\1\1\11\uffff" ) DFA152_min = DFA.unpack( u"\1\6\1\uffff\7\0\1\uffff" ) DFA152_max = DFA.unpack( u"\1\u00da\1\uffff\7\0\1\uffff" ) DFA152_accept = DFA.unpack( u"\1\uffff\1\2\7\uffff\1\1" ) DFA152_special = DFA.unpack( u"\2\uffff\1\1\1\4\1\0\1\6\1\2\1\5\1\3\1\uffff" ) DFA152_transition = [ DFA.unpack(u"\1\1\12\uffff\1\1\2\uffff\2\1\3\uffff\1\1\1\uffff\1" u"\1\2\uffff\1\1\1\uffff\1\1\2\uffff\1\1\6\uffff\1\1\5\uffff\1\10" u"\2\uffff\1\1\2\uffff\1\1\4\uffff\1\1\3\uffff\1\1\12\uffff\1\1\2" u"\uffff\2\1\1\uffff\1\1\3\uffff\1\1\3\uffff\1\1\2\uffff\2\1\5\uffff" u"\1\1\5\uffff\1\1\17\uffff\1\1\1\uffff\2\1\1\uffff\5\1\1\uffff\1" u"\1\3\uffff\6\1\1\uffff\1\2\1\3\1\4\1\6\1\7\1\5\1\1\1\uffff\13\1" u"\23\uffff\1\1\30\uffff\1\1\7\uffff\2\1\1\uffff\1\1\1\uffff\1\1"), DFA.unpack(u""), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u"") ] # class definition for DFA #152 class DFA152(DFA): pass def specialStateTransition(self_, s, input): # convince pylint that my self_ magic is ok ;) # pylint: disable-msg=E0213 # pretend we are a member of the recognizer # thus semantic predicates can be evaluated self = self_.recognizer _s = s if s == 0: LA152_4 = input.LA(1) index152_4 = input.index() input.rewind() s = -1 if (self.synpred201_sdl92()): s = 9 elif (True): s = 1 input.seek(index152_4) if s >= 0: return s elif s == 1: LA152_2 = input.LA(1) index152_2 = input.index() input.rewind() s = -1 if (self.synpred201_sdl92()): s = 9 elif (True): s = 1 input.seek(index152_2) if s >= 0: return s elif s == 2: LA152_6 = input.LA(1) index152_6 = input.index() input.rewind() s = -1 if (self.synpred201_sdl92()): s = 9 elif (True): s = 1 input.seek(index152_6) if s >= 0: return s elif s == 3: LA152_8 = input.LA(1) index152_8 = input.index() input.rewind() s = -1 if (self.synpred201_sdl92()): s = 9 elif (True): s = 1 input.seek(index152_8) if s >= 0: return s elif s == 4: LA152_3 = input.LA(1) index152_3 = input.index() input.rewind() s = -1 if (self.synpred201_sdl92()): s = 9 elif (True): s = 1 input.seek(index152_3) if s >= 0: return s elif s == 5: LA152_7 = input.LA(1) index152_7 = input.index() input.rewind() s = -1 if (self.synpred201_sdl92()): s = 9 elif (True): s = 1 input.seek(index152_7) if s >= 0: return s elif s == 6: LA152_5 = input.LA(1) index152_5 = input.index() input.rewind() s = -1 if (self.synpred201_sdl92()): s = 9 elif (True): s = 1 input.seek(index152_5) if s >= 0: return s if self._state.backtracking >0: raise BacktrackingFailed nvae = NoViableAltException(self_.getDescription(), 152, _s, input) self_.error(nvae) raise nvae # lookup tables for DFA #157 DFA157_eot = DFA.unpack( u"\22\uffff" ) DFA157_eof = DFA.unpack( u"\22\uffff" ) DFA157_min = DFA.unpack( u"\1\13\1\0\20\uffff" ) DFA157_max = DFA.unpack( u"\1\u00b3\1\0\20\uffff" ) DFA157_accept = DFA.unpack( u"\2\uffff\1\2\14\uffff\1\3\1\4\1\1" ) DFA157_special = DFA.unpack( u"\1\uffff\1\0\20\uffff" ) DFA157_transition = [ DFA.unpack(u"\1\2\34\uffff\1\2\5\uffff\1\2\16\uffff\1\2\36\uffff" u"\1\2\37\uffff\1\2\12\uffff\1\2\16\uffff\1\1\5\uffff\1\20\4\uffff" u"\1\17\5\2\14\uffff\1\2"), DFA.unpack(u"\1\uffff"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"") ] # class definition for DFA #157 class DFA157(DFA): pass def specialStateTransition(self_, s, input): # convince pylint that my self_ magic is ok ;) # pylint: disable-msg=E0213 # pretend we are a member of the recognizer # thus semantic predicates can be evaluated self = self_.recognizer _s = s if s == 0: LA157_1 = input.LA(1) index157_1 = input.index() input.rewind() s = -1 if (self.synpred209_sdl92()): s = 17 elif (self.synpred210_sdl92()): s = 2 input.seek(index157_1) if s >= 0: return s if self._state.backtracking >0: raise BacktrackingFailed nvae = NoViableAltException(self_.getDescription(), 157, _s, input) self_.error(nvae) raise nvae # lookup tables for DFA #158 DFA158_eot = DFA.unpack( u"\105\uffff" ) DFA158_eof = DFA.unpack( u"\1\1\104\uffff" ) DFA158_min = DFA.unpack( u"\1\6\54\uffff\1\0\20\uffff\1\0\6\uffff" ) DFA158_max = DFA.unpack( u"\1\u00da\54\uffff\1\0\20\uffff\1\0\6\uffff" ) DFA158_accept = DFA.unpack( u"\1\uffff\1\3\101\uffff\1\1\1\2" ) DFA158_special = DFA.unpack( u"\55\uffff\1\0\20\uffff\1\1\6\uffff" ) DFA158_transition = [ DFA.unpack(u"\1\1\12\uffff\1\1\2\uffff\2\1\3\uffff\1\1\1\uffff\1" u"\1\2\uffff\1\1\1\uffff\1\1\2\uffff\1\1\6\uffff\1\1\5\uffff\1\1" u"\2\uffff\1\1\2\uffff\1\1\4\uffff\1\1\3\uffff\1\1\12\uffff\1\1\2" u"\uffff\2\1\1\uffff\1\1\3\uffff\1\1\3\uffff\1\1\2\uffff\2\1\5\uffff" u"\1\1\5\uffff\1\1\17\uffff\1\1\1\uffff\2\1\1\uffff\5\1\1\uffff\1" u"\1\3\uffff\1\55\5\1\1\uffff\7\1\1\uffff\13\1\21\uffff\1\1\1\uffff" u"\1\1\30\uffff\1\1\7\uffff\1\1\1\76\1\uffff\1\1\1\uffff\1\1"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\uffff"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\uffff"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"") ] # class definition for DFA #158 class DFA158(DFA): pass def specialStateTransition(self_, s, input): # convince pylint that my self_ magic is ok ;) # pylint: disable-msg=E0213 # pretend we are a member of the recognizer # thus semantic predicates can be evaluated self = self_.recognizer _s = s if s == 0: LA158_45 = input.LA(1) index158_45 = input.index() input.rewind() s = -1 if (self.synpred212_sdl92()): s = 67 elif (True): s = 1 input.seek(index158_45) if s >= 0: return s elif s == 1: LA158_62 = input.LA(1) index158_62 = input.index() input.rewind() s = -1 if (self.synpred213_sdl92()): s = 68 elif (True): s = 1 input.seek(index158_62) if s >= 0: return s if self._state.backtracking >0: raise BacktrackingFailed nvae = NoViableAltException(self_.getDescription(), 158, _s, input) self_.error(nvae) raise nvae # lookup tables for DFA #162 DFA162_eot = DFA.unpack( u"\23\uffff" ) DFA162_eof = DFA.unpack( u"\23\uffff" ) DFA162_min = DFA.unpack( u"\1\13\12\uffff\2\0\6\uffff" ) DFA162_max = DFA.unpack( u"\1\u00b3\12\uffff\2\0\6\uffff" ) DFA162_accept = DFA.unpack( u"\1\uffff\1\1\1\2\1\3\1\4\1\5\1\6\1\7\1\10\1\11\1\12\2\uffff\1\13" u"\1\14\1\15\1\16\1\17\1\20" ) DFA162_special = DFA.unpack( u"\13\uffff\1\0\1\1\6\uffff" ) DFA162_transition = [ DFA.unpack(u"\1\1\34\uffff\1\12\24\uffff\1\2\36\uffff\1\5\37\uffff" u"\1\11\31\uffff\1\13\13\uffff\1\3\1\4\1\6\1\7\1\10\14\uffff\1\14"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\uffff"), DFA.unpack(u"\1\uffff"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"") ] # class definition for DFA #162 class DFA162(DFA): pass def specialStateTransition(self_, s, input): # convince pylint that my self_ magic is ok ;) # pylint: disable-msg=E0213 # pretend we are a member of the recognizer # thus semantic predicates can be evaluated self = self_.recognizer _s = s if s == 0: LA162_11 = input.LA(1) index162_11 = input.index() input.rewind() s = -1 if (self.synpred226_sdl92()): s = 13 elif (self.synpred227_sdl92()): s = 14 input.seek(index162_11) if s >= 0: return s elif s == 1: LA162_12 = input.LA(1) index162_12 = input.index() input.rewind() s = -1 if (self.synpred228_sdl92()): s = 15 elif (self.synpred229_sdl92()): s = 16 elif (self.synpred231_sdl92()): s = 17 elif (True): s = 18 input.seek(index162_12) if s >= 0: return s if self._state.backtracking >0: raise BacktrackingFailed nvae = NoViableAltException(self_.getDescription(), 162, _s, input) self_.error(nvae) raise nvae # lookup tables for DFA #171 DFA171_eot = DFA.unpack( u"\21\uffff" ) DFA171_eof = DFA.unpack( u"\21\uffff" ) DFA171_min = DFA.unpack( u"\1\66\1\7\2\uffff\1\u0087\1\174\1\u0089\1\174\1\u0088\1\u0089\1" u"\u0087\1\174\1\u0089\1\174\1\u0088\1\u00db\1\66" ) DFA171_max = DFA.unpack( u"\1\u00da\1\u00ad\2\uffff\1\u0087\1\174\1\u0089\1\174\1\u0088\1" u"\u0089\1\u0087\1\174\1\u0089\1\174\1\u0088\1\u00db\1\u00da" ) DFA171_accept = DFA.unpack( u"\2\uffff\1\1\1\2\15\uffff" ) DFA171_special = DFA.unpack( u"\21\uffff" ) DFA171_transition = [ DFA.unpack(u"\1\3\4\uffff\1\3\22\uffff\1\3\14\uffff\1\3\72\uffff" u"\1\2\103\uffff\1\1"), DFA.unpack(u"\1\4\11\uffff\1\4\2\uffff\1\4\4\uffff\1\4\31\uffff" u"\1\4\2\uffff\2\4\3\uffff\1\4\3\uffff\1\4\6\uffff\2\4\1\uffff\2" u"\4\3\uffff\1\4\11\uffff\1\4\2\uffff\1\4\6\uffff\1\4\2\uffff\1\4" u"\27\uffff\1\4\57\uffff\1\3"), DFA.unpack(u""), DFA.unpack(u""), DFA.unpack(u"\1\5"), DFA.unpack(u"\1\6"), DFA.unpack(u"\1\7"), DFA.unpack(u"\1\10"), DFA.unpack(u"\1\11"), DFA.unpack(u"\1\12"), DFA.unpack(u"\1\13"), DFA.unpack(u"\1\14"), DFA.unpack(u"\1\15"), DFA.unpack(u"\1\16"), DFA.unpack(u"\1\17"), DFA.unpack(u"\1\20"), DFA.unpack(u"\1\3\4\uffff\1\3\22\uffff\1\3\14\uffff\1\3\72\uffff" u"\1\2\103\uffff\1\3") ] # class definition for DFA #171 class DFA171(DFA): pass FOLLOW_use_clause_in_pr_file1288 = frozenset([1, 73, 97, 108, 218]) FOLLOW_system_definition_in_pr_file1308 = frozenset([1, 73, 97, 108, 218]) FOLLOW_process_definition_in_pr_file1328 = frozenset([1, 73, 97, 108, 218]) FOLLOW_SYSTEM_in_system_definition1353 = frozenset([150]) FOLLOW_system_name_in_system_definition1355 = frozenset([17, 127, 218]) FOLLOW_end_in_system_definition1357 = frozenset([12, 13, 70, 85, 114, 218]) FOLLOW_entity_in_system_in_system_definition1375 = frozenset([12, 13, 70, 85, 114, 218]) FOLLOW_ENDSYSTEM_in_system_definition1394 = frozenset([17, 127, 150, 218]) FOLLOW_system_name_in_system_definition1396 = frozenset([17, 127, 218]) FOLLOW_end_in_system_definition1399 = frozenset([1]) FOLLOW_use_asn1_in_use_clause1446 = frozenset([108]) FOLLOW_USE_in_use_clause1465 = frozenset([150]) FOLLOW_package_name_in_use_clause1467 = frozenset([17, 127, 218]) FOLLOW_end_in_use_clause1469 = frozenset([1]) FOLLOW_signal_declaration_in_entity_in_system1521 = frozenset([1]) FOLLOW_text_area_in_entity_in_system1541 = frozenset([1]) FOLLOW_procedure_in_entity_in_system1561 = frozenset([1]) FOLLOW_channel_in_entity_in_system1581 = frozenset([1]) FOLLOW_block_definition_in_entity_in_system1601 = frozenset([1]) FOLLOW_paramnames_in_signal_declaration1625 = frozenset([85]) FOLLOW_SIGNAL_in_signal_declaration1644 = frozenset([150]) FOLLOW_signal_id_in_signal_declaration1646 = frozenset([17, 127, 135, 218]) FOLLOW_input_params_in_signal_declaration1648 = frozenset([17, 127, 218]) FOLLOW_end_in_signal_declaration1651 = frozenset([1]) FOLLOW_CHANNEL_in_channel1701 = frozenset([150]) FOLLOW_channel_id_in_channel1703 = frozenset([116]) FOLLOW_route_in_channel1721 = frozenset([115, 116]) FOLLOW_ENDCHANNEL_in_channel1740 = frozenset([17, 127, 218]) FOLLOW_end_in_channel1742 = frozenset([1]) FOLLOW_FROM_in_route1789 = frozenset([150]) FOLLOW_source_id_in_route1791 = frozenset([106]) FOLLOW_TO_in_route1793 = frozenset([150]) FOLLOW_dest_id_in_route1795 = frozenset([117]) FOLLOW_WITH_in_route1797 = frozenset([150]) FOLLOW_signal_id_in_route1799 = frozenset([17, 127, 137, 218]) FOLLOW_COMMA_in_route1802 = frozenset([150]) FOLLOW_signal_id_in_route1804 = frozenset([17, 127, 137, 218]) FOLLOW_end_in_route1808 = frozenset([1]) FOLLOW_BLOCK_in_block_definition1857 = frozenset([150]) FOLLOW_block_id_in_block_definition1859 = frozenset([17, 127, 218]) FOLLOW_end_in_block_definition1861 = frozenset([12, 13, 20, 70, 73, 85, 97, 108, 118, 119, 218]) FOLLOW_entity_in_block_in_block_definition1879 = frozenset([12, 13, 20, 70, 73, 85, 97, 108, 118, 119, 218]) FOLLOW_ENDBLOCK_in_block_definition1898 = frozenset([17, 127, 218]) FOLLOW_end_in_block_definition1900 = frozenset([1]) FOLLOW_signal_declaration_in_entity_in_block1949 = frozenset([1]) FOLLOW_signalroute_in_entity_in_block1969 = frozenset([1]) FOLLOW_connection_in_entity_in_block1989 = frozenset([1]) FOLLOW_block_definition_in_entity_in_block2009 = frozenset([1]) FOLLOW_process_definition_in_entity_in_block2029 = frozenset([1]) FOLLOW_SIGNALROUTE_in_signalroute2052 = frozenset([150]) FOLLOW_route_id_in_signalroute2054 = frozenset([116]) FOLLOW_route_in_signalroute2072 = frozenset([1, 116]) FOLLOW_CONNECT_in_connection2120 = frozenset([150]) FOLLOW_channel_id_in_connection2122 = frozenset([120]) FOLLOW_AND_in_connection2124 = frozenset([150]) FOLLOW_route_id_in_connection2126 = frozenset([17, 127, 218]) FOLLOW_end_in_connection2128 = frozenset([1]) FOLLOW_PROCESS_in_process_definition2174 = frozenset([150]) FOLLOW_process_id_in_process_definition2176 = frozenset([121, 135]) FOLLOW_number_of_instances_in_process_definition2178 = frozenset([121]) FOLLOW_REFERENCED_in_process_definition2181 = frozenset([17, 127, 218]) FOLLOW_end_in_process_definition2183 = frozenset([1]) FOLLOW_cif_in_process_definition2229 = frozenset([73]) FOLLOW_PROCESS_in_process_definition2232 = frozenset([150]) FOLLOW_process_id_in_process_definition2234 = frozenset([17, 127, 135, 218]) FOLLOW_number_of_instances_in_process_definition2236 = frozenset([17, 127, 218]) FOLLOW_end_in_process_definition2239 = frozenset([21, 70, 88, 122, 125, 218]) FOLLOW_text_area_in_process_definition2258 = frozenset([21, 70, 88, 122, 125, 218]) FOLLOW_procedure_in_process_definition2262 = frozenset([21, 70, 88, 122, 125, 218]) FOLLOW_composite_state_in_process_definition2266 = frozenset([21, 70, 88, 122, 125, 218]) FOLLOW_processBody_in_process_definition2286 = frozenset([122]) FOLLOW_ENDPROCESS_in_process_definition2289 = frozenset([17, 127, 150, 218]) FOLLOW_process_id_in_process_definition2291 = frozenset([17, 127, 218]) FOLLOW_end_in_process_definition2310 = frozenset([1]) FOLLOW_cif_in_procedure2393 = frozenset([70]) FOLLOW_PROCEDURE_in_procedure2412 = frozenset([150]) FOLLOW_procedure_id_in_procedure2414 = frozenset([17, 127, 218]) FOLLOW_end_in_procedure2416 = frozenset([21, 34, 43, 70, 88, 123, 125, 218]) FOLLOW_fpar_in_procedure2434 = frozenset([21, 34, 70, 88, 123, 125, 218]) FOLLOW_text_area_in_procedure2454 = frozenset([21, 34, 70, 88, 123, 125, 218]) FOLLOW_procedure_in_procedure2458 = frozenset([21, 34, 70, 88, 123, 125, 218]) FOLLOW_processBody_in_procedure2480 = frozenset([123]) FOLLOW_ENDPROCEDURE_in_procedure2483 = frozenset([17, 127, 150, 218]) FOLLOW_procedure_id_in_procedure2485 = frozenset([17, 127, 218]) FOLLOW_EXTERNAL_in_procedure2491 = frozenset([17, 127, 218]) FOLLOW_end_in_procedure2510 = frozenset([1]) FOLLOW_FPAR_in_fpar2592 = frozenset([48, 50, 150]) FOLLOW_formal_variable_param_in_fpar2594 = frozenset([17, 127, 137, 218]) FOLLOW_COMMA_in_fpar2613 = frozenset([48, 50, 150]) FOLLOW_formal_variable_param_in_fpar2615 = frozenset([17, 127, 137, 218]) FOLLOW_end_in_fpar2635 = frozenset([1]) FOLLOW_INOUT_in_formal_variable_param2681 = frozenset([48, 50, 150]) FOLLOW_IN_in_formal_variable_param2685 = frozenset([48, 50, 150]) FOLLOW_variable_id_in_formal_variable_param2705 = frozenset([137, 150]) FOLLOW_COMMA_in_formal_variable_param2708 = frozenset([48, 50, 150]) FOLLOW_variable_id_in_formal_variable_param2710 = frozenset([137, 150]) FOLLOW_sort_in_formal_variable_param2714 = frozenset([1]) FOLLOW_cif_in_text_area2768 = frozenset([24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_content_in_text_area2786 = frozenset([24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_cif_end_text_in_text_area2805 = frozenset([1]) FOLLOW_procedure_in_content2858 = frozenset([1, 24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_use_clause_in_content2879 = frozenset([1, 24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_signal_declaration_in_content2900 = frozenset([1, 24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_fpar_in_content2921 = frozenset([1, 24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_timer_declaration_in_content2942 = frozenset([1, 24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_syntype_definition_in_content2963 = frozenset([1, 24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_newtype_definition_in_content2984 = frozenset([1, 24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_variable_definition_in_content3005 = frozenset([1, 24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_synonym_definition_in_content3026 = frozenset([1, 24, 43, 58, 70, 85, 94, 96, 105, 108, 218]) FOLLOW_TIMER_in_timer_declaration3136 = frozenset([150]) FOLLOW_timer_id_in_timer_declaration3138 = frozenset([17, 127, 137, 218]) FOLLOW_COMMA_in_timer_declaration3157 = frozenset([150]) FOLLOW_timer_id_in_timer_declaration3159 = frozenset([17, 127, 137, 218]) FOLLOW_end_in_timer_declaration3179 = frozenset([1]) FOLLOW_SYNTYPE_in_syntype_definition3223 = frozenset([137, 150]) FOLLOW_syntype_name_in_syntype_definition3225 = frozenset([142]) FOLLOW_EQ_in_syntype_definition3227 = frozenset([137, 150]) FOLLOW_parent_sort_in_syntype_definition3229 = frozenset([23, 30]) FOLLOW_CONSTANTS_in_syntype_definition3248 = frozenset([11, 40, 46, 61, 92, 124, 135, 142, 143, 144, 145, 146, 147, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_range_condition_in_syntype_definition3251 = frozenset([30, 137]) FOLLOW_COMMA_in_syntype_definition3254 = frozenset([11, 40, 46, 61, 92, 124, 135, 142, 143, 144, 145, 146, 147, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_range_condition_in_syntype_definition3256 = frozenset([30, 137]) FOLLOW_ENDSYNTYPE_in_syntype_definition3280 = frozenset([17, 127, 137, 150, 218]) FOLLOW_syntype_name_in_syntype_definition3282 = frozenset([17, 127, 218]) FOLLOW_end_in_syntype_definition3285 = frozenset([1]) FOLLOW_sort_in_syntype_name3333 = frozenset([1]) FOLLOW_sort_in_parent_sort3355 = frozenset([1]) FOLLOW_NEWTYPE_in_newtype_definition3377 = frozenset([137, 150]) FOLLOW_type_name_in_newtype_definition3379 = frozenset([8, 29, 93]) FOLLOW_array_definition_in_newtype_definition3382 = frozenset([29]) FOLLOW_structure_definition_in_newtype_definition3384 = frozenset([29]) FOLLOW_ENDNEWTYPE_in_newtype_definition3404 = frozenset([17, 127, 137, 150, 218]) FOLLOW_type_name_in_newtype_definition3406 = frozenset([17, 127, 218]) FOLLOW_end_in_newtype_definition3409 = frozenset([1]) FOLLOW_sort_in_type_name3459 = frozenset([1]) FOLLOW_ARRAY_in_array_definition3481 = frozenset([135]) FOLLOW_L_PAREN_in_array_definition3483 = frozenset([137, 150]) FOLLOW_sort_in_array_definition3485 = frozenset([137]) FOLLOW_COMMA_in_array_definition3487 = frozenset([137, 150]) FOLLOW_sort_in_array_definition3489 = frozenset([136]) FOLLOW_R_PAREN_in_array_definition3491 = frozenset([1]) FOLLOW_STRUCT_in_structure_definition3536 = frozenset([150]) FOLLOW_field_list_in_structure_definition3538 = frozenset([17, 127, 218]) FOLLOW_end_in_structure_definition3540 = frozenset([1]) FOLLOW_field_definition_in_field_list3583 = frozenset([1, 17, 127, 218]) FOLLOW_end_in_field_list3586 = frozenset([150]) FOLLOW_field_definition_in_field_list3588 = frozenset([1, 17, 127, 218]) FOLLOW_field_name_in_field_definition3634 = frozenset([137, 150]) FOLLOW_COMMA_in_field_definition3637 = frozenset([150]) FOLLOW_field_name_in_field_definition3639 = frozenset([137, 150]) FOLLOW_sort_in_field_definition3643 = frozenset([1]) FOLLOW_DCL_in_variable_definition3689 = frozenset([48, 50, 150]) FOLLOW_variables_of_sort_in_variable_definition3691 = frozenset([17, 127, 137, 218]) FOLLOW_COMMA_in_variable_definition3710 = frozenset([48, 50, 150]) FOLLOW_variables_of_sort_in_variable_definition3712 = frozenset([17, 127, 137, 218]) FOLLOW_end_in_variable_definition3732 = frozenset([1]) FOLLOW_internal_synonym_definition_in_synonym_definition3776 = frozenset([1]) FOLLOW_SYNONYM_in_internal_synonym_definition3798 = frozenset([137, 150]) FOLLOW_synonym_definition_item_in_internal_synonym_definition3800 = frozenset([17, 127, 137, 218]) FOLLOW_COMMA_in_internal_synonym_definition3803 = frozenset([137, 150]) FOLLOW_synonym_definition_item_in_internal_synonym_definition3805 = frozenset([17, 127, 137, 218]) FOLLOW_end_in_internal_synonym_definition3825 = frozenset([1]) FOLLOW_sort_in_synonym_definition_item3869 = frozenset([137, 150]) FOLLOW_sort_in_synonym_definition_item3871 = frozenset([142]) FOLLOW_EQ_in_synonym_definition_item3873 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_ground_expression_in_synonym_definition_item3875 = frozenset([1]) FOLLOW_variable_id_in_variables_of_sort3922 = frozenset([137, 150]) FOLLOW_COMMA_in_variables_of_sort3925 = frozenset([48, 50, 150]) FOLLOW_variable_id_in_variables_of_sort3927 = frozenset([137, 150]) FOLLOW_sort_in_variables_of_sort3931 = frozenset([1, 178]) FOLLOW_ASSIG_OP_in_variables_of_sort3934 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_ground_expression_in_variables_of_sort3936 = frozenset([1]) FOLLOW_expression_in_ground_expression3988 = frozenset([1]) FOLLOW_L_PAREN_in_number_of_instances4032 = frozenset([124]) FOLLOW_INT_in_number_of_instances4036 = frozenset([137]) FOLLOW_COMMA_in_number_of_instances4038 = frozenset([124]) FOLLOW_INT_in_number_of_instances4042 = frozenset([136]) FOLLOW_R_PAREN_in_number_of_instances4044 = frozenset([1]) FOLLOW_start_in_processBody4092 = frozenset([1, 21, 88, 218]) FOLLOW_state_in_processBody4096 = frozenset([1, 21, 88, 218]) FOLLOW_floating_label_in_processBody4100 = frozenset([1, 21, 88, 218]) FOLLOW_cif_in_start4125 = frozenset([125, 218]) FOLLOW_hyperlink_in_start4144 = frozenset([125]) FOLLOW_START_in_start4163 = frozenset([17, 127, 150, 218]) FOLLOW_state_entry_point_name_in_start4167 = frozenset([17, 127, 218]) FOLLOW_end_in_start4170 = frozenset([1, 6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_transition_in_start4188 = frozenset([1]) FOLLOW_cif_in_floating_label4247 = frozenset([21, 218]) FOLLOW_hyperlink_in_floating_label4266 = frozenset([21]) FOLLOW_CONNECTION_in_floating_label4285 = frozenset([150, 218]) FOLLOW_connector_name_in_floating_label4287 = frozenset([213]) FOLLOW_213_in_floating_label4289 = frozenset([6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 126, 138, 148, 150, 218]) FOLLOW_transition_in_floating_label4307 = frozenset([126, 218]) FOLLOW_cif_end_label_in_floating_label4326 = frozenset([126]) FOLLOW_ENDCONNECTION_in_floating_label4345 = frozenset([127]) FOLLOW_SEMI_in_floating_label4347 = frozenset([1]) FOLLOW_cif_in_state4400 = frozenset([88, 218]) FOLLOW_hyperlink_in_state4419 = frozenset([88]) FOLLOW_STATE_in_state4438 = frozenset([129, 150]) FOLLOW_statelist_in_state4440 = frozenset([17, 127, 218]) FOLLOW_end_in_state4444 = frozenset([20, 51, 74, 80, 128, 218]) FOLLOW_state_part_in_state4463 = frozenset([20, 51, 74, 80, 128, 218]) FOLLOW_ENDSTATE_in_state4483 = frozenset([17, 127, 150, 218]) FOLLOW_statename_in_state4485 = frozenset([17, 127, 218]) FOLLOW_end_in_state4490 = frozenset([1]) FOLLOW_statename_in_statelist4549 = frozenset([1, 137]) FOLLOW_COMMA_in_statelist4552 = frozenset([150]) FOLLOW_statename_in_statelist4554 = frozenset([1, 137]) FOLLOW_ASTERISK_in_statelist4599 = frozenset([1, 135]) FOLLOW_exception_state_in_statelist4601 = frozenset([1]) FOLLOW_L_PAREN_in_exception_state4647 = frozenset([150]) FOLLOW_statename_in_exception_state4649 = frozenset([136, 137]) FOLLOW_COMMA_in_exception_state4652 = frozenset([150]) FOLLOW_statename_in_exception_state4654 = frozenset([136, 137]) FOLLOW_R_PAREN_in_exception_state4658 = frozenset([1]) FOLLOW_STATE_in_composite_state4699 = frozenset([150]) FOLLOW_statename_in_composite_state4701 = frozenset([17, 127, 218]) FOLLOW_end_in_composite_state4705 = frozenset([130]) FOLLOW_SUBSTRUCTURE_in_composite_state4723 = frozenset([21, 48, 70, 88, 125, 131, 132, 218]) FOLLOW_connection_points_in_composite_state4741 = frozenset([21, 48, 70, 88, 125, 131, 132, 218]) FOLLOW_composite_state_body_in_composite_state4762 = frozenset([131]) FOLLOW_ENDSUBSTRUCTURE_in_composite_state4780 = frozenset([17, 127, 150, 218]) FOLLOW_statename_in_composite_state4782 = frozenset([17, 127, 218]) FOLLOW_end_in_composite_state4787 = frozenset([1]) FOLLOW_IN_in_connection_points4841 = frozenset([135]) FOLLOW_state_entry_exit_points_in_connection_points4843 = frozenset([17, 127, 218]) FOLLOW_end_in_connection_points4845 = frozenset([1]) FOLLOW_OUT_in_connection_points4889 = frozenset([135]) FOLLOW_state_entry_exit_points_in_connection_points4891 = frozenset([17, 127, 218]) FOLLOW_end_in_connection_points4893 = frozenset([1]) FOLLOW_L_PAREN_in_state_entry_exit_points4940 = frozenset([150]) FOLLOW_statename_in_state_entry_exit_points4942 = frozenset([136, 137]) FOLLOW_COMMA_in_state_entry_exit_points4945 = frozenset([150]) FOLLOW_statename_in_state_entry_exit_points4947 = frozenset([136, 137]) FOLLOW_R_PAREN_in_state_entry_exit_points4951 = frozenset([1]) FOLLOW_text_area_in_composite_state_body4993 = frozenset([1, 21, 70, 88, 125, 218]) FOLLOW_procedure_in_composite_state_body4997 = frozenset([1, 21, 70, 88, 125, 218]) FOLLOW_composite_state_in_composite_state_body5001 = frozenset([1, 21, 70, 88, 125, 218]) FOLLOW_start_in_composite_state_body5021 = frozenset([1, 21, 88, 125, 218]) FOLLOW_state_in_composite_state_body5025 = frozenset([1, 21, 88, 218]) FOLLOW_floating_label_in_composite_state_body5029 = frozenset([1, 21, 88, 218]) FOLLOW_input_part_in_state_part5054 = frozenset([1]) FOLLOW_save_part_in_state_part5091 = frozenset([1]) FOLLOW_spontaneous_transition_in_state_part5126 = frozenset([1]) FOLLOW_continuous_signal_in_state_part5146 = frozenset([1]) FOLLOW_connect_part_in_state_part5173 = frozenset([1]) FOLLOW_cif_in_connect_part5197 = frozenset([20, 218]) FOLLOW_hyperlink_in_connect_part5216 = frozenset([20]) FOLLOW_CONNECT_in_connect_part5235 = frozenset([17, 127, 129, 150, 218]) FOLLOW_connect_list_in_connect_part5237 = frozenset([17, 127, 218]) FOLLOW_end_in_connect_part5240 = frozenset([1, 6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_transition_in_connect_part5258 = frozenset([1]) FOLLOW_state_exit_point_name_in_connect_list5316 = frozenset([1, 137]) FOLLOW_COMMA_in_connect_list5319 = frozenset([150]) FOLLOW_state_exit_point_name_in_connect_list5321 = frozenset([1, 137]) FOLLOW_ASTERISK_in_connect_list5364 = frozenset([1]) FOLLOW_cif_in_spontaneous_transition5387 = frozenset([51, 218]) FOLLOW_hyperlink_in_spontaneous_transition5406 = frozenset([51]) FOLLOW_INPUT_in_spontaneous_transition5425 = frozenset([133]) FOLLOW_NONE_in_spontaneous_transition5427 = frozenset([17, 127, 218]) FOLLOW_end_in_spontaneous_transition5429 = frozenset([6, 25, 32, 42, 54, 59, 63, 74, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_enabling_condition_in_spontaneous_transition5447 = frozenset([6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_transition_in_spontaneous_transition5466 = frozenset([1]) FOLLOW_PROVIDED_in_enabling_condition5516 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_enabling_condition5518 = frozenset([17, 127, 218]) FOLLOW_end_in_enabling_condition5520 = frozenset([1]) FOLLOW_PROVIDED_in_continuous_signal5564 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_continuous_signal5566 = frozenset([17, 127, 218]) FOLLOW_end_in_continuous_signal5568 = frozenset([6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 134, 138, 148, 150, 218]) FOLLOW_PRIORITY_in_continuous_signal5587 = frozenset([124]) FOLLOW_INT_in_continuous_signal5591 = frozenset([17, 127, 218]) FOLLOW_end_in_continuous_signal5593 = frozenset([6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_transition_in_continuous_signal5613 = frozenset([1]) FOLLOW_SAVE_in_save_part5663 = frozenset([129, 150]) FOLLOW_save_list_in_save_part5665 = frozenset([17, 127, 218]) FOLLOW_end_in_save_part5683 = frozenset([1]) FOLLOW_signal_list_in_save_list5727 = frozenset([1]) FOLLOW_asterisk_save_list_in_save_list5747 = frozenset([1]) FOLLOW_ASTERISK_in_asterisk_save_list5770 = frozenset([1]) FOLLOW_signal_item_in_signal_list5793 = frozenset([1, 137]) FOLLOW_COMMA_in_signal_list5796 = frozenset([150]) FOLLOW_signal_item_in_signal_list5798 = frozenset([1, 137]) FOLLOW_signal_id_in_signal_item5848 = frozenset([1]) FOLLOW_cif_in_input_part5877 = frozenset([51, 218]) FOLLOW_hyperlink_in_input_part5896 = frozenset([51]) FOLLOW_INPUT_in_input_part5915 = frozenset([129, 150]) FOLLOW_inputlist_in_input_part5917 = frozenset([17, 127, 218]) FOLLOW_end_in_input_part5919 = frozenset([1, 6, 25, 32, 42, 54, 59, 63, 74, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_enabling_condition_in_input_part5937 = frozenset([1, 6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_transition_in_input_part5956 = frozenset([1]) FOLLOW_ASTERISK_in_inputlist6034 = frozenset([1]) FOLLOW_stimulus_in_inputlist6055 = frozenset([1, 137]) FOLLOW_COMMA_in_inputlist6058 = frozenset([129, 150]) FOLLOW_stimulus_in_inputlist6060 = frozenset([1, 137]) FOLLOW_stimulus_id_in_stimulus6108 = frozenset([1, 135]) FOLLOW_input_params_in_stimulus6110 = frozenset([1]) FOLLOW_L_PAREN_in_input_params6134 = frozenset([48, 50, 150]) FOLLOW_variable_id_in_input_params6136 = frozenset([136, 137]) FOLLOW_COMMA_in_input_params6139 = frozenset([48, 50, 150]) FOLLOW_variable_id_in_input_params6141 = frozenset([136, 137]) FOLLOW_R_PAREN_in_input_params6145 = frozenset([1]) FOLLOW_action_in_transition6190 = frozenset([1, 6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_label_in_transition6193 = frozenset([1, 6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_terminator_statement_in_transition6196 = frozenset([1]) FOLLOW_terminator_statement_in_transition6245 = frozenset([1]) FOLLOW_label_in_action6289 = frozenset([6, 25, 32, 42, 63, 77, 84, 92, 98, 138, 148, 150, 218]) FOLLOW_task_in_action6309 = frozenset([1]) FOLLOW_task_body_in_action6329 = frozenset([1]) FOLLOW_output_in_action6349 = frozenset([1]) FOLLOW_create_request_in_action6369 = frozenset([1]) FOLLOW_decision_in_action6389 = frozenset([1]) FOLLOW_transition_option_in_action6409 = frozenset([1]) FOLLOW_set_timer_in_action6429 = frozenset([1]) FOLLOW_reset_timer_in_action6449 = frozenset([1]) FOLLOW_export_in_action6469 = frozenset([1]) FOLLOW_procedure_call_in_action6494 = frozenset([1]) FOLLOW_EXPORT_in_export6517 = frozenset([135]) FOLLOW_L_PAREN_in_export6535 = frozenset([48, 50, 150]) FOLLOW_variable_id_in_export6537 = frozenset([136, 137]) FOLLOW_COMMA_in_export6540 = frozenset([48, 50, 150]) FOLLOW_variable_id_in_export6542 = frozenset([136, 137]) FOLLOW_R_PAREN_in_export6546 = frozenset([17, 127, 218]) FOLLOW_end_in_export6564 = frozenset([1]) FOLLOW_cif_in_procedure_call6612 = frozenset([138, 218]) FOLLOW_hyperlink_in_procedure_call6631 = frozenset([138]) FOLLOW_CALL_in_procedure_call6650 = frozenset([150]) FOLLOW_procedure_call_body_in_procedure_call6652 = frozenset([17, 127, 218]) FOLLOW_end_in_procedure_call6654 = frozenset([1]) FOLLOW_procedure_id_in_procedure_call_body6707 = frozenset([1, 135]) FOLLOW_actual_parameters_in_procedure_call_body6709 = frozenset([1]) FOLLOW_SET_in_set_timer6757 = frozenset([135]) FOLLOW_set_statement_in_set_timer6759 = frozenset([17, 127, 137, 218]) FOLLOW_COMMA_in_set_timer6762 = frozenset([135]) FOLLOW_set_statement_in_set_timer6764 = frozenset([17, 127, 137, 218]) FOLLOW_end_in_set_timer6784 = frozenset([1]) FOLLOW_L_PAREN_in_set_statement6825 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_set_statement6828 = frozenset([137]) FOLLOW_COMMA_in_set_statement6830 = frozenset([150]) FOLLOW_timer_id_in_set_statement6834 = frozenset([136]) FOLLOW_R_PAREN_in_set_statement6836 = frozenset([1]) FOLLOW_RESET_in_reset_timer6892 = frozenset([150]) FOLLOW_reset_statement_in_reset_timer6894 = frozenset([17, 127, 137, 218]) FOLLOW_COMMA_in_reset_timer6897 = frozenset([150]) FOLLOW_reset_statement_in_reset_timer6899 = frozenset([17, 127, 137, 218]) FOLLOW_end_in_reset_timer6919 = frozenset([1]) FOLLOW_timer_id_in_reset_statement6960 = frozenset([1, 135]) FOLLOW_L_PAREN_in_reset_statement6963 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_list_in_reset_statement6965 = frozenset([136]) FOLLOW_R_PAREN_in_reset_statement6967 = frozenset([1]) FOLLOW_ALTERNATIVE_in_transition_option7016 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_alternative_question_in_transition_option7018 = frozenset([17, 127, 218]) FOLLOW_end_in_transition_option7022 = frozenset([135, 218]) FOLLOW_answer_part_in_transition_option7040 = frozenset([27, 135, 218]) FOLLOW_alternative_part_in_transition_option7058 = frozenset([139]) FOLLOW_ENDALTERNATIVE_in_transition_option7076 = frozenset([17, 127, 218]) FOLLOW_end_in_transition_option7080 = frozenset([1]) FOLLOW_answer_part_in_alternative_part7127 = frozenset([1, 27, 135, 218]) FOLLOW_else_part_in_alternative_part7130 = frozenset([1]) FOLLOW_else_part_in_alternative_part7173 = frozenset([1]) FOLLOW_expression_in_alternative_question7213 = frozenset([1]) FOLLOW_informal_text_in_alternative_question7233 = frozenset([1]) FOLLOW_cif_in_decision7256 = frozenset([25, 218]) FOLLOW_hyperlink_in_decision7275 = frozenset([25]) FOLLOW_DECISION_in_decision7294 = frozenset([11, 40, 46, 61, 92, 124, 135, 141, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_question_in_decision7296 = frozenset([17, 127, 218]) FOLLOW_end_in_decision7300 = frozenset([27, 135, 140, 218]) FOLLOW_answer_part_in_decision7318 = frozenset([27, 135, 140, 218]) FOLLOW_alternative_part_in_decision7337 = frozenset([140]) FOLLOW_ENDDECISION_in_decision7356 = frozenset([17, 127, 218]) FOLLOW_end_in_decision7360 = frozenset([1]) FOLLOW_cif_in_answer_part7436 = frozenset([135, 218]) FOLLOW_hyperlink_in_answer_part7455 = frozenset([135]) FOLLOW_L_PAREN_in_answer_part7474 = frozenset([11, 40, 46, 61, 92, 124, 135, 142, 143, 144, 145, 146, 147, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_answer_in_answer_part7476 = frozenset([136]) FOLLOW_R_PAREN_in_answer_part7478 = frozenset([213]) FOLLOW_213_in_answer_part7480 = frozenset([1, 6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_transition_in_answer_part7482 = frozenset([1]) FOLLOW_range_condition_in_answer7536 = frozenset([1]) FOLLOW_informal_text_in_answer7556 = frozenset([1]) FOLLOW_cif_in_else_part7579 = frozenset([27, 218]) FOLLOW_hyperlink_in_else_part7598 = frozenset([27]) FOLLOW_ELSE_in_else_part7617 = frozenset([213]) FOLLOW_213_in_else_part7619 = frozenset([1, 6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_transition_in_else_part7621 = frozenset([1]) FOLLOW_expression_in_question7673 = frozenset([1]) FOLLOW_informal_text_in_question7714 = frozenset([1]) FOLLOW_ANY_in_question7751 = frozenset([1]) FOLLOW_closed_range_in_range_condition7794 = frozenset([1]) FOLLOW_open_range_in_range_condition7798 = frozenset([1]) FOLLOW_expression_in_closed_range7841 = frozenset([213]) FOLLOW_213_in_closed_range7843 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_closed_range7847 = frozenset([1]) FOLLOW_constant_in_open_range7895 = frozenset([1]) FOLLOW_EQ_in_open_range7935 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_NEQ_in_open_range7937 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_GT_in_open_range7939 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_LT_in_open_range7941 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_LE_in_open_range7943 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_GE_in_open_range7945 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_constant_in_open_range7948 = frozenset([1]) FOLLOW_expression_in_constant8011 = frozenset([1]) FOLLOW_CREATE_in_create_request8055 = frozenset([149, 150]) FOLLOW_createbody_in_create_request8073 = frozenset([17, 127, 135, 218]) FOLLOW_actual_parameters_in_create_request8091 = frozenset([17, 127, 218]) FOLLOW_end_in_create_request8110 = frozenset([1]) FOLLOW_process_id_in_createbody8157 = frozenset([1]) FOLLOW_THIS_in_createbody8177 = frozenset([1]) FOLLOW_cif_in_output8200 = frozenset([63, 218]) FOLLOW_hyperlink_in_output8219 = frozenset([63]) FOLLOW_OUTPUT_in_output8238 = frozenset([150]) FOLLOW_outputbody_in_output8240 = frozenset([17, 127, 218]) FOLLOW_end_in_output8242 = frozenset([1]) FOLLOW_outputstmt_in_outputbody8295 = frozenset([1, 106, 137]) FOLLOW_COMMA_in_outputbody8298 = frozenset([150]) FOLLOW_outputstmt_in_outputbody8300 = frozenset([1, 106, 137]) FOLLOW_to_part_in_outputbody8304 = frozenset([1]) FOLLOW_signal_id_in_outputstmt8357 = frozenset([1, 135]) FOLLOW_actual_parameters_in_outputstmt8375 = frozenset([1]) FOLLOW_TO_in_to_part8399 = frozenset([149, 150, 189, 192, 196]) FOLLOW_destination_in_to_part8401 = frozenset([1]) FOLLOW_VIA_in_via_part8445 = frozenset([5, 150]) FOLLOW_viabody_in_via_part8447 = frozenset([1]) FOLLOW_ALL_in_viabody8492 = frozenset([1]) FOLLOW_via_path_in_viabody8531 = frozenset([1]) FOLLOW_pid_expression_in_destination8575 = frozenset([1]) FOLLOW_process_id_in_destination8595 = frozenset([1]) FOLLOW_THIS_in_destination8615 = frozenset([1]) FOLLOW_via_path_element_in_via_path8638 = frozenset([1, 137]) FOLLOW_COMMA_in_via_path8641 = frozenset([5, 150]) FOLLOW_via_path_element_in_via_path8643 = frozenset([1, 137]) FOLLOW_ID_in_via_path_element8686 = frozenset([1]) FOLLOW_L_PAREN_in_actual_parameters8709 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_actual_parameters8711 = frozenset([136, 137]) FOLLOW_COMMA_in_actual_parameters8714 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_actual_parameters8716 = frozenset([136, 137]) FOLLOW_R_PAREN_in_actual_parameters8720 = frozenset([1]) FOLLOW_cif_in_task8764 = frozenset([98, 218]) FOLLOW_hyperlink_in_task8783 = frozenset([98]) FOLLOW_TASK_in_task8802 = frozenset([17, 42, 92, 127, 150, 218]) FOLLOW_task_body_in_task8804 = frozenset([17, 127, 218]) FOLLOW_end_in_task8807 = frozenset([1]) FOLLOW_assignement_statement_in_task_body8862 = frozenset([1, 137]) FOLLOW_COMMA_in_task_body8865 = frozenset([150]) FOLLOW_assignement_statement_in_task_body8867 = frozenset([1, 137]) FOLLOW_informal_text_in_task_body8913 = frozenset([1, 137]) FOLLOW_COMMA_in_task_body8916 = frozenset([92]) FOLLOW_informal_text_in_task_body8918 = frozenset([1, 137]) FOLLOW_forloop_in_task_body8964 = frozenset([1, 137]) FOLLOW_COMMA_in_task_body8967 = frozenset([42, 92, 150]) FOLLOW_forloop_in_task_body8969 = frozenset([1, 137]) FOLLOW_FOR_in_forloop9026 = frozenset([48, 50, 150]) FOLLOW_variable_id_in_forloop9028 = frozenset([48]) FOLLOW_IN_in_forloop9030 = frozenset([76, 150]) FOLLOW_range_in_forloop9033 = frozenset([213]) FOLLOW_variable_in_forloop9037 = frozenset([213]) FOLLOW_213_in_forloop9040 = frozenset([6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 151, 218]) FOLLOW_transition_in_forloop9058 = frozenset([151]) FOLLOW_ENDFOR_in_forloop9077 = frozenset([1]) FOLLOW_RANGE_in_range9129 = frozenset([135]) FOLLOW_L_PAREN_in_range9147 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_ground_expression_in_range9151 = frozenset([136, 137]) FOLLOW_COMMA_in_range9170 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_ground_expression_in_range9174 = frozenset([136, 137]) FOLLOW_COMMA_in_range9179 = frozenset([124]) FOLLOW_INT_in_range9183 = frozenset([136]) FOLLOW_R_PAREN_in_range9203 = frozenset([1]) FOLLOW_variable_in_assignement_statement9255 = frozenset([178]) FOLLOW_ASSIG_OP_in_assignement_statement9257 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_assignement_statement9259 = frozenset([1]) FOLLOW_postfix_expression_in_variable9306 = frozenset([1]) FOLLOW_ID_in_variable9324 = frozenset([1]) FOLLOW_set_in_field_selection9377 = frozenset([150]) FOLLOW_field_name_in_field_selection9383 = frozenset([1]) FOLLOW_binary_expression_in_expression9407 = frozenset([1]) FOLLOW_binary_expression_0_in_binary_expression9430 = frozenset([1, 152]) FOLLOW_IMPLIES_in_binary_expression9434 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_binary_expression_0_in_binary_expression9437 = frozenset([1, 152]) FOLLOW_binary_expression_1_in_binary_expression_09460 = frozenset([1, 153, 154]) FOLLOW_OR_in_binary_expression_09466 = frozenset([11, 27, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_ELSE_in_binary_expression_09469 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_XOR_in_binary_expression_09475 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_binary_expression_1_in_binary_expression_09480 = frozenset([1, 153, 154]) FOLLOW_binary_expression_2_in_binary_expression_19503 = frozenset([1, 120]) FOLLOW_AND_in_binary_expression_19507 = frozenset([11, 40, 46, 61, 92, 104, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_THEN_in_binary_expression_19510 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_binary_expression_2_in_binary_expression_19513 = frozenset([1, 120]) FOLLOW_binary_expression_3_in_binary_expression_29536 = frozenset([1, 48, 142, 143, 144, 145, 146, 147]) FOLLOW_EQ_in_binary_expression_29541 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_NEQ_in_binary_expression_29546 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_GT_in_binary_expression_29551 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_GE_in_binary_expression_29556 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_LT_in_binary_expression_29561 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_LE_in_binary_expression_29566 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_IN_in_binary_expression_29571 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_binary_expression_3_in_binary_expression_29576 = frozenset([1, 48, 142, 143, 144, 145, 146, 147]) FOLLOW_binary_expression_4_in_binary_expression_39599 = frozenset([1, 155, 156, 157]) FOLLOW_PLUS_in_binary_expression_39604 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_DASH_in_binary_expression_39609 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_APPEND_in_binary_expression_39614 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_binary_expression_4_in_binary_expression_39619 = frozenset([1, 155, 156, 157]) FOLLOW_unary_expression_in_binary_expression_49642 = frozenset([1, 129, 158, 159, 160]) FOLLOW_ASTERISK_in_binary_expression_49647 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_DIV_in_binary_expression_49652 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_MOD_in_binary_expression_49657 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_REM_in_binary_expression_49662 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_unary_expression_in_binary_expression_49667 = frozenset([1, 129, 158, 159, 160]) FOLLOW_postfix_expression_in_unary_expression9692 = frozenset([1]) FOLLOW_primary_expression_in_unary_expression9710 = frozenset([1]) FOLLOW_NOT_in_unary_expression9728 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_unary_expression_in_unary_expression9731 = frozenset([1]) FOLLOW_DASH_in_unary_expression9749 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_unary_expression_in_unary_expression9751 = frozenset([1]) FOLLOW_ID_in_postfix_expression9792 = frozenset([135, 214]) FOLLOW_L_PAREN_in_postfix_expression9827 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_list_in_postfix_expression9831 = frozenset([136]) FOLLOW_R_PAREN_in_postfix_expression9833 = frozenset([1, 135, 214]) FOLLOW_214_in_postfix_expression9871 = frozenset([150]) FOLLOW_field_name_in_postfix_expression9873 = frozenset([1, 135, 214]) FOLLOW_primary_in_primary_expression9936 = frozenset([1]) FOLLOW_L_PAREN_in_primary_expression9984 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_primary_expression9986 = frozenset([136]) FOLLOW_R_PAREN_in_primary_expression9988 = frozenset([1]) FOLLOW_conditional_expression_in_primary_expression10025 = frozenset([1]) FOLLOW_BITSTR_in_primary10057 = frozenset([1]) FOLLOW_OCTSTR_in_primary10076 = frozenset([1]) FOLLOW_TRUE_in_primary10095 = frozenset([1]) FOLLOW_FALSE_in_primary10114 = frozenset([1]) FOLLOW_STRING_in_primary10133 = frozenset([1]) FOLLOW_NULL_in_primary10151 = frozenset([1]) FOLLOW_PLUS_INFINITY_in_primary10170 = frozenset([1]) FOLLOW_MINUS_INFINITY_in_primary10189 = frozenset([1]) FOLLOW_INT_in_primary10208 = frozenset([1]) FOLLOW_FLOAT_in_primary10227 = frozenset([1]) FOLLOW_ID_in_primary10246 = frozenset([213]) FOLLOW_213_in_primary10248 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_primary10250 = frozenset([1]) FOLLOW_ID_in_primary10288 = frozenset([1]) FOLLOW_L_BRACKET_in_primary10339 = frozenset([180]) FOLLOW_R_BRACKET_in_primary10341 = frozenset([1]) FOLLOW_L_BRACKET_in_primary10385 = frozenset([167]) FOLLOW_MANTISSA_in_primary10403 = frozenset([124]) FOLLOW_INT_in_primary10407 = frozenset([137]) FOLLOW_COMMA_in_primary10409 = frozenset([168]) FOLLOW_BASE_in_primary10427 = frozenset([124]) FOLLOW_INT_in_primary10431 = frozenset([137]) FOLLOW_COMMA_in_primary10433 = frozenset([169]) FOLLOW_EXPONENT_in_primary10451 = frozenset([124]) FOLLOW_INT_in_primary10455 = frozenset([180]) FOLLOW_R_BRACKET_in_primary10473 = frozenset([1]) FOLLOW_L_BRACKET_in_primary10530 = frozenset([150]) FOLLOW_named_value_in_primary10548 = frozenset([137, 180]) FOLLOW_COMMA_in_primary10551 = frozenset([150]) FOLLOW_named_value_in_primary10553 = frozenset([137, 180]) FOLLOW_R_BRACKET_in_primary10573 = frozenset([1]) FOLLOW_L_BRACKET_in_primary10624 = frozenset([11, 40, 61, 92, 124, 150, 162, 163, 164, 165, 166, 179]) FOLLOW_primary_in_primary10642 = frozenset([137, 180]) FOLLOW_COMMA_in_primary10645 = frozenset([11, 40, 61, 92, 124, 150, 162, 163, 164, 165, 166, 179]) FOLLOW_primary_in_primary10647 = frozenset([137, 180]) FOLLOW_R_BRACKET_in_primary10667 = frozenset([1]) FOLLOW_STRING_in_informal_text10733 = frozenset([1]) FOLLOW_ID_in_named_value10779 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_named_value10781 = frozenset([1]) FOLLOW_L_PAREN_in_primary_params10803 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_list_in_primary_params10805 = frozenset([136]) FOLLOW_R_PAREN_in_primary_params10807 = frozenset([1]) FOLLOW_214_in_primary_params10846 = frozenset([124, 150]) FOLLOW_literal_id_in_primary_params10848 = frozenset([1]) FOLLOW_primary_in_indexed_primary10895 = frozenset([135]) FOLLOW_L_PAREN_in_indexed_primary10897 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_list_in_indexed_primary10899 = frozenset([136]) FOLLOW_R_PAREN_in_indexed_primary10901 = frozenset([1]) FOLLOW_primary_in_field_primary10924 = frozenset([205, 214]) FOLLOW_field_selection_in_field_primary10926 = frozenset([1]) FOLLOW_215_in_structure_primary10949 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_list_in_structure_primary10951 = frozenset([216]) FOLLOW_216_in_structure_primary10953 = frozenset([1]) FOLLOW_active_primary_in_active_expression10978 = frozenset([1]) FOLLOW_variable_access_in_active_primary11001 = frozenset([1]) FOLLOW_operator_application_in_active_primary11021 = frozenset([1]) FOLLOW_conditional_expression_in_active_primary11041 = frozenset([1]) FOLLOW_imperative_operator_in_active_primary11061 = frozenset([1]) FOLLOW_L_PAREN_in_active_primary11081 = frozenset([11, 40, 46, 48, 50, 61, 92, 124, 135, 141, 150, 162, 163, 164, 165, 166, 170, 171, 172, 179, 182, 189, 192, 196, 217]) FOLLOW_active_expression_in_active_primary11083 = frozenset([136]) FOLLOW_R_PAREN_in_active_primary11085 = frozenset([1]) FOLLOW_217_in_active_primary11105 = frozenset([1]) FOLLOW_now_expression_in_imperative_operator11132 = frozenset([1]) FOLLOW_import_expression_in_imperative_operator11152 = frozenset([1]) FOLLOW_pid_expression_in_imperative_operator11172 = frozenset([1]) FOLLOW_view_expression_in_imperative_operator11192 = frozenset([1]) FOLLOW_timer_active_expression_in_imperative_operator11212 = frozenset([1]) FOLLOW_anyvalue_expression_in_imperative_operator11232 = frozenset([1]) FOLLOW_ACTIVE_in_timer_active_expression11255 = frozenset([135]) FOLLOW_L_PAREN_in_timer_active_expression11257 = frozenset([150]) FOLLOW_timer_id_in_timer_active_expression11259 = frozenset([135, 136]) FOLLOW_L_PAREN_in_timer_active_expression11262 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_list_in_timer_active_expression11264 = frozenset([136]) FOLLOW_R_PAREN_in_timer_active_expression11266 = frozenset([136]) FOLLOW_R_PAREN_in_timer_active_expression11270 = frozenset([1]) FOLLOW_ANY_in_anyvalue_expression11293 = frozenset([135]) FOLLOW_L_PAREN_in_anyvalue_expression11295 = frozenset([137, 150]) FOLLOW_sort_in_anyvalue_expression11297 = frozenset([136]) FOLLOW_R_PAREN_in_anyvalue_expression11299 = frozenset([1]) FOLLOW_sort_id_in_sort11317 = frozenset([1]) FOLLOW_syntype_id_in_syntype11353 = frozenset([1]) FOLLOW_IMPORT_in_import_expression11376 = frozenset([135]) FOLLOW_L_PAREN_in_import_expression11378 = frozenset([150]) FOLLOW_remote_variable_id_in_import_expression11380 = frozenset([136, 137]) FOLLOW_COMMA_in_import_expression11383 = frozenset([149, 150, 189, 192, 196]) FOLLOW_destination_in_import_expression11385 = frozenset([136]) FOLLOW_R_PAREN_in_import_expression11389 = frozenset([1]) FOLLOW_VIEW_in_view_expression11412 = frozenset([135]) FOLLOW_L_PAREN_in_view_expression11414 = frozenset([150]) FOLLOW_view_id_in_view_expression11416 = frozenset([136, 137]) FOLLOW_COMMA_in_view_expression11419 = frozenset([189, 192, 196]) FOLLOW_pid_expression_in_view_expression11421 = frozenset([136]) FOLLOW_R_PAREN_in_view_expression11425 = frozenset([1]) FOLLOW_variable_id_in_variable_access11448 = frozenset([1]) FOLLOW_operator_id_in_operator_application11471 = frozenset([135]) FOLLOW_L_PAREN_in_operator_application11473 = frozenset([11, 40, 46, 48, 50, 61, 92, 124, 135, 141, 150, 162, 163, 164, 165, 166, 170, 171, 172, 179, 182, 189, 192, 196, 217]) FOLLOW_active_expression_list_in_operator_application11474 = frozenset([136]) FOLLOW_R_PAREN_in_operator_application11476 = frozenset([1]) FOLLOW_active_expression_in_active_expression_list11499 = frozenset([1, 137]) FOLLOW_COMMA_in_active_expression_list11502 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_list_in_active_expression_list11504 = frozenset([1]) FOLLOW_external_synonym_id_in_external_synonym11535 = frozenset([1]) FOLLOW_IF_in_conditional_expression11558 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_conditional_expression11562 = frozenset([104]) FOLLOW_THEN_in_conditional_expression11580 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_conditional_expression11584 = frozenset([27]) FOLLOW_ELSE_in_conditional_expression11602 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_conditional_expression11606 = frozenset([35]) FOLLOW_FI_in_conditional_expression11608 = frozenset([1]) FOLLOW_expression_in_expression_list11659 = frozenset([1, 137]) FOLLOW_COMMA_in_expression_list11662 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_expression_list11664 = frozenset([1, 137]) FOLLOW_label_in_terminator_statement11707 = frozenset([6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_cif_in_terminator_statement11726 = frozenset([6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_hyperlink_in_terminator_statement11745 = frozenset([6, 25, 32, 42, 54, 59, 63, 77, 78, 84, 91, 92, 98, 138, 148, 150, 218]) FOLLOW_terminator_in_terminator_statement11764 = frozenset([17, 127, 218]) FOLLOW_end_in_terminator_statement11782 = frozenset([1]) FOLLOW_cif_in_label11837 = frozenset([150, 218]) FOLLOW_connector_name_in_label11840 = frozenset([213]) FOLLOW_213_in_label11842 = frozenset([1]) FOLLOW_nextstate_in_terminator11889 = frozenset([1]) FOLLOW_join_in_terminator11893 = frozenset([1]) FOLLOW_stop_in_terminator11897 = frozenset([1]) FOLLOW_return_stmt_in_terminator11901 = frozenset([1]) FOLLOW_JOIN_in_join11925 = frozenset([150, 218]) FOLLOW_connector_name_in_join11927 = frozenset([1]) FOLLOW_STOP_in_stop11967 = frozenset([1]) FOLLOW_RETURN_in_return_stmt11990 = frozenset([1, 11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_return_stmt11992 = frozenset([1]) FOLLOW_NEXTSTATE_in_nextstate12038 = frozenset([150, 156]) FOLLOW_nextstatebody_in_nextstate12040 = frozenset([1]) FOLLOW_statename_in_nextstatebody12084 = frozenset([1, 112]) FOLLOW_via_in_nextstatebody12086 = frozenset([1]) FOLLOW_dash_nextstate_in_nextstatebody12107 = frozenset([1]) FOLLOW_VIA_in_via12126 = frozenset([150]) FOLLOW_state_entry_point_name_in_via12128 = frozenset([1]) FOLLOW_cif_in_end12169 = frozenset([17, 218]) FOLLOW_hyperlink_in_end12172 = frozenset([17]) FOLLOW_COMMENT_in_end12175 = frozenset([92]) FOLLOW_STRING_in_end12177 = frozenset([127]) FOLLOW_SEMI_in_end12181 = frozenset([1]) FOLLOW_cif_decl_in_cif12227 = frozenset([7, 17, 20, 25, 51, 54, 55, 59, 63, 70, 71, 73, 74, 78, 88, 91, 98, 101, 125]) FOLLOW_symbolname_in_cif12229 = frozenset([135]) FOLLOW_L_PAREN_in_cif12247 = frozenset([124]) FOLLOW_INT_in_cif12251 = frozenset([137]) FOLLOW_COMMA_in_cif12253 = frozenset([124]) FOLLOW_INT_in_cif12257 = frozenset([136]) FOLLOW_R_PAREN_in_cif12259 = frozenset([137]) FOLLOW_COMMA_in_cif12277 = frozenset([135]) FOLLOW_L_PAREN_in_cif12295 = frozenset([124]) FOLLOW_INT_in_cif12299 = frozenset([137]) FOLLOW_COMMA_in_cif12301 = frozenset([124]) FOLLOW_INT_in_cif12305 = frozenset([136]) FOLLOW_R_PAREN_in_cif12307 = frozenset([219]) FOLLOW_cif_end_in_cif12325 = frozenset([1]) FOLLOW_cif_decl_in_hyperlink12379 = frozenset([173]) FOLLOW_KEEP_in_hyperlink12381 = frozenset([174]) FOLLOW_SPECIFIC_in_hyperlink12383 = frozenset([175]) FOLLOW_GEODE_in_hyperlink12385 = frozenset([45]) FOLLOW_HYPERLINK_in_hyperlink12387 = frozenset([92]) FOLLOW_STRING_in_hyperlink12389 = frozenset([219]) FOLLOW_cif_end_in_hyperlink12407 = frozenset([1]) FOLLOW_cif_decl_in_paramnames12452 = frozenset([173]) FOLLOW_KEEP_in_paramnames12454 = frozenset([174]) FOLLOW_SPECIFIC_in_paramnames12456 = frozenset([175]) FOLLOW_GEODE_in_paramnames12458 = frozenset([66]) FOLLOW_PARAMNAMES_in_paramnames12460 = frozenset([150]) FOLLOW_field_name_in_paramnames12462 = frozenset([150, 219]) FOLLOW_cif_end_in_paramnames12465 = frozenset([1]) FOLLOW_cif_decl_in_use_asn112512 = frozenset([173]) FOLLOW_KEEP_in_use_asn112514 = frozenset([174]) FOLLOW_SPECIFIC_in_use_asn112516 = frozenset([175]) FOLLOW_GEODE_in_use_asn112518 = frozenset([176]) FOLLOW_ASNFILENAME_in_use_asn112520 = frozenset([92]) FOLLOW_STRING_in_use_asn112522 = frozenset([219]) FOLLOW_cif_end_in_use_asn112524 = frozenset([1]) FOLLOW_set_in_symbolname0 = frozenset([1]) FOLLOW_218_in_cif_decl12951 = frozenset([1]) FOLLOW_219_in_cif_end12974 = frozenset([1]) FOLLOW_cif_decl_in_cif_end_text12997 = frozenset([31]) FOLLOW_ENDTEXT_in_cif_end_text12999 = frozenset([219]) FOLLOW_cif_end_in_cif_end_text13001 = frozenset([1]) FOLLOW_cif_decl_in_cif_end_label13042 = frozenset([177]) FOLLOW_END_in_cif_end_label13044 = frozenset([55]) FOLLOW_LABEL_in_cif_end_label13046 = frozenset([219]) FOLLOW_cif_end_in_cif_end_label13048 = frozenset([1]) FOLLOW_DASH_in_dash_nextstate13064 = frozenset([1]) FOLLOW_ID_in_connector_name13078 = frozenset([1]) FOLLOW_ID_in_signal_id13097 = frozenset([1]) FOLLOW_ID_in_statename13116 = frozenset([1]) FOLLOW_ID_in_state_exit_point_name13145 = frozenset([1]) FOLLOW_ID_in_state_entry_point_name13174 = frozenset([1]) FOLLOW_ID_in_variable_id13191 = frozenset([1]) FOLLOW_set_in_literal_id0 = frozenset([1]) FOLLOW_ID_in_process_id13231 = frozenset([1]) FOLLOW_ID_in_system_name13248 = frozenset([1]) FOLLOW_ID_in_package_name13264 = frozenset([1]) FOLLOW_ID_in_priority_signal_id13293 = frozenset([1]) FOLLOW_ID_in_signal_list_id13307 = frozenset([1]) FOLLOW_ID_in_timer_id13327 = frozenset([1]) FOLLOW_ID_in_field_name13345 = frozenset([1]) FOLLOW_ID_in_signal_route_id13358 = frozenset([1]) FOLLOW_ID_in_channel_id13376 = frozenset([1]) FOLLOW_ID_in_route_id13396 = frozenset([1]) FOLLOW_ID_in_block_id13416 = frozenset([1]) FOLLOW_ID_in_source_id13435 = frozenset([1]) FOLLOW_ID_in_dest_id13456 = frozenset([1]) FOLLOW_ID_in_gate_id13477 = frozenset([1]) FOLLOW_ID_in_procedure_id13493 = frozenset([1]) FOLLOW_ID_in_remote_procedure_id13522 = frozenset([1]) FOLLOW_ID_in_operator_id13539 = frozenset([1]) FOLLOW_ID_in_synonym_id13557 = frozenset([1]) FOLLOW_ID_in_external_synonym_id13586 = frozenset([1]) FOLLOW_ID_in_remote_variable_id13615 = frozenset([1]) FOLLOW_ID_in_view_id13636 = frozenset([1]) FOLLOW_ID_in_sort_id13657 = frozenset([1]) FOLLOW_ID_in_syntype_id13675 = frozenset([1]) FOLLOW_ID_in_stimulus_id13692 = frozenset([1]) FOLLOW_S_in_pid_expression14726 = frozenset([187]) FOLLOW_E_in_pid_expression14728 = frozenset([186]) FOLLOW_L_in_pid_expression14730 = frozenset([194]) FOLLOW_F_in_pid_expression14732 = frozenset([1]) FOLLOW_P_in_pid_expression14758 = frozenset([181]) FOLLOW_A_in_pid_expression14760 = frozenset([190]) FOLLOW_R_in_pid_expression14762 = frozenset([187]) FOLLOW_E_in_pid_expression14764 = frozenset([182]) FOLLOW_N_in_pid_expression14766 = frozenset([198]) FOLLOW_T_in_pid_expression14768 = frozenset([1]) FOLLOW_O_in_pid_expression14794 = frozenset([194]) FOLLOW_F_in_pid_expression14796 = frozenset([194]) FOLLOW_F_in_pid_expression14798 = frozenset([192]) FOLLOW_S_in_pid_expression14800 = frozenset([189]) FOLLOW_P_in_pid_expression14802 = frozenset([190]) FOLLOW_R_in_pid_expression14804 = frozenset([193]) FOLLOW_I_in_pid_expression14806 = frozenset([182]) FOLLOW_N_in_pid_expression14808 = frozenset([195]) FOLLOW_G_in_pid_expression14810 = frozenset([1]) FOLLOW_S_in_pid_expression14836 = frozenset([187]) FOLLOW_E_in_pid_expression14838 = frozenset([182]) FOLLOW_N_in_pid_expression14840 = frozenset([184]) FOLLOW_D_in_pid_expression14842 = frozenset([187]) FOLLOW_E_in_pid_expression14844 = frozenset([190]) FOLLOW_R_in_pid_expression14846 = frozenset([1]) FOLLOW_N_in_now_expression14860 = frozenset([196]) FOLLOW_O_in_now_expression14862 = frozenset([202]) FOLLOW_W_in_now_expression14864 = frozenset([1]) FOLLOW_signal_declaration_in_synpred7_sdl921521 = frozenset([1]) FOLLOW_text_area_in_synpred8_sdl921541 = frozenset([1]) FOLLOW_procedure_in_synpred9_sdl921561 = frozenset([1]) FOLLOW_text_area_in_synpred25_sdl922258 = frozenset([1]) FOLLOW_procedure_in_synpred26_sdl922262 = frozenset([1]) FOLLOW_composite_state_in_synpred27_sdl922266 = frozenset([1]) FOLLOW_processBody_in_synpred28_sdl922286 = frozenset([1]) FOLLOW_text_area_in_synpred32_sdl922454 = frozenset([1]) FOLLOW_procedure_in_synpred33_sdl922458 = frozenset([1]) FOLLOW_processBody_in_synpred34_sdl922480 = frozenset([1]) FOLLOW_content_in_synpred41_sdl922786 = frozenset([1]) FOLLOW_text_area_in_synpred87_sdl924993 = frozenset([1]) FOLLOW_procedure_in_synpred88_sdl924997 = frozenset([1]) FOLLOW_composite_state_in_synpred89_sdl925001 = frozenset([1]) FOLLOW_enabling_condition_in_synpred111_sdl925937 = frozenset([1]) FOLLOW_label_in_synpred118_sdl926193 = frozenset([1]) FOLLOW_expression_in_synpred142_sdl927213 = frozenset([1]) FOLLOW_answer_part_in_synpred145_sdl927318 = frozenset([1]) FOLLOW_range_condition_in_synpred150_sdl927536 = frozenset([1]) FOLLOW_expression_in_synpred154_sdl927673 = frozenset([1]) FOLLOW_informal_text_in_synpred155_sdl927714 = frozenset([1]) FOLLOW_closed_range_in_synpred156_sdl927794 = frozenset([1]) FOLLOW_COMMA_in_synpred185_sdl929170 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_ground_expression_in_synpred185_sdl929174 = frozenset([1]) FOLLOW_IMPLIES_in_synpred189_sdl929434 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_binary_expression_0_in_synpred189_sdl929437 = frozenset([1]) FOLLOW_OR_in_synpred192_sdl929466 = frozenset([11, 27, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_ELSE_in_synpred192_sdl929469 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_XOR_in_synpred192_sdl929475 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_binary_expression_1_in_synpred192_sdl929480 = frozenset([1]) FOLLOW_AND_in_synpred194_sdl929507 = frozenset([11, 40, 46, 61, 92, 104, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_THEN_in_synpred194_sdl929510 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_binary_expression_2_in_synpred194_sdl929513 = frozenset([1]) FOLLOW_set_in_synpred201_sdl929539 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_binary_expression_3_in_synpred201_sdl929576 = frozenset([1]) FOLLOW_set_in_synpred204_sdl929602 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_binary_expression_4_in_synpred204_sdl929619 = frozenset([1]) FOLLOW_set_in_synpred208_sdl929645 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_unary_expression_in_synpred208_sdl929667 = frozenset([1]) FOLLOW_postfix_expression_in_synpred209_sdl929692 = frozenset([1]) FOLLOW_primary_expression_in_synpred210_sdl929710 = frozenset([1]) FOLLOW_L_PAREN_in_synpred212_sdl929827 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_list_in_synpred212_sdl929831 = frozenset([136]) FOLLOW_R_PAREN_in_synpred212_sdl929833 = frozenset([1]) FOLLOW_214_in_synpred213_sdl929871 = frozenset([150]) FOLLOW_field_name_in_synpred213_sdl929873 = frozenset([1]) FOLLOW_ID_in_synpred226_sdl9210246 = frozenset([213]) FOLLOW_213_in_synpred226_sdl9210248 = frozenset([11, 40, 46, 61, 92, 124, 135, 150, 156, 161, 162, 163, 164, 165, 166, 179]) FOLLOW_expression_in_synpred226_sdl9210250 = frozenset([1]) FOLLOW_ID_in_synpred227_sdl9210288 = frozenset([1]) FOLLOW_L_BRACKET_in_synpred228_sdl9210339 = frozenset([180]) FOLLOW_R_BRACKET_in_synpred228_sdl9210341 = frozenset([1]) FOLLOW_L_BRACKET_in_synpred229_sdl9210385 = frozenset([167]) FOLLOW_MANTISSA_in_synpred229_sdl9210403 = frozenset([124]) FOLLOW_INT_in_synpred229_sdl9210407 = frozenset([137]) FOLLOW_COMMA_in_synpred229_sdl9210409 = frozenset([168]) FOLLOW_BASE_in_synpred229_sdl9210427 = frozenset([124]) FOLLOW_INT_in_synpred229_sdl9210431 = frozenset([137]) FOLLOW_COMMA_in_synpred229_sdl9210433 = frozenset([169]) FOLLOW_EXPONENT_in_synpred229_sdl9210451 = frozenset([124]) FOLLOW_INT_in_synpred229_sdl9210455 = frozenset([180]) FOLLOW_R_BRACKET_in_synpred229_sdl9210473 = frozenset([1]) FOLLOW_L_BRACKET_in_synpred231_sdl9210530 = frozenset([150]) FOLLOW_named_value_in_synpred231_sdl9210548 = frozenset([137, 180]) FOLLOW_COMMA_in_synpred231_sdl9210551 = frozenset([150]) FOLLOW_named_value_in_synpred231_sdl9210553 = frozenset([137, 180]) FOLLOW_R_BRACKET_in_synpred231_sdl9210573 = frozenset([1]) def main(argv, stdin=sys.stdin, stdout=sys.stdout, stderr=sys.stderr): from antlr3.main import ParserMain main = ParserMain("sdl92Lexer", sdl92Parser) main.stdin = stdin main.stdout = stdout main.stderr = stderr main.execute(argv) if __name__ == '__main__': main(sys.argv)