1 // $ANTLR 3.5 /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g 2014-02-12 17:39:16 2 3 package org.jf.smali; 4 5 import org.jf.dexlib2.Format; 6 import org.jf.dexlib2.Opcode; 7 import org.jf.dexlib2.Opcodes; 8 9 10 import org.antlr.runtime.*; 11 import java.util.Stack; 12 import java.util.List; 13 import java.util.ArrayList; 14 15 import org.antlr.runtime.tree.*; 16 17 18 @SuppressWarnings("all") 19 public class smaliParser extends Parser { 20 public static final String[] tokenNames = new String[] { 21 "<invalid>", "<EOR>", "<DOWN>", "<UP>", "ACCESS_SPEC", "ANNOTATION_DIRECTIVE", 22 "ANNOTATION_VISIBILITY", "ARRAY_DATA_DIRECTIVE", "ARRAY_DESCRIPTOR", "ARROW", 23 "BASE_ARRAY_DESCRIPTOR", "BASE_CHAR_LITERAL", "BASE_CLASS_DESCRIPTOR", 24 "BASE_FLOAT", "BASE_FLOAT_OR_ID", "BASE_INTEGER", "BASE_PRIMITIVE_TYPE", 25 "BASE_SIMPLE_NAME", "BASE_STRING_LITERAL", "BASE_TYPE", "BINARY_EXPONENT", 26 "BOOL_LITERAL", "BYTE_LITERAL", "CATCHALL_DIRECTIVE", "CATCH_DIRECTIVE", 27 "CHAR_LITERAL", "CLASS_DESCRIPTOR", "CLASS_DIRECTIVE", "CLOSE_BRACE", 28 "CLOSE_PAREN", "COLON", "COMMA", "DECIMAL_EXPONENT", "DOTDOT", "DOUBLE_LITERAL", 29 "DOUBLE_LITERAL_OR_ID", "END_ANNOTATION_DIRECTIVE", "END_ARRAY_DATA_DIRECTIVE", 30 "END_FIELD_DIRECTIVE", "END_LOCAL_DIRECTIVE", "END_METHOD_DIRECTIVE", 31 "END_PACKED_SWITCH_DIRECTIVE", "END_PARAMETER_DIRECTIVE", "END_SPARSE_SWITCH_DIRECTIVE", 32 "END_SUBANNOTATION_DIRECTIVE", "ENUM_DIRECTIVE", "EPILOGUE_DIRECTIVE", 33 "EQUAL", "ESCAPE_SEQUENCE", "FIELD_DIRECTIVE", "FIELD_OFFSET", "FLOAT_LITERAL", 34 "FLOAT_LITERAL_OR_ID", "HEX_DIGIT", "HEX_DIGITS", "HEX_PREFIX", "IMPLEMENTS_DIRECTIVE", 35 "INLINE_INDEX", "INSTRUCTION_FORMAT10t", "INSTRUCTION_FORMAT10x", "INSTRUCTION_FORMAT10x_ODEX", 36 "INSTRUCTION_FORMAT11n", "INSTRUCTION_FORMAT11x", "INSTRUCTION_FORMAT12x", 37 "INSTRUCTION_FORMAT12x_OR_ID", "INSTRUCTION_FORMAT20bc", "INSTRUCTION_FORMAT20t", 38 "INSTRUCTION_FORMAT21c_FIELD", "INSTRUCTION_FORMAT21c_FIELD_ODEX", "INSTRUCTION_FORMAT21c_STRING", 39 "INSTRUCTION_FORMAT21c_TYPE", "INSTRUCTION_FORMAT21ih", "INSTRUCTION_FORMAT21lh", 40 "INSTRUCTION_FORMAT21s", "INSTRUCTION_FORMAT21t", "INSTRUCTION_FORMAT22b", 41 "INSTRUCTION_FORMAT22c_FIELD", "INSTRUCTION_FORMAT22c_FIELD_ODEX", "INSTRUCTION_FORMAT22c_TYPE", 42 "INSTRUCTION_FORMAT22cs_FIELD", "INSTRUCTION_FORMAT22s", "INSTRUCTION_FORMAT22s_OR_ID", 43 "INSTRUCTION_FORMAT22t", "INSTRUCTION_FORMAT22x", "INSTRUCTION_FORMAT23x", 44 "INSTRUCTION_FORMAT30t", "INSTRUCTION_FORMAT31c", "INSTRUCTION_FORMAT31i", 45 "INSTRUCTION_FORMAT31i_OR_ID", "INSTRUCTION_FORMAT31t", "INSTRUCTION_FORMAT32x", 46 "INSTRUCTION_FORMAT35c_METHOD", "INSTRUCTION_FORMAT35c_METHOD_ODEX", "INSTRUCTION_FORMAT35c_TYPE", 47 "INSTRUCTION_FORMAT35mi_METHOD", "INSTRUCTION_FORMAT35ms_METHOD", "INSTRUCTION_FORMAT3rc_METHOD", 48 "INSTRUCTION_FORMAT3rc_METHOD_ODEX", "INSTRUCTION_FORMAT3rc_TYPE", "INSTRUCTION_FORMAT3rmi_METHOD", 49 "INSTRUCTION_FORMAT3rms_METHOD", "INSTRUCTION_FORMAT51l", "INTEGER_LITERAL", 50 "INVALID_TOKEN", "I_ACCESS_LIST", "I_ANNOTATION", "I_ANNOTATIONS", "I_ANNOTATION_ELEMENT", 51 "I_ARRAY_ELEMENTS", "I_ARRAY_ELEMENT_SIZE", "I_CATCH", "I_CATCHALL", "I_CATCHES", 52 "I_CLASS_DEF", "I_ENCODED_ARRAY", "I_ENCODED_ENUM", "I_ENCODED_FIELD", 53 "I_ENCODED_METHOD", "I_END_LOCAL", "I_EPILOGUE", "I_FIELD", "I_FIELDS", 54 "I_FIELD_INITIAL_VALUE", "I_FIELD_TYPE", "I_IMPLEMENTS", "I_LABEL", "I_LINE", 55 "I_LOCAL", "I_LOCALS", "I_METHOD", "I_METHODS", "I_METHOD_PROTOTYPE", 56 "I_METHOD_RETURN_TYPE", "I_ORDERED_METHOD_ITEMS", "I_PACKED_SWITCH_ELEMENTS", 57 "I_PACKED_SWITCH_START_KEY", "I_PARAMETER", "I_PARAMETERS", "I_PARAMETER_NOT_SPECIFIED", 58 "I_PROLOGUE", "I_REGISTERS", "I_REGISTER_LIST", "I_REGISTER_RANGE", "I_RESTART_LOCAL", 59 "I_SOURCE", "I_SPARSE_SWITCH_ELEMENTS", "I_STATEMENT_ARRAY_DATA", "I_STATEMENT_FORMAT10t", 60 "I_STATEMENT_FORMAT10x", "I_STATEMENT_FORMAT11n", "I_STATEMENT_FORMAT11x", 61 "I_STATEMENT_FORMAT12x", "I_STATEMENT_FORMAT20bc", "I_STATEMENT_FORMAT20t", 62 "I_STATEMENT_FORMAT21c_FIELD", "I_STATEMENT_FORMAT21c_STRING", "I_STATEMENT_FORMAT21c_TYPE", 63 "I_STATEMENT_FORMAT21ih", "I_STATEMENT_FORMAT21lh", "I_STATEMENT_FORMAT21s", 64 "I_STATEMENT_FORMAT21t", "I_STATEMENT_FORMAT22b", "I_STATEMENT_FORMAT22c_FIELD", 65 "I_STATEMENT_FORMAT22c_TYPE", "I_STATEMENT_FORMAT22s", "I_STATEMENT_FORMAT22t", 66 "I_STATEMENT_FORMAT22x", "I_STATEMENT_FORMAT23x", "I_STATEMENT_FORMAT30t", 67 "I_STATEMENT_FORMAT31c", "I_STATEMENT_FORMAT31i", "I_STATEMENT_FORMAT31t", 68 "I_STATEMENT_FORMAT32x", "I_STATEMENT_FORMAT35c_METHOD", "I_STATEMENT_FORMAT35c_TYPE", 69 "I_STATEMENT_FORMAT3rc_METHOD", "I_STATEMENT_FORMAT3rc_TYPE", "I_STATEMENT_FORMAT51l", 70 "I_STATEMENT_PACKED_SWITCH", "I_STATEMENT_SPARSE_SWITCH", "I_SUBANNOTATION", 71 "I_SUPER", "LABEL", "LINE_COMMENT", "LINE_DIRECTIVE", "LOCALS_DIRECTIVE", 72 "LOCAL_DIRECTIVE", "LONG_LITERAL", "MEMBER_NAME", "METHOD_DIRECTIVE", 73 "NEGATIVE_INTEGER_LITERAL", "NULL_LITERAL", "OPEN_BRACE", "OPEN_PAREN", 74 "PACKED_SWITCH_DIRECTIVE", "PARAMETER_DIRECTIVE", "PARAM_LIST", "PARAM_LIST_OR_ID", 75 "POSITIVE_INTEGER_LITERAL", "PRIMITIVE_TYPE", "PROLOGUE_DIRECTIVE", "REGISTER", 76 "REGISTERS_DIRECTIVE", "RESTART_LOCAL_DIRECTIVE", "SHORT_LITERAL", "SIMPLE_NAME", 77 "SOURCE_DIRECTIVE", "SPARSE_SWITCH_DIRECTIVE", "STRING_LITERAL", "SUBANNOTATION_DIRECTIVE", 78 "SUPER_DIRECTIVE", "VERIFICATION_ERROR_TYPE", "VOID_TYPE", "VTABLE_INDEX", 79 "WHITE_SPACE" 80 }; 81 public static final int EOF=-1; 82 public static final int ACCESS_SPEC=4; 83 public static final int ANNOTATION_DIRECTIVE=5; 84 public static final int ANNOTATION_VISIBILITY=6; 85 public static final int ARRAY_DATA_DIRECTIVE=7; 86 public static final int ARRAY_DESCRIPTOR=8; 87 public static final int ARROW=9; 88 public static final int BASE_ARRAY_DESCRIPTOR=10; 89 public static final int BASE_CHAR_LITERAL=11; 90 public static final int BASE_CLASS_DESCRIPTOR=12; 91 public static final int BASE_FLOAT=13; 92 public static final int BASE_FLOAT_OR_ID=14; 93 public static final int BASE_INTEGER=15; 94 public static final int BASE_PRIMITIVE_TYPE=16; 95 public static final int BASE_SIMPLE_NAME=17; 96 public static final int BASE_STRING_LITERAL=18; 97 public static final int BASE_TYPE=19; 98 public static final int BINARY_EXPONENT=20; 99 public static final int BOOL_LITERAL=21; 100 public static final int BYTE_LITERAL=22; 101 public static final int CATCHALL_DIRECTIVE=23; 102 public static final int CATCH_DIRECTIVE=24; 103 public static final int CHAR_LITERAL=25; 104 public static final int CLASS_DESCRIPTOR=26; 105 public static final int CLASS_DIRECTIVE=27; 106 public static final int CLOSE_BRACE=28; 107 public static final int CLOSE_PAREN=29; 108 public static final int COLON=30; 109 public static final int COMMA=31; 110 public static final int DECIMAL_EXPONENT=32; 111 public static final int DOTDOT=33; 112 public static final int DOUBLE_LITERAL=34; 113 public static final int DOUBLE_LITERAL_OR_ID=35; 114 public static final int END_ANNOTATION_DIRECTIVE=36; 115 public static final int END_ARRAY_DATA_DIRECTIVE=37; 116 public static final int END_FIELD_DIRECTIVE=38; 117 public static final int END_LOCAL_DIRECTIVE=39; 118 public static final int END_METHOD_DIRECTIVE=40; 119 public static final int END_PACKED_SWITCH_DIRECTIVE=41; 120 public static final int END_PARAMETER_DIRECTIVE=42; 121 public static final int END_SPARSE_SWITCH_DIRECTIVE=43; 122 public static final int END_SUBANNOTATION_DIRECTIVE=44; 123 public static final int ENUM_DIRECTIVE=45; 124 public static final int EPILOGUE_DIRECTIVE=46; 125 public static final int EQUAL=47; 126 public static final int ESCAPE_SEQUENCE=48; 127 public static final int FIELD_DIRECTIVE=49; 128 public static final int FIELD_OFFSET=50; 129 public static final int FLOAT_LITERAL=51; 130 public static final int FLOAT_LITERAL_OR_ID=52; 131 public static final int HEX_DIGIT=53; 132 public static final int HEX_DIGITS=54; 133 public static final int HEX_PREFIX=55; 134 public static final int IMPLEMENTS_DIRECTIVE=56; 135 public static final int INLINE_INDEX=57; 136 public static final int INSTRUCTION_FORMAT10t=58; 137 public static final int INSTRUCTION_FORMAT10x=59; 138 public static final int INSTRUCTION_FORMAT10x_ODEX=60; 139 public static final int INSTRUCTION_FORMAT11n=61; 140 public static final int INSTRUCTION_FORMAT11x=62; 141 public static final int INSTRUCTION_FORMAT12x=63; 142 public static final int INSTRUCTION_FORMAT12x_OR_ID=64; 143 public static final int INSTRUCTION_FORMAT20bc=65; 144 public static final int INSTRUCTION_FORMAT20t=66; 145 public static final int INSTRUCTION_FORMAT21c_FIELD=67; 146 public static final int INSTRUCTION_FORMAT21c_FIELD_ODEX=68; 147 public static final int INSTRUCTION_FORMAT21c_STRING=69; 148 public static final int INSTRUCTION_FORMAT21c_TYPE=70; 149 public static final int INSTRUCTION_FORMAT21ih=71; 150 public static final int INSTRUCTION_FORMAT21lh=72; 151 public static final int INSTRUCTION_FORMAT21s=73; 152 public static final int INSTRUCTION_FORMAT21t=74; 153 public static final int INSTRUCTION_FORMAT22b=75; 154 public static final int INSTRUCTION_FORMAT22c_FIELD=76; 155 public static final int INSTRUCTION_FORMAT22c_FIELD_ODEX=77; 156 public static final int INSTRUCTION_FORMAT22c_TYPE=78; 157 public static final int INSTRUCTION_FORMAT22cs_FIELD=79; 158 public static final int INSTRUCTION_FORMAT22s=80; 159 public static final int INSTRUCTION_FORMAT22s_OR_ID=81; 160 public static final int INSTRUCTION_FORMAT22t=82; 161 public static final int INSTRUCTION_FORMAT22x=83; 162 public static final int INSTRUCTION_FORMAT23x=84; 163 public static final int INSTRUCTION_FORMAT30t=85; 164 public static final int INSTRUCTION_FORMAT31c=86; 165 public static final int INSTRUCTION_FORMAT31i=87; 166 public static final int INSTRUCTION_FORMAT31i_OR_ID=88; 167 public static final int INSTRUCTION_FORMAT31t=89; 168 public static final int INSTRUCTION_FORMAT32x=90; 169 public static final int INSTRUCTION_FORMAT35c_METHOD=91; 170 public static final int INSTRUCTION_FORMAT35c_METHOD_ODEX=92; 171 public static final int INSTRUCTION_FORMAT35c_TYPE=93; 172 public static final int INSTRUCTION_FORMAT35mi_METHOD=94; 173 public static final int INSTRUCTION_FORMAT35ms_METHOD=95; 174 public static final int INSTRUCTION_FORMAT3rc_METHOD=96; 175 public static final int INSTRUCTION_FORMAT3rc_METHOD_ODEX=97; 176 public static final int INSTRUCTION_FORMAT3rc_TYPE=98; 177 public static final int INSTRUCTION_FORMAT3rmi_METHOD=99; 178 public static final int INSTRUCTION_FORMAT3rms_METHOD=100; 179 public static final int INSTRUCTION_FORMAT51l=101; 180 public static final int INTEGER_LITERAL=102; 181 public static final int INVALID_TOKEN=103; 182 public static final int I_ACCESS_LIST=104; 183 public static final int I_ANNOTATION=105; 184 public static final int I_ANNOTATIONS=106; 185 public static final int I_ANNOTATION_ELEMENT=107; 186 public static final int I_ARRAY_ELEMENTS=108; 187 public static final int I_ARRAY_ELEMENT_SIZE=109; 188 public static final int I_CATCH=110; 189 public static final int I_CATCHALL=111; 190 public static final int I_CATCHES=112; 191 public static final int I_CLASS_DEF=113; 192 public static final int I_ENCODED_ARRAY=114; 193 public static final int I_ENCODED_ENUM=115; 194 public static final int I_ENCODED_FIELD=116; 195 public static final int I_ENCODED_METHOD=117; 196 public static final int I_END_LOCAL=118; 197 public static final int I_EPILOGUE=119; 198 public static final int I_FIELD=120; 199 public static final int I_FIELDS=121; 200 public static final int I_FIELD_INITIAL_VALUE=122; 201 public static final int I_FIELD_TYPE=123; 202 public static final int I_IMPLEMENTS=124; 203 public static final int I_LABEL=125; 204 public static final int I_LINE=126; 205 public static final int I_LOCAL=127; 206 public static final int I_LOCALS=128; 207 public static final int I_METHOD=129; 208 public static final int I_METHODS=130; 209 public static final int I_METHOD_PROTOTYPE=131; 210 public static final int I_METHOD_RETURN_TYPE=132; 211 public static final int I_ORDERED_METHOD_ITEMS=133; 212 public static final int I_PACKED_SWITCH_ELEMENTS=134; 213 public static final int I_PACKED_SWITCH_START_KEY=135; 214 public static final int I_PARAMETER=136; 215 public static final int I_PARAMETERS=137; 216 public static final int I_PARAMETER_NOT_SPECIFIED=138; 217 public static final int I_PROLOGUE=139; 218 public static final int I_REGISTERS=140; 219 public static final int I_REGISTER_LIST=141; 220 public static final int I_REGISTER_RANGE=142; 221 public static final int I_RESTART_LOCAL=143; 222 public static final int I_SOURCE=144; 223 public static final int I_SPARSE_SWITCH_ELEMENTS=145; 224 public static final int I_STATEMENT_ARRAY_DATA=146; 225 public static final int I_STATEMENT_FORMAT10t=147; 226 public static final int I_STATEMENT_FORMAT10x=148; 227 public static final int I_STATEMENT_FORMAT11n=149; 228 public static final int I_STATEMENT_FORMAT11x=150; 229 public static final int I_STATEMENT_FORMAT12x=151; 230 public static final int I_STATEMENT_FORMAT20bc=152; 231 public static final int I_STATEMENT_FORMAT20t=153; 232 public static final int I_STATEMENT_FORMAT21c_FIELD=154; 233 public static final int I_STATEMENT_FORMAT21c_STRING=155; 234 public static final int I_STATEMENT_FORMAT21c_TYPE=156; 235 public static final int I_STATEMENT_FORMAT21ih=157; 236 public static final int I_STATEMENT_FORMAT21lh=158; 237 public static final int I_STATEMENT_FORMAT21s=159; 238 public static final int I_STATEMENT_FORMAT21t=160; 239 public static final int I_STATEMENT_FORMAT22b=161; 240 public static final int I_STATEMENT_FORMAT22c_FIELD=162; 241 public static final int I_STATEMENT_FORMAT22c_TYPE=163; 242 public static final int I_STATEMENT_FORMAT22s=164; 243 public static final int I_STATEMENT_FORMAT22t=165; 244 public static final int I_STATEMENT_FORMAT22x=166; 245 public static final int I_STATEMENT_FORMAT23x=167; 246 public static final int I_STATEMENT_FORMAT30t=168; 247 public static final int I_STATEMENT_FORMAT31c=169; 248 public static final int I_STATEMENT_FORMAT31i=170; 249 public static final int I_STATEMENT_FORMAT31t=171; 250 public static final int I_STATEMENT_FORMAT32x=172; 251 public static final int I_STATEMENT_FORMAT35c_METHOD=173; 252 public static final int I_STATEMENT_FORMAT35c_TYPE=174; 253 public static final int I_STATEMENT_FORMAT3rc_METHOD=175; 254 public static final int I_STATEMENT_FORMAT3rc_TYPE=176; 255 public static final int I_STATEMENT_FORMAT51l=177; 256 public static final int I_STATEMENT_PACKED_SWITCH=178; 257 public static final int I_STATEMENT_SPARSE_SWITCH=179; 258 public static final int I_SUBANNOTATION=180; 259 public static final int I_SUPER=181; 260 public static final int LABEL=182; 261 public static final int LINE_COMMENT=183; 262 public static final int LINE_DIRECTIVE=184; 263 public static final int LOCALS_DIRECTIVE=185; 264 public static final int LOCAL_DIRECTIVE=186; 265 public static final int LONG_LITERAL=187; 266 public static final int MEMBER_NAME=188; 267 public static final int METHOD_DIRECTIVE=189; 268 public static final int NEGATIVE_INTEGER_LITERAL=190; 269 public static final int NULL_LITERAL=191; 270 public static final int OPEN_BRACE=192; 271 public static final int OPEN_PAREN=193; 272 public static final int PACKED_SWITCH_DIRECTIVE=194; 273 public static final int PARAMETER_DIRECTIVE=195; 274 public static final int PARAM_LIST=196; 275 public static final int PARAM_LIST_OR_ID=197; 276 public static final int POSITIVE_INTEGER_LITERAL=198; 277 public static final int PRIMITIVE_TYPE=199; 278 public static final int PROLOGUE_DIRECTIVE=200; 279 public static final int REGISTER=201; 280 public static final int REGISTERS_DIRECTIVE=202; 281 public static final int RESTART_LOCAL_DIRECTIVE=203; 282 public static final int SHORT_LITERAL=204; 283 public static final int SIMPLE_NAME=205; 284 public static final int SOURCE_DIRECTIVE=206; 285 public static final int SPARSE_SWITCH_DIRECTIVE=207; 286 public static final int STRING_LITERAL=208; 287 public static final int SUBANNOTATION_DIRECTIVE=209; 288 public static final int SUPER_DIRECTIVE=210; 289 public static final int VERIFICATION_ERROR_TYPE=211; 290 public static final int VOID_TYPE=212; 291 public static final int VTABLE_INDEX=213; 292 public static final int WHITE_SPACE=214; 293 294 // delegates 295 public Parser[] getDelegates() { 296 return new Parser[] {}; 297 } 298 299 // delegators 300 301 302 public smaliParser(TokenStream input) { 303 this(input, new RecognizerSharedState()); 304 } 305 public smaliParser(TokenStream input, RecognizerSharedState state) { 306 super(input, state); 307 } 308 309 protected TreeAdaptor adaptor = new CommonTreeAdaptor(); 310 311 public void setTreeAdaptor(TreeAdaptor adaptor) { 312 this.adaptor = adaptor; 313 } 314 public TreeAdaptor getTreeAdaptor() { 315 return adaptor; 316 } 317 @Override public String[] getTokenNames() { return smaliParser.tokenNames; } 318 @Override public String getGrammarFileName() { return "/usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g"; } 319 320 321 public static final int ERROR_CHANNEL = 100; 322 323 private boolean verboseErrors = false; 324 private boolean allowOdex = false; 325 private int apiLevel = 15; 326 private Opcodes opcodes = new Opcodes(apiLevel); 327 328 public void setVerboseErrors(boolean verboseErrors) { 329 this.verboseErrors = verboseErrors; 330 } 331 332 public void setAllowOdex(boolean allowOdex) { 333 this.allowOdex = allowOdex; 334 } 335 336 public void setApiLevel(int apiLevel) { 337 this.opcodes = new Opcodes(apiLevel); 338 this.apiLevel = apiLevel; 339 } 340 341 public String getErrorMessage(RecognitionException e, 342 String[] tokenNames) { 343 344 if (verboseErrors) { 345 List stack = getRuleInvocationStack(e, this.getClass().getName()); 346 String msg = null; 347 348 if (e instanceof NoViableAltException) { 349 NoViableAltException nvae = (NoViableAltException)e; 350 msg = " no viable alt; token="+getTokenErrorDisplay(e.token)+ 351 " (decision="+nvae.decisionNumber+ 352 " state "+nvae.stateNumber+")"+ 353 " decision=<<"+nvae.grammarDecisionDescription+">>"; 354 } else { 355 msg = super.getErrorMessage(e, tokenNames); 356 } 357 358 return stack + " " + msg; 359 } else { 360 return super.getErrorMessage(e, tokenNames); 361 } 362 } 363 364 public String getTokenErrorDisplay(Token t) { 365 if (!verboseErrors) { 366 String s = t.getText(); 367 if ( s==null ) { 368 if ( t.getType()==Token.EOF ) { 369 s = "<EOF>"; 370 } 371 else { 372 s = "<"+tokenNames[t.getType()]+">"; 373 } 374 } 375 s = s.replaceAll("\n","\\\\n"); 376 s = s.replaceAll("\r","\\\\r"); 377 s = s.replaceAll("\t","\\\\t"); 378 return "'"+s+"'"; 379 } 380 381 CommonToken ct = (CommonToken)t; 382 383 String channelStr = ""; 384 if (t.getChannel()>0) { 385 channelStr=",channel="+t.getChannel(); 386 } 387 String txt = t.getText(); 388 if ( txt!=null ) { 389 txt = txt.replaceAll("\n","\\\\n"); 390 txt = txt.replaceAll("\r","\\\\r"); 391 txt = txt.replaceAll("\t","\\\\t"); 392 } 393 else { 394 txt = "<no text>"; 395 } 396 return "[@"+t.getTokenIndex()+","+ct.getStartIndex()+":"+ct.getStopIndex()+"='"+txt+"',<"+tokenNames[t.getType()]+">"+channelStr+","+t.getLine()+":"+t.getCharPositionInLine()+"]"; 397 } 398 399 public String getErrorHeader(RecognitionException e) { 400 return getSourceName()+"["+ e.line+","+e.charPositionInLine+"]"; 401 } 402 403 private CommonTree buildTree(int type, String text, List<CommonTree> children) { 404 CommonTree root = new CommonTree(new CommonToken(type, text)); 405 for (CommonTree child: children) { 406 root.addChild(child); 407 } 408 return root; 409 } 410 411 private CommonToken getParamListSubToken(CommonToken baseToken, String str, int typeStartIndex) { 412 CommonToken token = new CommonToken(baseToken); 413 token.setStartIndex(baseToken.getStartIndex() + typeStartIndex); 414 415 switch (str.charAt(typeStartIndex)) { 416 case 'Z': 417 case 'B': 418 case 'S': 419 case 'C': 420 case 'I': 421 case 'J': 422 case 'F': 423 case 'D': 424 { 425 token.setType(PRIMITIVE_TYPE); 426 token.setText(str.substring(typeStartIndex, typeStartIndex+1)); 427 token.setStopIndex(baseToken.getStartIndex() + typeStartIndex); 428 break; 429 } 430 case 'L': 431 { 432 int i = typeStartIndex; 433 while (str.charAt(++i) != ';'); 434 435 token.setType(CLASS_DESCRIPTOR); 436 token.setText(str.substring(typeStartIndex, i + 1)); 437 token.setStopIndex(baseToken.getStartIndex() + i); 438 break; 439 } 440 case '[': 441 { 442 int i = typeStartIndex; 443 while (str.charAt(++i) == '['); 444 445 if (str.charAt(i++) == 'L') { 446 while (str.charAt(i++) != ';'); 447 } 448 449 token.setType(ARRAY_DESCRIPTOR); 450 token.setText(str.substring(typeStartIndex, i)); 451 token.setStopIndex(baseToken.getStartIndex() + i - 1); 452 break; 453 } 454 default: 455 throw new RuntimeException(String.format("Invalid character '%c' in param list \"%s\" at position %d", str.charAt(typeStartIndex), str, typeStartIndex)); 456 } 457 458 return token; 459 } 460 461 private CommonTree parseParamList(CommonToken paramListToken) { 462 String paramList = paramListToken.getText(); 463 CommonTree root = new CommonTree(); 464 465 int startIndex = paramListToken.getStartIndex(); 466 467 int i=0; 468 while (i<paramList.length()) { 469 CommonToken token = getParamListSubToken(paramListToken, paramList, i); 470 root.addChild(new CommonTree(token)); 471 i += token.getText().length(); 472 } 473 474 if (root.getChildCount() == 0) { 475 return null; 476 } 477 return root; 478 } 479 480 private void throwOdexedInstructionException(IntStream input, String odexedInstruction) 481 throws OdexedInstructionException { 482 /*this has to be done in a separate method, otherwise java will complain about the 483 auto-generated code in the rule after the throw not being reachable*/ 484 throw new OdexedInstructionException(input, odexedInstruction); 485 } 486 487 488 protected static class smali_file_scope { 489 boolean hasClassSpec; 490 boolean hasSuperSpec; 491 boolean hasSourceSpec; 492 List<CommonTree> classAnnotations; 493 } 494 protected Stack<smali_file_scope> smali_file_stack = new Stack<smali_file_scope>(); 495 496 public static class smali_file_return extends ParserRuleReturnScope { 497 CommonTree tree; 498 @Override 499 public CommonTree getTree() { return tree; } 500 }; 501 502 503 // $ANTLR start "smali_file" 504 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:433:1: smali_file : ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) ; 505 public final smaliParser.smali_file_return smali_file() throws RecognitionException { 506 smali_file_stack.push(new smali_file_scope()); 507 smaliParser.smali_file_return retval = new smaliParser.smali_file_return(); 508 retval.start = input.LT(1); 509 510 CommonTree root_0 = null; 511 512 Token EOF8=null; 513 ParserRuleReturnScope class_spec1 =null; 514 ParserRuleReturnScope super_spec2 =null; 515 ParserRuleReturnScope implements_spec3 =null; 516 ParserRuleReturnScope source_spec4 =null; 517 ParserRuleReturnScope method5 =null; 518 ParserRuleReturnScope field6 =null; 519 ParserRuleReturnScope annotation7 =null; 520 521 CommonTree EOF8_tree=null; 522 RewriteRuleTokenStream stream_EOF=new RewriteRuleTokenStream(adaptor,"token EOF"); 523 RewriteRuleSubtreeStream stream_field=new RewriteRuleSubtreeStream(adaptor,"rule field"); 524 RewriteRuleSubtreeStream stream_annotation=new RewriteRuleSubtreeStream(adaptor,"rule annotation"); 525 RewriteRuleSubtreeStream stream_super_spec=new RewriteRuleSubtreeStream(adaptor,"rule super_spec"); 526 RewriteRuleSubtreeStream stream_implements_spec=new RewriteRuleSubtreeStream(adaptor,"rule implements_spec"); 527 RewriteRuleSubtreeStream stream_source_spec=new RewriteRuleSubtreeStream(adaptor,"rule source_spec"); 528 RewriteRuleSubtreeStream stream_method=new RewriteRuleSubtreeStream(adaptor,"rule method"); 529 RewriteRuleSubtreeStream stream_class_spec=new RewriteRuleSubtreeStream(adaptor,"rule class_spec"); 530 531 smali_file_stack.peek().hasClassSpec = smali_file_stack.peek().hasSuperSpec = smali_file_stack.peek().hasSourceSpec = false; 532 smali_file_stack.peek().classAnnotations = new ArrayList<CommonTree>(); 533 534 try { 535 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:445:3: ( ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) ) 536 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:446:3: ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ EOF 537 { 538 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:446:3: ({...}? => class_spec |{...}? => super_spec | implements_spec |{...}? => source_spec | method | field | annotation )+ 539 int cnt1=0; 540 loop1: 541 while (true) { 542 int alt1=8; 543 int LA1_0 = input.LA(1); 544 if ( (LA1_0==CLASS_DIRECTIVE) && ((!smali_file_stack.peek().hasClassSpec))) { 545 alt1=1; 546 } 547 else if ( (LA1_0==SUPER_DIRECTIVE) && ((!smali_file_stack.peek().hasSuperSpec))) { 548 alt1=2; 549 } 550 else if ( (LA1_0==IMPLEMENTS_DIRECTIVE) ) { 551 alt1=3; 552 } 553 else if ( (LA1_0==SOURCE_DIRECTIVE) && ((!smali_file_stack.peek().hasSourceSpec))) { 554 alt1=4; 555 } 556 else if ( (LA1_0==METHOD_DIRECTIVE) ) { 557 alt1=5; 558 } 559 else if ( (LA1_0==FIELD_DIRECTIVE) ) { 560 alt1=6; 561 } 562 else if ( (LA1_0==ANNOTATION_DIRECTIVE) ) { 563 alt1=7; 564 } 565 566 switch (alt1) { 567 case 1 : 568 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:446:5: {...}? => class_spec 569 { 570 if ( !((!smali_file_stack.peek().hasClassSpec)) ) { 571 throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasClassSpec"); 572 } 573 pushFollow(FOLLOW_class_spec_in_smali_file1145); 574 class_spec1=class_spec(); 575 state._fsp--; 576 577 stream_class_spec.add(class_spec1.getTree()); 578 smali_file_stack.peek().hasClassSpec = true; 579 } 580 break; 581 case 2 : 582 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:447:5: {...}? => super_spec 583 { 584 if ( !((!smali_file_stack.peek().hasSuperSpec)) ) { 585 throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasSuperSpec"); 586 } 587 pushFollow(FOLLOW_super_spec_in_smali_file1156); 588 super_spec2=super_spec(); 589 state._fsp--; 590 591 stream_super_spec.add(super_spec2.getTree()); 592 smali_file_stack.peek().hasSuperSpec = true; 593 } 594 break; 595 case 3 : 596 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:448:5: implements_spec 597 { 598 pushFollow(FOLLOW_implements_spec_in_smali_file1164); 599 implements_spec3=implements_spec(); 600 state._fsp--; 601 602 stream_implements_spec.add(implements_spec3.getTree()); 603 } 604 break; 605 case 4 : 606 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:449:5: {...}? => source_spec 607 { 608 if ( !((!smali_file_stack.peek().hasSourceSpec)) ) { 609 throw new FailedPredicateException(input, "smali_file", "!$smali_file::hasSourceSpec"); 610 } 611 pushFollow(FOLLOW_source_spec_in_smali_file1173); 612 source_spec4=source_spec(); 613 state._fsp--; 614 615 stream_source_spec.add(source_spec4.getTree()); 616 smali_file_stack.peek().hasSourceSpec = true; 617 } 618 break; 619 case 5 : 620 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:450:5: method 621 { 622 pushFollow(FOLLOW_method_in_smali_file1181); 623 method5=method(); 624 state._fsp--; 625 626 stream_method.add(method5.getTree()); 627 } 628 break; 629 case 6 : 630 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:451:5: field 631 { 632 pushFollow(FOLLOW_field_in_smali_file1187); 633 field6=field(); 634 state._fsp--; 635 636 stream_field.add(field6.getTree()); 637 } 638 break; 639 case 7 : 640 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:452:5: annotation 641 { 642 pushFollow(FOLLOW_annotation_in_smali_file1193); 643 annotation7=annotation(); 644 state._fsp--; 645 646 stream_annotation.add(annotation7.getTree()); 647 smali_file_stack.peek().classAnnotations.add((annotation7!=null?((CommonTree)annotation7.getTree()):null)); 648 } 649 break; 650 651 default : 652 if ( cnt1 >= 1 ) break loop1; 653 EarlyExitException eee = new EarlyExitException(1, input); 654 throw eee; 655 } 656 cnt1++; 657 } 658 659 EOF8=(Token)match(input,EOF,FOLLOW_EOF_in_smali_file1204); 660 stream_EOF.add(EOF8); 661 662 663 if (!smali_file_stack.peek().hasClassSpec) { 664 throw new SemanticException(input, "The file must contain a .class directive"); 665 } 666 667 if (!smali_file_stack.peek().hasSuperSpec) { 668 if (!(class_spec1!=null?((smaliParser.class_spec_return)class_spec1).className:null).equals("Ljava/lang/Object;")) { 669 throw new SemanticException(input, "The file must contain a .super directive"); 670 } 671 } 672 673 // AST REWRITE 674 // elements: source_spec, implements_spec, super_spec, field, class_spec, method 675 // token labels: 676 // rule labels: retval 677 // token list labels: 678 // rule list labels: 679 // wildcard labels: 680 retval.tree = root_0; 681 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 682 683 root_0 = (CommonTree)adaptor.nil(); 684 // 466:3: -> ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) 685 { 686 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:466:6: ^( I_CLASS_DEF class_spec ( super_spec )? ( implements_spec )* ( source_spec )? ^( I_METHODS ( method )* ) ^( I_FIELDS ( field )* ) ) 687 { 688 CommonTree root_1 = (CommonTree)adaptor.nil(); 689 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_CLASS_DEF, "I_CLASS_DEF"), root_1); 690 adaptor.addChild(root_1, stream_class_spec.nextTree()); 691 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:468:8: ( super_spec )? 692 if ( stream_super_spec.hasNext() ) { 693 adaptor.addChild(root_1, stream_super_spec.nextTree()); 694 } 695 stream_super_spec.reset(); 696 697 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:469:8: ( implements_spec )* 698 while ( stream_implements_spec.hasNext() ) { 699 adaptor.addChild(root_1, stream_implements_spec.nextTree()); 700 } 701 stream_implements_spec.reset(); 702 703 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:470:8: ( source_spec )? 704 if ( stream_source_spec.hasNext() ) { 705 adaptor.addChild(root_1, stream_source_spec.nextTree()); 706 } 707 stream_source_spec.reset(); 708 709 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:8: ^( I_METHODS ( method )* ) 710 { 711 CommonTree root_2 = (CommonTree)adaptor.nil(); 712 root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHODS, "I_METHODS"), root_2); 713 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:20: ( method )* 714 while ( stream_method.hasNext() ) { 715 adaptor.addChild(root_2, stream_method.nextTree()); 716 } 717 stream_method.reset(); 718 719 adaptor.addChild(root_1, root_2); 720 } 721 722 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:29: ^( I_FIELDS ( field )* ) 723 { 724 CommonTree root_2 = (CommonTree)adaptor.nil(); 725 root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELDS, "I_FIELDS"), root_2); 726 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:471:40: ( field )* 727 while ( stream_field.hasNext() ) { 728 adaptor.addChild(root_2, stream_field.nextTree()); 729 } 730 stream_field.reset(); 731 732 adaptor.addChild(root_1, root_2); 733 } 734 735 adaptor.addChild(root_1, buildTree(I_ANNOTATIONS, "I_ANNOTATIONS", smali_file_stack.peek().classAnnotations)); 736 adaptor.addChild(root_0, root_1); 737 } 738 739 } 740 741 742 retval.tree = root_0; 743 744 } 745 746 retval.stop = input.LT(-1); 747 748 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 749 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 750 751 } 752 catch (RecognitionException re) { 753 reportError(re); 754 recover(input,re); 755 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 756 } 757 finally { 758 // do for sure before leaving 759 smali_file_stack.pop(); 760 } 761 return retval; 762 } 763 // $ANTLR end "smali_file" 764 765 766 public static class class_spec_return extends ParserRuleReturnScope { 767 public String className; 768 CommonTree tree; 769 @Override 770 public CommonTree getTree() { return tree; } 771 }; 772 773 774 // $ANTLR start "class_spec" 775 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:473:1: class_spec returns [String className] : CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR -> CLASS_DESCRIPTOR access_list ; 776 public final smaliParser.class_spec_return class_spec() throws RecognitionException { 777 smaliParser.class_spec_return retval = new smaliParser.class_spec_return(); 778 retval.start = input.LT(1); 779 780 CommonTree root_0 = null; 781 782 Token CLASS_DIRECTIVE9=null; 783 Token CLASS_DESCRIPTOR11=null; 784 ParserRuleReturnScope access_list10 =null; 785 786 CommonTree CLASS_DIRECTIVE9_tree=null; 787 CommonTree CLASS_DESCRIPTOR11_tree=null; 788 RewriteRuleTokenStream stream_CLASS_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token CLASS_DIRECTIVE"); 789 RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR"); 790 RewriteRuleSubtreeStream stream_access_list=new RewriteRuleSubtreeStream(adaptor,"rule access_list"); 791 792 try { 793 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:474:3: ( CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR -> CLASS_DESCRIPTOR access_list ) 794 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:474:5: CLASS_DIRECTIVE access_list CLASS_DESCRIPTOR 795 { 796 CLASS_DIRECTIVE9=(Token)match(input,CLASS_DIRECTIVE,FOLLOW_CLASS_DIRECTIVE_in_class_spec1291); 797 stream_CLASS_DIRECTIVE.add(CLASS_DIRECTIVE9); 798 799 pushFollow(FOLLOW_access_list_in_class_spec1293); 800 access_list10=access_list(); 801 state._fsp--; 802 803 stream_access_list.add(access_list10.getTree()); 804 CLASS_DESCRIPTOR11=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_class_spec1295); 805 stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR11); 806 807 retval.className = (CLASS_DESCRIPTOR11!=null?CLASS_DESCRIPTOR11.getText():null); 808 // AST REWRITE 809 // elements: CLASS_DESCRIPTOR, access_list 810 // token labels: 811 // rule labels: retval 812 // token list labels: 813 // rule list labels: 814 // wildcard labels: 815 retval.tree = root_0; 816 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 817 818 root_0 = (CommonTree)adaptor.nil(); 819 // 474:89: -> CLASS_DESCRIPTOR access_list 820 { 821 adaptor.addChild(root_0, stream_CLASS_DESCRIPTOR.nextNode()); 822 adaptor.addChild(root_0, stream_access_list.nextTree()); 823 } 824 825 826 retval.tree = root_0; 827 828 } 829 830 retval.stop = input.LT(-1); 831 832 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 833 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 834 835 } 836 catch (RecognitionException re) { 837 reportError(re); 838 recover(input,re); 839 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 840 } 841 finally { 842 // do for sure before leaving 843 } 844 return retval; 845 } 846 // $ANTLR end "class_spec" 847 848 849 public static class super_spec_return extends ParserRuleReturnScope { 850 CommonTree tree; 851 @Override 852 public CommonTree getTree() { return tree; } 853 }; 854 855 856 // $ANTLR start "super_spec" 857 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:476:1: super_spec : SUPER_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) ; 858 public final smaliParser.super_spec_return super_spec() throws RecognitionException { 859 smaliParser.super_spec_return retval = new smaliParser.super_spec_return(); 860 retval.start = input.LT(1); 861 862 CommonTree root_0 = null; 863 864 Token SUPER_DIRECTIVE12=null; 865 Token CLASS_DESCRIPTOR13=null; 866 867 CommonTree SUPER_DIRECTIVE12_tree=null; 868 CommonTree CLASS_DESCRIPTOR13_tree=null; 869 RewriteRuleTokenStream stream_SUPER_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SUPER_DIRECTIVE"); 870 RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR"); 871 872 try { 873 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:477:3: ( SUPER_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) ) 874 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:477:5: SUPER_DIRECTIVE CLASS_DESCRIPTOR 875 { 876 SUPER_DIRECTIVE12=(Token)match(input,SUPER_DIRECTIVE,FOLLOW_SUPER_DIRECTIVE_in_super_spec1313); 877 stream_SUPER_DIRECTIVE.add(SUPER_DIRECTIVE12); 878 879 CLASS_DESCRIPTOR13=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_super_spec1315); 880 stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR13); 881 882 // AST REWRITE 883 // elements: CLASS_DESCRIPTOR 884 // token labels: 885 // rule labels: retval 886 // token list labels: 887 // rule list labels: 888 // wildcard labels: 889 retval.tree = root_0; 890 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 891 892 root_0 = (CommonTree)adaptor.nil(); 893 // 477:38: -> ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) 894 { 895 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:477:41: ^( I_SUPER[$start, \"I_SUPER\"] CLASS_DESCRIPTOR ) 896 { 897 CommonTree root_1 = (CommonTree)adaptor.nil(); 898 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SUPER, (retval.start), "I_SUPER"), root_1); 899 adaptor.addChild(root_1, stream_CLASS_DESCRIPTOR.nextNode()); 900 adaptor.addChild(root_0, root_1); 901 } 902 903 } 904 905 906 retval.tree = root_0; 907 908 } 909 910 retval.stop = input.LT(-1); 911 912 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 913 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 914 915 } 916 catch (RecognitionException re) { 917 reportError(re); 918 recover(input,re); 919 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 920 } 921 finally { 922 // do for sure before leaving 923 } 924 return retval; 925 } 926 // $ANTLR end "super_spec" 927 928 929 public static class implements_spec_return extends ParserRuleReturnScope { 930 CommonTree tree; 931 @Override 932 public CommonTree getTree() { return tree; } 933 }; 934 935 936 // $ANTLR start "implements_spec" 937 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:479:1: implements_spec : IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) ; 938 public final smaliParser.implements_spec_return implements_spec() throws RecognitionException { 939 smaliParser.implements_spec_return retval = new smaliParser.implements_spec_return(); 940 retval.start = input.LT(1); 941 942 CommonTree root_0 = null; 943 944 Token IMPLEMENTS_DIRECTIVE14=null; 945 Token CLASS_DESCRIPTOR15=null; 946 947 CommonTree IMPLEMENTS_DIRECTIVE14_tree=null; 948 CommonTree CLASS_DESCRIPTOR15_tree=null; 949 RewriteRuleTokenStream stream_IMPLEMENTS_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token IMPLEMENTS_DIRECTIVE"); 950 RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR"); 951 952 try { 953 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:480:3: ( IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) ) 954 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:480:5: IMPLEMENTS_DIRECTIVE CLASS_DESCRIPTOR 955 { 956 IMPLEMENTS_DIRECTIVE14=(Token)match(input,IMPLEMENTS_DIRECTIVE,FOLLOW_IMPLEMENTS_DIRECTIVE_in_implements_spec1334); 957 stream_IMPLEMENTS_DIRECTIVE.add(IMPLEMENTS_DIRECTIVE14); 958 959 CLASS_DESCRIPTOR15=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_implements_spec1336); 960 stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR15); 961 962 // AST REWRITE 963 // elements: CLASS_DESCRIPTOR 964 // token labels: 965 // rule labels: retval 966 // token list labels: 967 // rule list labels: 968 // wildcard labels: 969 retval.tree = root_0; 970 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 971 972 root_0 = (CommonTree)adaptor.nil(); 973 // 480:43: -> ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) 974 { 975 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:480:46: ^( I_IMPLEMENTS[$start, \"I_IMPLEMENTS\"] CLASS_DESCRIPTOR ) 976 { 977 CommonTree root_1 = (CommonTree)adaptor.nil(); 978 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_IMPLEMENTS, (retval.start), "I_IMPLEMENTS"), root_1); 979 adaptor.addChild(root_1, stream_CLASS_DESCRIPTOR.nextNode()); 980 adaptor.addChild(root_0, root_1); 981 } 982 983 } 984 985 986 retval.tree = root_0; 987 988 } 989 990 retval.stop = input.LT(-1); 991 992 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 993 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 994 995 } 996 catch (RecognitionException re) { 997 reportError(re); 998 recover(input,re); 999 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 1000 } 1001 finally { 1002 // do for sure before leaving 1003 } 1004 return retval; 1005 } 1006 // $ANTLR end "implements_spec" 1007 1008 1009 public static class source_spec_return extends ParserRuleReturnScope { 1010 CommonTree tree; 1011 @Override 1012 public CommonTree getTree() { return tree; } 1013 }; 1014 1015 1016 // $ANTLR start "source_spec" 1017 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:482:1: source_spec : SOURCE_DIRECTIVE STRING_LITERAL -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) ; 1018 public final smaliParser.source_spec_return source_spec() throws RecognitionException { 1019 smaliParser.source_spec_return retval = new smaliParser.source_spec_return(); 1020 retval.start = input.LT(1); 1021 1022 CommonTree root_0 = null; 1023 1024 Token SOURCE_DIRECTIVE16=null; 1025 Token STRING_LITERAL17=null; 1026 1027 CommonTree SOURCE_DIRECTIVE16_tree=null; 1028 CommonTree STRING_LITERAL17_tree=null; 1029 RewriteRuleTokenStream stream_STRING_LITERAL=new RewriteRuleTokenStream(adaptor,"token STRING_LITERAL"); 1030 RewriteRuleTokenStream stream_SOURCE_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SOURCE_DIRECTIVE"); 1031 1032 try { 1033 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:483:3: ( SOURCE_DIRECTIVE STRING_LITERAL -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) ) 1034 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:483:5: SOURCE_DIRECTIVE STRING_LITERAL 1035 { 1036 SOURCE_DIRECTIVE16=(Token)match(input,SOURCE_DIRECTIVE,FOLLOW_SOURCE_DIRECTIVE_in_source_spec1355); 1037 stream_SOURCE_DIRECTIVE.add(SOURCE_DIRECTIVE16); 1038 1039 STRING_LITERAL17=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_source_spec1357); 1040 stream_STRING_LITERAL.add(STRING_LITERAL17); 1041 1042 // AST REWRITE 1043 // elements: STRING_LITERAL 1044 // token labels: 1045 // rule labels: retval 1046 // token list labels: 1047 // rule list labels: 1048 // wildcard labels: 1049 retval.tree = root_0; 1050 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 1051 1052 root_0 = (CommonTree)adaptor.nil(); 1053 // 483:37: -> ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) 1054 { 1055 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:483:40: ^( I_SOURCE[$start, \"I_SOURCE\"] STRING_LITERAL ) 1056 { 1057 CommonTree root_1 = (CommonTree)adaptor.nil(); 1058 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SOURCE, (retval.start), "I_SOURCE"), root_1); 1059 adaptor.addChild(root_1, stream_STRING_LITERAL.nextNode()); 1060 adaptor.addChild(root_0, root_1); 1061 } 1062 1063 } 1064 1065 1066 retval.tree = root_0; 1067 1068 } 1069 1070 retval.stop = input.LT(-1); 1071 1072 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 1073 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 1074 1075 } 1076 catch (RecognitionException re) { 1077 reportError(re); 1078 recover(input,re); 1079 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 1080 } 1081 finally { 1082 // do for sure before leaving 1083 } 1084 return retval; 1085 } 1086 // $ANTLR end "source_spec" 1087 1088 1089 public static class access_list_return extends ParserRuleReturnScope { 1090 CommonTree tree; 1091 @Override 1092 public CommonTree getTree() { return tree; } 1093 }; 1094 1095 1096 // $ANTLR start "access_list" 1097 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:485:1: access_list : ( ACCESS_SPEC )* -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) ; 1098 public final smaliParser.access_list_return access_list() throws RecognitionException { 1099 smaliParser.access_list_return retval = new smaliParser.access_list_return(); 1100 retval.start = input.LT(1); 1101 1102 CommonTree root_0 = null; 1103 1104 Token ACCESS_SPEC18=null; 1105 1106 CommonTree ACCESS_SPEC18_tree=null; 1107 RewriteRuleTokenStream stream_ACCESS_SPEC=new RewriteRuleTokenStream(adaptor,"token ACCESS_SPEC"); 1108 1109 try { 1110 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:3: ( ( ACCESS_SPEC )* -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) ) 1111 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:5: ( ACCESS_SPEC )* 1112 { 1113 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:5: ( ACCESS_SPEC )* 1114 loop2: 1115 while (true) { 1116 int alt2=2; 1117 int LA2_0 = input.LA(1); 1118 if ( (LA2_0==ACCESS_SPEC) ) { 1119 int LA2_2 = input.LA(2); 1120 if ( (LA2_2==ACCESS_SPEC||LA2_2==ANNOTATION_VISIBILITY||LA2_2==BOOL_LITERAL||LA2_2==CLASS_DESCRIPTOR||LA2_2==DOUBLE_LITERAL_OR_ID||LA2_2==FLOAT_LITERAL_OR_ID||(LA2_2 >= INSTRUCTION_FORMAT10t && LA2_2 <= INSTRUCTION_FORMAT10x_ODEX)||LA2_2==INSTRUCTION_FORMAT11x||LA2_2==INSTRUCTION_FORMAT12x_OR_ID||(LA2_2 >= INSTRUCTION_FORMAT21c_FIELD && LA2_2 <= INSTRUCTION_FORMAT21c_TYPE)||LA2_2==INSTRUCTION_FORMAT21t||(LA2_2 >= INSTRUCTION_FORMAT22c_FIELD && LA2_2 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA2_2 >= INSTRUCTION_FORMAT22s_OR_ID && LA2_2 <= INSTRUCTION_FORMAT22t)||LA2_2==INSTRUCTION_FORMAT23x||(LA2_2 >= INSTRUCTION_FORMAT31i_OR_ID && LA2_2 <= INSTRUCTION_FORMAT31t)||(LA2_2 >= INSTRUCTION_FORMAT35c_METHOD && LA2_2 <= INSTRUCTION_FORMAT35ms_METHOD)||LA2_2==INSTRUCTION_FORMAT51l||LA2_2==MEMBER_NAME||(LA2_2 >= NEGATIVE_INTEGER_LITERAL && LA2_2 <= NULL_LITERAL)||(LA2_2 >= PARAM_LIST_OR_ID && LA2_2 <= PRIMITIVE_TYPE)||LA2_2==REGISTER||LA2_2==SIMPLE_NAME||(LA2_2 >= VERIFICATION_ERROR_TYPE && LA2_2 <= VOID_TYPE)) ) { 1121 alt2=1; 1122 } 1123 1124 } 1125 1126 switch (alt2) { 1127 case 1 : 1128 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:5: ACCESS_SPEC 1129 { 1130 ACCESS_SPEC18=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_access_list1376); 1131 stream_ACCESS_SPEC.add(ACCESS_SPEC18); 1132 1133 } 1134 break; 1135 1136 default : 1137 break loop2; 1138 } 1139 } 1140 1141 // AST REWRITE 1142 // elements: ACCESS_SPEC 1143 // token labels: 1144 // rule labels: retval 1145 // token list labels: 1146 // rule list labels: 1147 // wildcard labels: 1148 retval.tree = root_0; 1149 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 1150 1151 root_0 = (CommonTree)adaptor.nil(); 1152 // 486:18: -> ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) 1153 { 1154 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:21: ^( I_ACCESS_LIST[$start,\"I_ACCESS_LIST\"] ( ACCESS_SPEC )* ) 1155 { 1156 CommonTree root_1 = (CommonTree)adaptor.nil(); 1157 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ACCESS_LIST, (retval.start), "I_ACCESS_LIST"), root_1); 1158 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:486:61: ( ACCESS_SPEC )* 1159 while ( stream_ACCESS_SPEC.hasNext() ) { 1160 adaptor.addChild(root_1, stream_ACCESS_SPEC.nextNode()); 1161 } 1162 stream_ACCESS_SPEC.reset(); 1163 1164 adaptor.addChild(root_0, root_1); 1165 } 1166 1167 } 1168 1169 1170 retval.tree = root_0; 1171 1172 } 1173 1174 retval.stop = input.LT(-1); 1175 1176 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 1177 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 1178 1179 } 1180 catch (RecognitionException re) { 1181 reportError(re); 1182 recover(input,re); 1183 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 1184 } 1185 finally { 1186 // do for sure before leaving 1187 } 1188 return retval; 1189 } 1190 // $ANTLR end "access_list" 1191 1192 1193 public static class field_return extends ParserRuleReturnScope { 1194 CommonTree tree; 1195 @Override 1196 public CommonTree getTree() { return tree; } 1197 }; 1198 1199 1200 // $ANTLR start "field" 1201 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:493:1: field : FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) ; 1202 public final smaliParser.field_return field() throws RecognitionException { 1203 smaliParser.field_return retval = new smaliParser.field_return(); 1204 retval.start = input.LT(1); 1205 1206 CommonTree root_0 = null; 1207 1208 Token FIELD_DIRECTIVE19=null; 1209 Token COLON22=null; 1210 Token EQUAL24=null; 1211 Token END_FIELD_DIRECTIVE27=null; 1212 ParserRuleReturnScope access_list20 =null; 1213 ParserRuleReturnScope member_name21 =null; 1214 ParserRuleReturnScope nonvoid_type_descriptor23 =null; 1215 ParserRuleReturnScope literal25 =null; 1216 ParserRuleReturnScope annotation26 =null; 1217 1218 CommonTree FIELD_DIRECTIVE19_tree=null; 1219 CommonTree COLON22_tree=null; 1220 CommonTree EQUAL24_tree=null; 1221 CommonTree END_FIELD_DIRECTIVE27_tree=null; 1222 RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); 1223 RewriteRuleTokenStream stream_FIELD_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token FIELD_DIRECTIVE"); 1224 RewriteRuleTokenStream stream_EQUAL=new RewriteRuleTokenStream(adaptor,"token EQUAL"); 1225 RewriteRuleTokenStream stream_END_FIELD_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_FIELD_DIRECTIVE"); 1226 RewriteRuleSubtreeStream stream_annotation=new RewriteRuleSubtreeStream(adaptor,"rule annotation"); 1227 RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor"); 1228 RewriteRuleSubtreeStream stream_access_list=new RewriteRuleSubtreeStream(adaptor,"rule access_list"); 1229 RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name"); 1230 RewriteRuleSubtreeStream stream_literal=new RewriteRuleSubtreeStream(adaptor,"rule literal"); 1231 1232 List<CommonTree> annotations = new ArrayList<CommonTree>(); 1233 try { 1234 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:3: ( FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) ) 1235 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:5: FIELD_DIRECTIVE access_list member_name COLON nonvoid_type_descriptor ( EQUAL literal )? ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) 1236 { 1237 FIELD_DIRECTIVE19=(Token)match(input,FIELD_DIRECTIVE,FOLLOW_FIELD_DIRECTIVE_in_field1407); 1238 stream_FIELD_DIRECTIVE.add(FIELD_DIRECTIVE19); 1239 1240 pushFollow(FOLLOW_access_list_in_field1409); 1241 access_list20=access_list(); 1242 state._fsp--; 1243 1244 stream_access_list.add(access_list20.getTree()); 1245 pushFollow(FOLLOW_member_name_in_field1411); 1246 member_name21=member_name(); 1247 state._fsp--; 1248 1249 stream_member_name.add(member_name21.getTree()); 1250 COLON22=(Token)match(input,COLON,FOLLOW_COLON_in_field1413); 1251 stream_COLON.add(COLON22); 1252 1253 pushFollow(FOLLOW_nonvoid_type_descriptor_in_field1415); 1254 nonvoid_type_descriptor23=nonvoid_type_descriptor(); 1255 state._fsp--; 1256 1257 stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor23.getTree()); 1258 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:75: ( EQUAL literal )? 1259 int alt3=2; 1260 int LA3_0 = input.LA(1); 1261 if ( (LA3_0==EQUAL) ) { 1262 alt3=1; 1263 } 1264 switch (alt3) { 1265 case 1 : 1266 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:495:76: EQUAL literal 1267 { 1268 EQUAL24=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_field1418); 1269 stream_EQUAL.add(EQUAL24); 1270 1271 pushFollow(FOLLOW_literal_in_field1420); 1272 literal25=literal(); 1273 state._fsp--; 1274 1275 stream_literal.add(literal25.getTree()); 1276 } 1277 break; 1278 1279 } 1280 1281 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:5: ( ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) ) 1282 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:7: ({...}? annotation )* ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) 1283 { 1284 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:7: ({...}? annotation )* 1285 loop4: 1286 while (true) { 1287 int alt4=2; 1288 int LA4_0 = input.LA(1); 1289 if ( (LA4_0==ANNOTATION_DIRECTIVE) ) { 1290 int LA4_9 = input.LA(2); 1291 if ( ((input.LA(1) == ANNOTATION_DIRECTIVE)) ) { 1292 alt4=1; 1293 } 1294 1295 } 1296 1297 switch (alt4) { 1298 case 1 : 1299 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:496:8: {...}? annotation 1300 { 1301 if ( !((input.LA(1) == ANNOTATION_DIRECTIVE)) ) { 1302 throw new FailedPredicateException(input, "field", "input.LA(1) == ANNOTATION_DIRECTIVE"); 1303 } 1304 pushFollow(FOLLOW_annotation_in_field1433); 1305 annotation26=annotation(); 1306 state._fsp--; 1307 1308 stream_annotation.add(annotation26.getTree()); 1309 annotations.add((annotation26!=null?((CommonTree)annotation26.getTree()):null)); 1310 } 1311 break; 1312 1313 default : 1314 break loop4; 1315 } 1316 } 1317 1318 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:497:7: ( END_FIELD_DIRECTIVE -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) | -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) ) 1319 int alt5=2; 1320 int LA5_0 = input.LA(1); 1321 if ( (LA5_0==END_FIELD_DIRECTIVE) ) { 1322 alt5=1; 1323 } 1324 else if ( (LA5_0==EOF||LA5_0==ANNOTATION_DIRECTIVE||LA5_0==CLASS_DIRECTIVE||LA5_0==FIELD_DIRECTIVE||LA5_0==IMPLEMENTS_DIRECTIVE||LA5_0==METHOD_DIRECTIVE||LA5_0==SOURCE_DIRECTIVE||LA5_0==SUPER_DIRECTIVE) ) { 1325 alt5=2; 1326 } 1327 1328 else { 1329 NoViableAltException nvae = 1330 new NoViableAltException("", 5, 0, input); 1331 throw nvae; 1332 } 1333 1334 switch (alt5) { 1335 case 1 : 1336 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:497:9: END_FIELD_DIRECTIVE 1337 { 1338 END_FIELD_DIRECTIVE27=(Token)match(input,END_FIELD_DIRECTIVE,FOLLOW_END_FIELD_DIRECTIVE_in_field1447); 1339 stream_END_FIELD_DIRECTIVE.add(END_FIELD_DIRECTIVE27); 1340 1341 // AST REWRITE 1342 // elements: access_list, nonvoid_type_descriptor, member_name, literal, annotation 1343 // token labels: 1344 // rule labels: retval 1345 // token list labels: 1346 // rule list labels: 1347 // wildcard labels: 1348 retval.tree = root_0; 1349 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 1350 1351 root_0 = (CommonTree)adaptor.nil(); 1352 // 498:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) 1353 { 1354 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:12: ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ( annotation )* ) ) 1355 { 1356 CommonTree root_1 = (CommonTree)adaptor.nil(); 1357 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD, (retval.start), "I_FIELD"), root_1); 1358 adaptor.addChild(root_1, stream_member_name.nextTree()); 1359 adaptor.addChild(root_1, stream_access_list.nextTree()); 1360 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:65: ^( I_FIELD_TYPE nonvoid_type_descriptor ) 1361 { 1362 CommonTree root_2 = (CommonTree)adaptor.nil(); 1363 root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_TYPE, "I_FIELD_TYPE"), root_2); 1364 adaptor.addChild(root_2, stream_nonvoid_type_descriptor.nextTree()); 1365 adaptor.addChild(root_1, root_2); 1366 } 1367 1368 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )? 1369 if ( stream_literal.hasNext() ) { 1370 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:105: ^( I_FIELD_INITIAL_VALUE literal ) 1371 { 1372 CommonTree root_2 = (CommonTree)adaptor.nil(); 1373 root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_INITIAL_VALUE, "I_FIELD_INITIAL_VALUE"), root_2); 1374 adaptor.addChild(root_2, stream_literal.nextTree()); 1375 adaptor.addChild(root_1, root_2); 1376 } 1377 1378 } 1379 stream_literal.reset(); 1380 1381 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:139: ^( I_ANNOTATIONS ( annotation )* ) 1382 { 1383 CommonTree root_2 = (CommonTree)adaptor.nil(); 1384 root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2); 1385 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:498:155: ( annotation )* 1386 while ( stream_annotation.hasNext() ) { 1387 adaptor.addChild(root_2, stream_annotation.nextTree()); 1388 } 1389 stream_annotation.reset(); 1390 1391 adaptor.addChild(root_1, root_2); 1392 } 1393 1394 adaptor.addChild(root_0, root_1); 1395 } 1396 1397 } 1398 1399 1400 retval.tree = root_0; 1401 1402 } 1403 break; 1404 case 2 : 1405 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:499:21: 1406 { 1407 smali_file_stack.peek().classAnnotations.addAll(annotations); 1408 // AST REWRITE 1409 // elements: access_list, nonvoid_type_descriptor, literal, member_name 1410 // token labels: 1411 // rule labels: retval 1412 // token list labels: 1413 // rule list labels: 1414 // wildcard labels: 1415 retval.tree = root_0; 1416 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 1417 1418 root_0 = (CommonTree)adaptor.nil(); 1419 // 500:9: -> ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) 1420 { 1421 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:12: ^( I_FIELD[$start, \"I_FIELD\"] member_name access_list ^( I_FIELD_TYPE nonvoid_type_descriptor ) ( ^( I_FIELD_INITIAL_VALUE literal ) )? ^( I_ANNOTATIONS ) ) 1422 { 1423 CommonTree root_1 = (CommonTree)adaptor.nil(); 1424 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD, (retval.start), "I_FIELD"), root_1); 1425 adaptor.addChild(root_1, stream_member_name.nextTree()); 1426 adaptor.addChild(root_1, stream_access_list.nextTree()); 1427 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:65: ^( I_FIELD_TYPE nonvoid_type_descriptor ) 1428 { 1429 CommonTree root_2 = (CommonTree)adaptor.nil(); 1430 root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_TYPE, "I_FIELD_TYPE"), root_2); 1431 adaptor.addChild(root_2, stream_nonvoid_type_descriptor.nextTree()); 1432 adaptor.addChild(root_1, root_2); 1433 } 1434 1435 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:105: ( ^( I_FIELD_INITIAL_VALUE literal ) )? 1436 if ( stream_literal.hasNext() ) { 1437 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:105: ^( I_FIELD_INITIAL_VALUE literal ) 1438 { 1439 CommonTree root_2 = (CommonTree)adaptor.nil(); 1440 root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_FIELD_INITIAL_VALUE, "I_FIELD_INITIAL_VALUE"), root_2); 1441 adaptor.addChild(root_2, stream_literal.nextTree()); 1442 adaptor.addChild(root_1, root_2); 1443 } 1444 1445 } 1446 stream_literal.reset(); 1447 1448 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:500:139: ^( I_ANNOTATIONS ) 1449 { 1450 CommonTree root_2 = (CommonTree)adaptor.nil(); 1451 root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATIONS, "I_ANNOTATIONS"), root_2); 1452 adaptor.addChild(root_1, root_2); 1453 } 1454 1455 adaptor.addChild(root_0, root_1); 1456 } 1457 1458 } 1459 1460 1461 retval.tree = root_0; 1462 1463 } 1464 break; 1465 1466 } 1467 1468 } 1469 1470 } 1471 1472 retval.stop = input.LT(-1); 1473 1474 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 1475 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 1476 1477 } 1478 catch (RecognitionException re) { 1479 reportError(re); 1480 recover(input,re); 1481 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 1482 } 1483 finally { 1484 // do for sure before leaving 1485 } 1486 return retval; 1487 } 1488 // $ANTLR end "field" 1489 1490 1491 public static class method_return extends ParserRuleReturnScope { 1492 CommonTree tree; 1493 @Override 1494 public CommonTree getTree() { return tree; } 1495 }; 1496 1497 1498 // $ANTLR start "method" 1499 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:504:1: method : METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) ; 1500 public final smaliParser.method_return method() throws RecognitionException { 1501 smaliParser.method_return retval = new smaliParser.method_return(); 1502 retval.start = input.LT(1); 1503 1504 CommonTree root_0 = null; 1505 1506 Token METHOD_DIRECTIVE28=null; 1507 Token END_METHOD_DIRECTIVE33=null; 1508 ParserRuleReturnScope access_list29 =null; 1509 ParserRuleReturnScope member_name30 =null; 1510 ParserRuleReturnScope method_prototype31 =null; 1511 ParserRuleReturnScope statements_and_directives32 =null; 1512 1513 CommonTree METHOD_DIRECTIVE28_tree=null; 1514 CommonTree END_METHOD_DIRECTIVE33_tree=null; 1515 RewriteRuleTokenStream stream_END_METHOD_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_METHOD_DIRECTIVE"); 1516 RewriteRuleTokenStream stream_METHOD_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token METHOD_DIRECTIVE"); 1517 RewriteRuleSubtreeStream stream_access_list=new RewriteRuleSubtreeStream(adaptor,"rule access_list"); 1518 RewriteRuleSubtreeStream stream_method_prototype=new RewriteRuleSubtreeStream(adaptor,"rule method_prototype"); 1519 RewriteRuleSubtreeStream stream_statements_and_directives=new RewriteRuleSubtreeStream(adaptor,"rule statements_and_directives"); 1520 RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name"); 1521 1522 try { 1523 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:505:3: ( METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) ) 1524 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:505:5: METHOD_DIRECTIVE access_list member_name method_prototype statements_and_directives END_METHOD_DIRECTIVE 1525 { 1526 METHOD_DIRECTIVE28=(Token)match(input,METHOD_DIRECTIVE,FOLLOW_METHOD_DIRECTIVE_in_method1558); 1527 stream_METHOD_DIRECTIVE.add(METHOD_DIRECTIVE28); 1528 1529 pushFollow(FOLLOW_access_list_in_method1560); 1530 access_list29=access_list(); 1531 state._fsp--; 1532 1533 stream_access_list.add(access_list29.getTree()); 1534 pushFollow(FOLLOW_member_name_in_method1562); 1535 member_name30=member_name(); 1536 state._fsp--; 1537 1538 stream_member_name.add(member_name30.getTree()); 1539 pushFollow(FOLLOW_method_prototype_in_method1564); 1540 method_prototype31=method_prototype(); 1541 state._fsp--; 1542 1543 stream_method_prototype.add(method_prototype31.getTree()); 1544 pushFollow(FOLLOW_statements_and_directives_in_method1566); 1545 statements_and_directives32=statements_and_directives(); 1546 state._fsp--; 1547 1548 stream_statements_and_directives.add(statements_and_directives32.getTree()); 1549 END_METHOD_DIRECTIVE33=(Token)match(input,END_METHOD_DIRECTIVE,FOLLOW_END_METHOD_DIRECTIVE_in_method1572); 1550 stream_END_METHOD_DIRECTIVE.add(END_METHOD_DIRECTIVE33); 1551 1552 // AST REWRITE 1553 // elements: method_prototype, statements_and_directives, access_list, member_name 1554 // token labels: 1555 // rule labels: retval 1556 // token list labels: 1557 // rule list labels: 1558 // wildcard labels: 1559 retval.tree = root_0; 1560 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 1561 1562 root_0 = (CommonTree)adaptor.nil(); 1563 // 507:5: -> ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) 1564 { 1565 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:507:8: ^( I_METHOD[$start, \"I_METHOD\"] member_name method_prototype access_list statements_and_directives ) 1566 { 1567 CommonTree root_1 = (CommonTree)adaptor.nil(); 1568 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD, (retval.start), "I_METHOD"), root_1); 1569 adaptor.addChild(root_1, stream_member_name.nextTree()); 1570 adaptor.addChild(root_1, stream_method_prototype.nextTree()); 1571 adaptor.addChild(root_1, stream_access_list.nextTree()); 1572 adaptor.addChild(root_1, stream_statements_and_directives.nextTree()); 1573 adaptor.addChild(root_0, root_1); 1574 } 1575 1576 } 1577 1578 1579 retval.tree = root_0; 1580 1581 } 1582 1583 retval.stop = input.LT(-1); 1584 1585 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 1586 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 1587 1588 } 1589 catch (RecognitionException re) { 1590 reportError(re); 1591 recover(input,re); 1592 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 1593 } 1594 finally { 1595 // do for sure before leaving 1596 } 1597 return retval; 1598 } 1599 // $ANTLR end "method" 1600 1601 1602 protected static class statements_and_directives_scope { 1603 boolean hasRegistersDirective; 1604 List<CommonTree> methodAnnotations; 1605 } 1606 protected Stack<statements_and_directives_scope> statements_and_directives_stack = new Stack<statements_and_directives_scope>(); 1607 1608 public static class statements_and_directives_return extends ParserRuleReturnScope { 1609 CommonTree tree; 1610 @Override 1611 public CommonTree getTree() { return tree; } 1612 }; 1613 1614 1615 // $ANTLR start "statements_and_directives" 1616 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:509:1: statements_and_directives : ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) ; 1617 public final smaliParser.statements_and_directives_return statements_and_directives() throws RecognitionException { 1618 statements_and_directives_stack.push(new statements_and_directives_scope()); 1619 smaliParser.statements_and_directives_return retval = new smaliParser.statements_and_directives_return(); 1620 retval.start = input.LT(1); 1621 1622 CommonTree root_0 = null; 1623 1624 ParserRuleReturnScope ordered_method_item34 =null; 1625 ParserRuleReturnScope registers_directive35 =null; 1626 ParserRuleReturnScope catch_directive36 =null; 1627 ParserRuleReturnScope catchall_directive37 =null; 1628 ParserRuleReturnScope parameter_directive38 =null; 1629 ParserRuleReturnScope annotation39 =null; 1630 1631 RewriteRuleSubtreeStream stream_catchall_directive=new RewriteRuleSubtreeStream(adaptor,"rule catchall_directive"); 1632 RewriteRuleSubtreeStream stream_annotation=new RewriteRuleSubtreeStream(adaptor,"rule annotation"); 1633 RewriteRuleSubtreeStream stream_ordered_method_item=new RewriteRuleSubtreeStream(adaptor,"rule ordered_method_item"); 1634 RewriteRuleSubtreeStream stream_catch_directive=new RewriteRuleSubtreeStream(adaptor,"rule catch_directive"); 1635 RewriteRuleSubtreeStream stream_registers_directive=new RewriteRuleSubtreeStream(adaptor,"rule registers_directive"); 1636 RewriteRuleSubtreeStream stream_parameter_directive=new RewriteRuleSubtreeStream(adaptor,"rule parameter_directive"); 1637 1638 try { 1639 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:515:3: ( ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) ) 1640 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:515:5: ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* 1641 { 1642 1643 statements_and_directives_stack.peek().hasRegistersDirective = false; 1644 statements_and_directives_stack.peek().methodAnnotations = new ArrayList<CommonTree>(); 1645 1646 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:519:5: ( ordered_method_item | registers_directive | catch_directive | catchall_directive | parameter_directive | annotation )* 1647 loop6: 1648 while (true) { 1649 int alt6=7; 1650 switch ( input.LA(1) ) { 1651 case ARRAY_DATA_DIRECTIVE: 1652 case COLON: 1653 case END_LOCAL_DIRECTIVE: 1654 case EPILOGUE_DIRECTIVE: 1655 case INSTRUCTION_FORMAT10t: 1656 case INSTRUCTION_FORMAT10x: 1657 case INSTRUCTION_FORMAT10x_ODEX: 1658 case INSTRUCTION_FORMAT11n: 1659 case INSTRUCTION_FORMAT11x: 1660 case INSTRUCTION_FORMAT12x: 1661 case INSTRUCTION_FORMAT12x_OR_ID: 1662 case INSTRUCTION_FORMAT20bc: 1663 case INSTRUCTION_FORMAT20t: 1664 case INSTRUCTION_FORMAT21c_FIELD: 1665 case INSTRUCTION_FORMAT21c_FIELD_ODEX: 1666 case INSTRUCTION_FORMAT21c_STRING: 1667 case INSTRUCTION_FORMAT21c_TYPE: 1668 case INSTRUCTION_FORMAT21ih: 1669 case INSTRUCTION_FORMAT21lh: 1670 case INSTRUCTION_FORMAT21s: 1671 case INSTRUCTION_FORMAT21t: 1672 case INSTRUCTION_FORMAT22b: 1673 case INSTRUCTION_FORMAT22c_FIELD: 1674 case INSTRUCTION_FORMAT22c_FIELD_ODEX: 1675 case INSTRUCTION_FORMAT22c_TYPE: 1676 case INSTRUCTION_FORMAT22cs_FIELD: 1677 case INSTRUCTION_FORMAT22s: 1678 case INSTRUCTION_FORMAT22s_OR_ID: 1679 case INSTRUCTION_FORMAT22t: 1680 case INSTRUCTION_FORMAT22x: 1681 case INSTRUCTION_FORMAT23x: 1682 case INSTRUCTION_FORMAT30t: 1683 case INSTRUCTION_FORMAT31c: 1684 case INSTRUCTION_FORMAT31i: 1685 case INSTRUCTION_FORMAT31i_OR_ID: 1686 case INSTRUCTION_FORMAT31t: 1687 case INSTRUCTION_FORMAT32x: 1688 case INSTRUCTION_FORMAT35c_METHOD: 1689 case INSTRUCTION_FORMAT35c_METHOD_ODEX: 1690 case INSTRUCTION_FORMAT35c_TYPE: 1691 case INSTRUCTION_FORMAT35mi_METHOD: 1692 case INSTRUCTION_FORMAT35ms_METHOD: 1693 case INSTRUCTION_FORMAT3rc_METHOD: 1694 case INSTRUCTION_FORMAT3rc_METHOD_ODEX: 1695 case INSTRUCTION_FORMAT3rc_TYPE: 1696 case INSTRUCTION_FORMAT3rmi_METHOD: 1697 case INSTRUCTION_FORMAT3rms_METHOD: 1698 case INSTRUCTION_FORMAT51l: 1699 case LINE_DIRECTIVE: 1700 case LOCAL_DIRECTIVE: 1701 case PACKED_SWITCH_DIRECTIVE: 1702 case PROLOGUE_DIRECTIVE: 1703 case RESTART_LOCAL_DIRECTIVE: 1704 case SOURCE_DIRECTIVE: 1705 case SPARSE_SWITCH_DIRECTIVE: 1706 { 1707 alt6=1; 1708 } 1709 break; 1710 case LOCALS_DIRECTIVE: 1711 case REGISTERS_DIRECTIVE: 1712 { 1713 alt6=2; 1714 } 1715 break; 1716 case CATCH_DIRECTIVE: 1717 { 1718 alt6=3; 1719 } 1720 break; 1721 case CATCHALL_DIRECTIVE: 1722 { 1723 alt6=4; 1724 } 1725 break; 1726 case PARAMETER_DIRECTIVE: 1727 { 1728 alt6=5; 1729 } 1730 break; 1731 case ANNOTATION_DIRECTIVE: 1732 { 1733 alt6=6; 1734 } 1735 break; 1736 } 1737 switch (alt6) { 1738 case 1 : 1739 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:519:7: ordered_method_item 1740 { 1741 pushFollow(FOLLOW_ordered_method_item_in_statements_and_directives1617); 1742 ordered_method_item34=ordered_method_item(); 1743 state._fsp--; 1744 1745 stream_ordered_method_item.add(ordered_method_item34.getTree()); 1746 } 1747 break; 1748 case 2 : 1749 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:520:7: registers_directive 1750 { 1751 pushFollow(FOLLOW_registers_directive_in_statements_and_directives1625); 1752 registers_directive35=registers_directive(); 1753 state._fsp--; 1754 1755 stream_registers_directive.add(registers_directive35.getTree()); 1756 } 1757 break; 1758 case 3 : 1759 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:521:7: catch_directive 1760 { 1761 pushFollow(FOLLOW_catch_directive_in_statements_and_directives1633); 1762 catch_directive36=catch_directive(); 1763 state._fsp--; 1764 1765 stream_catch_directive.add(catch_directive36.getTree()); 1766 } 1767 break; 1768 case 4 : 1769 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:522:7: catchall_directive 1770 { 1771 pushFollow(FOLLOW_catchall_directive_in_statements_and_directives1641); 1772 catchall_directive37=catchall_directive(); 1773 state._fsp--; 1774 1775 stream_catchall_directive.add(catchall_directive37.getTree()); 1776 } 1777 break; 1778 case 5 : 1779 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:523:7: parameter_directive 1780 { 1781 pushFollow(FOLLOW_parameter_directive_in_statements_and_directives1649); 1782 parameter_directive38=parameter_directive(); 1783 state._fsp--; 1784 1785 stream_parameter_directive.add(parameter_directive38.getTree()); 1786 } 1787 break; 1788 case 6 : 1789 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:524:7: annotation 1790 { 1791 pushFollow(FOLLOW_annotation_in_statements_and_directives1657); 1792 annotation39=annotation(); 1793 state._fsp--; 1794 1795 stream_annotation.add(annotation39.getTree()); 1796 statements_and_directives_stack.peek().methodAnnotations.add((annotation39!=null?((CommonTree)annotation39.getTree()):null)); 1797 } 1798 break; 1799 1800 default : 1801 break loop6; 1802 } 1803 } 1804 1805 // AST REWRITE 1806 // elements: ordered_method_item, catchall_directive, catch_directive, registers_directive, parameter_directive 1807 // token labels: 1808 // rule labels: retval 1809 // token list labels: 1810 // rule list labels: 1811 // wildcard labels: 1812 retval.tree = root_0; 1813 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 1814 1815 root_0 = (CommonTree)adaptor.nil(); 1816 // 526:5: -> ( registers_directive )? ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) ^( I_PARAMETERS ( parameter_directive )* ) 1817 { 1818 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:526:8: ( registers_directive )? 1819 if ( stream_registers_directive.hasNext() ) { 1820 adaptor.addChild(root_0, stream_registers_directive.nextTree()); 1821 } 1822 stream_registers_directive.reset(); 1823 1824 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:527:8: ^( I_ORDERED_METHOD_ITEMS ( ordered_method_item )* ) 1825 { 1826 CommonTree root_1 = (CommonTree)adaptor.nil(); 1827 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ORDERED_METHOD_ITEMS, "I_ORDERED_METHOD_ITEMS"), root_1); 1828 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:527:33: ( ordered_method_item )* 1829 while ( stream_ordered_method_item.hasNext() ) { 1830 adaptor.addChild(root_1, stream_ordered_method_item.nextTree()); 1831 } 1832 stream_ordered_method_item.reset(); 1833 1834 adaptor.addChild(root_0, root_1); 1835 } 1836 1837 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:528:8: ^( I_CATCHES ( catch_directive )* ( catchall_directive )* ) 1838 { 1839 CommonTree root_1 = (CommonTree)adaptor.nil(); 1840 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_CATCHES, "I_CATCHES"), root_1); 1841 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:528:20: ( catch_directive )* 1842 while ( stream_catch_directive.hasNext() ) { 1843 adaptor.addChild(root_1, stream_catch_directive.nextTree()); 1844 } 1845 stream_catch_directive.reset(); 1846 1847 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:528:37: ( catchall_directive )* 1848 while ( stream_catchall_directive.hasNext() ) { 1849 adaptor.addChild(root_1, stream_catchall_directive.nextTree()); 1850 } 1851 stream_catchall_directive.reset(); 1852 1853 adaptor.addChild(root_0, root_1); 1854 } 1855 1856 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:529:8: ^( I_PARAMETERS ( parameter_directive )* ) 1857 { 1858 CommonTree root_1 = (CommonTree)adaptor.nil(); 1859 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_PARAMETERS, "I_PARAMETERS"), root_1); 1860 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:529:23: ( parameter_directive )* 1861 while ( stream_parameter_directive.hasNext() ) { 1862 adaptor.addChild(root_1, stream_parameter_directive.nextTree()); 1863 } 1864 stream_parameter_directive.reset(); 1865 1866 adaptor.addChild(root_0, root_1); 1867 } 1868 1869 adaptor.addChild(root_0, buildTree(I_ANNOTATIONS, "I_ANNOTATIONS", statements_and_directives_stack.peek().methodAnnotations)); 1870 } 1871 1872 1873 retval.tree = root_0; 1874 1875 } 1876 1877 retval.stop = input.LT(-1); 1878 1879 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 1880 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 1881 1882 } 1883 catch (RecognitionException re) { 1884 reportError(re); 1885 recover(input,re); 1886 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 1887 } 1888 finally { 1889 // do for sure before leaving 1890 statements_and_directives_stack.pop(); 1891 } 1892 return retval; 1893 } 1894 // $ANTLR end "statements_and_directives" 1895 1896 1897 public static class ordered_method_item_return extends ParserRuleReturnScope { 1898 CommonTree tree; 1899 @Override 1900 public CommonTree getTree() { return tree; } 1901 }; 1902 1903 1904 // $ANTLR start "ordered_method_item" 1905 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:533:1: ordered_method_item : ( label | instruction | debug_directive ); 1906 public final smaliParser.ordered_method_item_return ordered_method_item() throws RecognitionException { 1907 smaliParser.ordered_method_item_return retval = new smaliParser.ordered_method_item_return(); 1908 retval.start = input.LT(1); 1909 1910 CommonTree root_0 = null; 1911 1912 ParserRuleReturnScope label40 =null; 1913 ParserRuleReturnScope instruction41 =null; 1914 ParserRuleReturnScope debug_directive42 =null; 1915 1916 1917 try { 1918 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:534:3: ( label | instruction | debug_directive ) 1919 int alt7=3; 1920 switch ( input.LA(1) ) { 1921 case COLON: 1922 { 1923 alt7=1; 1924 } 1925 break; 1926 case ARRAY_DATA_DIRECTIVE: 1927 case INSTRUCTION_FORMAT10t: 1928 case INSTRUCTION_FORMAT10x: 1929 case INSTRUCTION_FORMAT10x_ODEX: 1930 case INSTRUCTION_FORMAT11n: 1931 case INSTRUCTION_FORMAT11x: 1932 case INSTRUCTION_FORMAT12x: 1933 case INSTRUCTION_FORMAT12x_OR_ID: 1934 case INSTRUCTION_FORMAT20bc: 1935 case INSTRUCTION_FORMAT20t: 1936 case INSTRUCTION_FORMAT21c_FIELD: 1937 case INSTRUCTION_FORMAT21c_FIELD_ODEX: 1938 case INSTRUCTION_FORMAT21c_STRING: 1939 case INSTRUCTION_FORMAT21c_TYPE: 1940 case INSTRUCTION_FORMAT21ih: 1941 case INSTRUCTION_FORMAT21lh: 1942 case INSTRUCTION_FORMAT21s: 1943 case INSTRUCTION_FORMAT21t: 1944 case INSTRUCTION_FORMAT22b: 1945 case INSTRUCTION_FORMAT22c_FIELD: 1946 case INSTRUCTION_FORMAT22c_FIELD_ODEX: 1947 case INSTRUCTION_FORMAT22c_TYPE: 1948 case INSTRUCTION_FORMAT22cs_FIELD: 1949 case INSTRUCTION_FORMAT22s: 1950 case INSTRUCTION_FORMAT22s_OR_ID: 1951 case INSTRUCTION_FORMAT22t: 1952 case INSTRUCTION_FORMAT22x: 1953 case INSTRUCTION_FORMAT23x: 1954 case INSTRUCTION_FORMAT30t: 1955 case INSTRUCTION_FORMAT31c: 1956 case INSTRUCTION_FORMAT31i: 1957 case INSTRUCTION_FORMAT31i_OR_ID: 1958 case INSTRUCTION_FORMAT31t: 1959 case INSTRUCTION_FORMAT32x: 1960 case INSTRUCTION_FORMAT35c_METHOD: 1961 case INSTRUCTION_FORMAT35c_METHOD_ODEX: 1962 case INSTRUCTION_FORMAT35c_TYPE: 1963 case INSTRUCTION_FORMAT35mi_METHOD: 1964 case INSTRUCTION_FORMAT35ms_METHOD: 1965 case INSTRUCTION_FORMAT3rc_METHOD: 1966 case INSTRUCTION_FORMAT3rc_METHOD_ODEX: 1967 case INSTRUCTION_FORMAT3rc_TYPE: 1968 case INSTRUCTION_FORMAT3rmi_METHOD: 1969 case INSTRUCTION_FORMAT3rms_METHOD: 1970 case INSTRUCTION_FORMAT51l: 1971 case PACKED_SWITCH_DIRECTIVE: 1972 case SPARSE_SWITCH_DIRECTIVE: 1973 { 1974 alt7=2; 1975 } 1976 break; 1977 case END_LOCAL_DIRECTIVE: 1978 case EPILOGUE_DIRECTIVE: 1979 case LINE_DIRECTIVE: 1980 case LOCAL_DIRECTIVE: 1981 case PROLOGUE_DIRECTIVE: 1982 case RESTART_LOCAL_DIRECTIVE: 1983 case SOURCE_DIRECTIVE: 1984 { 1985 alt7=3; 1986 } 1987 break; 1988 default: 1989 NoViableAltException nvae = 1990 new NoViableAltException("", 7, 0, input); 1991 throw nvae; 1992 } 1993 switch (alt7) { 1994 case 1 : 1995 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:534:5: label 1996 { 1997 root_0 = (CommonTree)adaptor.nil(); 1998 1999 2000 pushFollow(FOLLOW_label_in_ordered_method_item1742); 2001 label40=label(); 2002 state._fsp--; 2003 2004 adaptor.addChild(root_0, label40.getTree()); 2005 2006 } 2007 break; 2008 case 2 : 2009 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:535:5: instruction 2010 { 2011 root_0 = (CommonTree)adaptor.nil(); 2012 2013 2014 pushFollow(FOLLOW_instruction_in_ordered_method_item1748); 2015 instruction41=instruction(); 2016 state._fsp--; 2017 2018 adaptor.addChild(root_0, instruction41.getTree()); 2019 2020 } 2021 break; 2022 case 3 : 2023 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:536:5: debug_directive 2024 { 2025 root_0 = (CommonTree)adaptor.nil(); 2026 2027 2028 pushFollow(FOLLOW_debug_directive_in_ordered_method_item1754); 2029 debug_directive42=debug_directive(); 2030 state._fsp--; 2031 2032 adaptor.addChild(root_0, debug_directive42.getTree()); 2033 2034 } 2035 break; 2036 2037 } 2038 retval.stop = input.LT(-1); 2039 2040 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 2041 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 2042 2043 } 2044 catch (RecognitionException re) { 2045 reportError(re); 2046 recover(input,re); 2047 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 2048 } 2049 finally { 2050 // do for sure before leaving 2051 } 2052 return retval; 2053 } 2054 // $ANTLR end "ordered_method_item" 2055 2056 2057 public static class registers_directive_return extends ParserRuleReturnScope { 2058 CommonTree tree; 2059 @Override 2060 public CommonTree getTree() { return tree; } 2061 }; 2062 2063 2064 // $ANTLR start "registers_directive" 2065 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:538:1: registers_directive : (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) ; 2066 public final smaliParser.registers_directive_return registers_directive() throws RecognitionException { 2067 smaliParser.registers_directive_return retval = new smaliParser.registers_directive_return(); 2068 retval.start = input.LT(1); 2069 2070 CommonTree root_0 = null; 2071 2072 Token directive=null; 2073 ParserRuleReturnScope regCount =null; 2074 ParserRuleReturnScope regCount2 =null; 2075 2076 CommonTree directive_tree=null; 2077 RewriteRuleTokenStream stream_REGISTERS_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token REGISTERS_DIRECTIVE"); 2078 RewriteRuleTokenStream stream_LOCALS_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token LOCALS_DIRECTIVE"); 2079 RewriteRuleSubtreeStream stream_integral_literal=new RewriteRuleSubtreeStream(adaptor,"rule integral_literal"); 2080 2081 try { 2082 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:539:3: ( (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) ) 2083 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:539:5: (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) 2084 { 2085 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:539:5: (directive= REGISTERS_DIRECTIVE regCount= integral_literal -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) |directive= LOCALS_DIRECTIVE regCount2= integral_literal -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) ) 2086 int alt8=2; 2087 int LA8_0 = input.LA(1); 2088 if ( (LA8_0==REGISTERS_DIRECTIVE) ) { 2089 alt8=1; 2090 } 2091 else if ( (LA8_0==LOCALS_DIRECTIVE) ) { 2092 alt8=2; 2093 } 2094 2095 else { 2096 NoViableAltException nvae = 2097 new NoViableAltException("", 8, 0, input); 2098 throw nvae; 2099 } 2100 2101 switch (alt8) { 2102 case 1 : 2103 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:540:7: directive= REGISTERS_DIRECTIVE regCount= integral_literal 2104 { 2105 directive=(Token)match(input,REGISTERS_DIRECTIVE,FOLLOW_REGISTERS_DIRECTIVE_in_registers_directive1774); 2106 stream_REGISTERS_DIRECTIVE.add(directive); 2107 2108 pushFollow(FOLLOW_integral_literal_in_registers_directive1778); 2109 regCount=integral_literal(); 2110 state._fsp--; 2111 2112 stream_integral_literal.add(regCount.getTree()); 2113 // AST REWRITE 2114 // elements: regCount 2115 // token labels: 2116 // rule labels: retval, regCount 2117 // token list labels: 2118 // rule list labels: 2119 // wildcard labels: 2120 retval.tree = root_0; 2121 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2122 RewriteRuleSubtreeStream stream_regCount=new RewriteRuleSubtreeStream(adaptor,"rule regCount",regCount!=null?regCount.getTree():null); 2123 2124 root_0 = (CommonTree)adaptor.nil(); 2125 // 540:63: -> ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) 2126 { 2127 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:540:66: ^( I_REGISTERS[$REGISTERS_DIRECTIVE, \"I_REGISTERS\"] $regCount) 2128 { 2129 CommonTree root_1 = (CommonTree)adaptor.nil(); 2130 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTERS, directive, "I_REGISTERS"), root_1); 2131 adaptor.addChild(root_1, stream_regCount.nextTree()); 2132 adaptor.addChild(root_0, root_1); 2133 } 2134 2135 } 2136 2137 2138 retval.tree = root_0; 2139 2140 } 2141 break; 2142 case 2 : 2143 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:541:7: directive= LOCALS_DIRECTIVE regCount2= integral_literal 2144 { 2145 directive=(Token)match(input,LOCALS_DIRECTIVE,FOLLOW_LOCALS_DIRECTIVE_in_registers_directive1798); 2146 stream_LOCALS_DIRECTIVE.add(directive); 2147 2148 pushFollow(FOLLOW_integral_literal_in_registers_directive1802); 2149 regCount2=integral_literal(); 2150 state._fsp--; 2151 2152 stream_integral_literal.add(regCount2.getTree()); 2153 // AST REWRITE 2154 // elements: regCount2 2155 // token labels: 2156 // rule labels: retval, regCount2 2157 // token list labels: 2158 // rule list labels: 2159 // wildcard labels: 2160 retval.tree = root_0; 2161 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2162 RewriteRuleSubtreeStream stream_regCount2=new RewriteRuleSubtreeStream(adaptor,"rule regCount2",regCount2!=null?regCount2.getTree():null); 2163 2164 root_0 = (CommonTree)adaptor.nil(); 2165 // 541:61: -> ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) 2166 { 2167 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:541:64: ^( I_LOCALS[$LOCALS_DIRECTIVE, \"I_LOCALS\"] $regCount2) 2168 { 2169 CommonTree root_1 = (CommonTree)adaptor.nil(); 2170 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LOCALS, directive, "I_LOCALS"), root_1); 2171 adaptor.addChild(root_1, stream_regCount2.nextTree()); 2172 adaptor.addChild(root_0, root_1); 2173 } 2174 2175 } 2176 2177 2178 retval.tree = root_0; 2179 2180 } 2181 break; 2182 2183 } 2184 2185 2186 if (statements_and_directives_stack.peek().hasRegistersDirective) { 2187 throw new SemanticException(input, directive, "There can only be a single .registers or .locals directive in a method"); 2188 } 2189 statements_and_directives_stack.peek().hasRegistersDirective =true; 2190 2191 } 2192 2193 retval.stop = input.LT(-1); 2194 2195 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 2196 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 2197 2198 } 2199 catch (RecognitionException re) { 2200 reportError(re); 2201 recover(input,re); 2202 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 2203 } 2204 finally { 2205 // do for sure before leaving 2206 } 2207 return retval; 2208 } 2209 // $ANTLR end "registers_directive" 2210 2211 2212 public static class simple_name_return extends ParserRuleReturnScope { 2213 CommonTree tree; 2214 @Override 2215 public CommonTree getTree() { return tree; } 2216 }; 2217 2218 2219 // $ANTLR start "simple_name" 2220 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:552:1: simple_name : ( SIMPLE_NAME | ACCESS_SPEC -> SIMPLE_NAME[$ACCESS_SPEC] | VERIFICATION_ERROR_TYPE -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] | POSITIVE_INTEGER_LITERAL -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] | FLOAT_LITERAL_OR_ID -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] | DOUBLE_LITERAL_OR_ID -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] | BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL] | NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL] | REGISTER -> SIMPLE_NAME[$REGISTER] | PARAM_LIST_OR_ID -> SIMPLE_NAME[$PARAM_LIST_OR_ID] | PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE] | VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE] | ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] | INSTRUCTION_FORMAT10t -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] | INSTRUCTION_FORMAT10x -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] | INSTRUCTION_FORMAT10x_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] | INSTRUCTION_FORMAT11x -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] | INSTRUCTION_FORMAT12x_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] | INSTRUCTION_FORMAT21c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] | INSTRUCTION_FORMAT35c_METHOD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] | INSTRUCTION_FORMAT35c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] | INSTRUCTION_FORMAT35mi_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] | INSTRUCTION_FORMAT35ms_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] | INSTRUCTION_FORMAT51l -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] ); 2221 public final smaliParser.simple_name_return simple_name() throws RecognitionException { 2222 smaliParser.simple_name_return retval = new smaliParser.simple_name_return(); 2223 retval.start = input.LT(1); 2224 2225 CommonTree root_0 = null; 2226 2227 Token SIMPLE_NAME43=null; 2228 Token ACCESS_SPEC44=null; 2229 Token VERIFICATION_ERROR_TYPE45=null; 2230 Token POSITIVE_INTEGER_LITERAL46=null; 2231 Token NEGATIVE_INTEGER_LITERAL47=null; 2232 Token FLOAT_LITERAL_OR_ID48=null; 2233 Token DOUBLE_LITERAL_OR_ID49=null; 2234 Token BOOL_LITERAL50=null; 2235 Token NULL_LITERAL51=null; 2236 Token REGISTER52=null; 2237 Token PARAM_LIST_OR_ID53=null; 2238 Token PRIMITIVE_TYPE54=null; 2239 Token VOID_TYPE55=null; 2240 Token ANNOTATION_VISIBILITY56=null; 2241 Token INSTRUCTION_FORMAT10t57=null; 2242 Token INSTRUCTION_FORMAT10x58=null; 2243 Token INSTRUCTION_FORMAT10x_ODEX59=null; 2244 Token INSTRUCTION_FORMAT11x60=null; 2245 Token INSTRUCTION_FORMAT12x_OR_ID61=null; 2246 Token INSTRUCTION_FORMAT21c_FIELD62=null; 2247 Token INSTRUCTION_FORMAT21c_FIELD_ODEX63=null; 2248 Token INSTRUCTION_FORMAT21c_STRING64=null; 2249 Token INSTRUCTION_FORMAT21c_TYPE65=null; 2250 Token INSTRUCTION_FORMAT21t66=null; 2251 Token INSTRUCTION_FORMAT22c_FIELD67=null; 2252 Token INSTRUCTION_FORMAT22c_FIELD_ODEX68=null; 2253 Token INSTRUCTION_FORMAT22c_TYPE69=null; 2254 Token INSTRUCTION_FORMAT22cs_FIELD70=null; 2255 Token INSTRUCTION_FORMAT22s_OR_ID71=null; 2256 Token INSTRUCTION_FORMAT22t72=null; 2257 Token INSTRUCTION_FORMAT23x73=null; 2258 Token INSTRUCTION_FORMAT31i_OR_ID74=null; 2259 Token INSTRUCTION_FORMAT31t75=null; 2260 Token INSTRUCTION_FORMAT35c_METHOD76=null; 2261 Token INSTRUCTION_FORMAT35c_METHOD_ODEX77=null; 2262 Token INSTRUCTION_FORMAT35c_TYPE78=null; 2263 Token INSTRUCTION_FORMAT35mi_METHOD79=null; 2264 Token INSTRUCTION_FORMAT35ms_METHOD80=null; 2265 Token INSTRUCTION_FORMAT51l81=null; 2266 2267 CommonTree SIMPLE_NAME43_tree=null; 2268 CommonTree ACCESS_SPEC44_tree=null; 2269 CommonTree VERIFICATION_ERROR_TYPE45_tree=null; 2270 CommonTree POSITIVE_INTEGER_LITERAL46_tree=null; 2271 CommonTree NEGATIVE_INTEGER_LITERAL47_tree=null; 2272 CommonTree FLOAT_LITERAL_OR_ID48_tree=null; 2273 CommonTree DOUBLE_LITERAL_OR_ID49_tree=null; 2274 CommonTree BOOL_LITERAL50_tree=null; 2275 CommonTree NULL_LITERAL51_tree=null; 2276 CommonTree REGISTER52_tree=null; 2277 CommonTree PARAM_LIST_OR_ID53_tree=null; 2278 CommonTree PRIMITIVE_TYPE54_tree=null; 2279 CommonTree VOID_TYPE55_tree=null; 2280 CommonTree ANNOTATION_VISIBILITY56_tree=null; 2281 CommonTree INSTRUCTION_FORMAT10t57_tree=null; 2282 CommonTree INSTRUCTION_FORMAT10x58_tree=null; 2283 CommonTree INSTRUCTION_FORMAT10x_ODEX59_tree=null; 2284 CommonTree INSTRUCTION_FORMAT11x60_tree=null; 2285 CommonTree INSTRUCTION_FORMAT12x_OR_ID61_tree=null; 2286 CommonTree INSTRUCTION_FORMAT21c_FIELD62_tree=null; 2287 CommonTree INSTRUCTION_FORMAT21c_FIELD_ODEX63_tree=null; 2288 CommonTree INSTRUCTION_FORMAT21c_STRING64_tree=null; 2289 CommonTree INSTRUCTION_FORMAT21c_TYPE65_tree=null; 2290 CommonTree INSTRUCTION_FORMAT21t66_tree=null; 2291 CommonTree INSTRUCTION_FORMAT22c_FIELD67_tree=null; 2292 CommonTree INSTRUCTION_FORMAT22c_FIELD_ODEX68_tree=null; 2293 CommonTree INSTRUCTION_FORMAT22c_TYPE69_tree=null; 2294 CommonTree INSTRUCTION_FORMAT22cs_FIELD70_tree=null; 2295 CommonTree INSTRUCTION_FORMAT22s_OR_ID71_tree=null; 2296 CommonTree INSTRUCTION_FORMAT22t72_tree=null; 2297 CommonTree INSTRUCTION_FORMAT23x73_tree=null; 2298 CommonTree INSTRUCTION_FORMAT31i_OR_ID74_tree=null; 2299 CommonTree INSTRUCTION_FORMAT31t75_tree=null; 2300 CommonTree INSTRUCTION_FORMAT35c_METHOD76_tree=null; 2301 CommonTree INSTRUCTION_FORMAT35c_METHOD_ODEX77_tree=null; 2302 CommonTree INSTRUCTION_FORMAT35c_TYPE78_tree=null; 2303 CommonTree INSTRUCTION_FORMAT35mi_METHOD79_tree=null; 2304 CommonTree INSTRUCTION_FORMAT35ms_METHOD80_tree=null; 2305 CommonTree INSTRUCTION_FORMAT51l81_tree=null; 2306 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_TYPE"); 2307 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35c_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35c_METHOD"); 2308 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT11x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT11x"); 2309 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21t"); 2310 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35c_TYPE"); 2311 RewriteRuleTokenStream stream_ANNOTATION_VISIBILITY=new RewriteRuleTokenStream(adaptor,"token ANNOTATION_VISIBILITY"); 2312 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT31i_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT31i_OR_ID"); 2313 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22s_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22s_OR_ID"); 2314 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT51l=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT51l"); 2315 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT23x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT23x"); 2316 RewriteRuleTokenStream stream_NULL_LITERAL=new RewriteRuleTokenStream(adaptor,"token NULL_LITERAL"); 2317 RewriteRuleTokenStream stream_BOOL_LITERAL=new RewriteRuleTokenStream(adaptor,"token BOOL_LITERAL"); 2318 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_FIELD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_FIELD"); 2319 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35c_METHOD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35c_METHOD_ODEX"); 2320 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_FIELD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_FIELD"); 2321 RewriteRuleTokenStream stream_ACCESS_SPEC=new RewriteRuleTokenStream(adaptor,"token ACCESS_SPEC"); 2322 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_STRING=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_STRING"); 2323 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT12x_OR_ID=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT12x_OR_ID"); 2324 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35ms_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35ms_METHOD"); 2325 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT35mi_METHOD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT35mi_METHOD"); 2326 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22cs_FIELD=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22cs_FIELD"); 2327 RewriteRuleTokenStream stream_VOID_TYPE=new RewriteRuleTokenStream(adaptor,"token VOID_TYPE"); 2328 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10x=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10x"); 2329 RewriteRuleTokenStream stream_FLOAT_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token FLOAT_LITERAL_OR_ID"); 2330 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22t"); 2331 RewriteRuleTokenStream stream_PRIMITIVE_TYPE=new RewriteRuleTokenStream(adaptor,"token PRIMITIVE_TYPE"); 2332 RewriteRuleTokenStream stream_PARAM_LIST_OR_ID=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST_OR_ID"); 2333 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10x_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10x_ODEX"); 2334 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT31t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT31t"); 2335 RewriteRuleTokenStream stream_DOUBLE_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token DOUBLE_LITERAL_OR_ID"); 2336 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT22c_FIELD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT22c_FIELD_ODEX"); 2337 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT10t=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT10t"); 2338 RewriteRuleTokenStream stream_NEGATIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token NEGATIVE_INTEGER_LITERAL"); 2339 RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); 2340 RewriteRuleTokenStream stream_VERIFICATION_ERROR_TYPE=new RewriteRuleTokenStream(adaptor,"token VERIFICATION_ERROR_TYPE"); 2341 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_TYPE=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_TYPE"); 2342 RewriteRuleTokenStream stream_POSITIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token POSITIVE_INTEGER_LITERAL"); 2343 RewriteRuleTokenStream stream_INSTRUCTION_FORMAT21c_FIELD_ODEX=new RewriteRuleTokenStream(adaptor,"token INSTRUCTION_FORMAT21c_FIELD_ODEX"); 2344 2345 try { 2346 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:553:3: ( SIMPLE_NAME | ACCESS_SPEC -> SIMPLE_NAME[$ACCESS_SPEC] | VERIFICATION_ERROR_TYPE -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] | POSITIVE_INTEGER_LITERAL -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] | FLOAT_LITERAL_OR_ID -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] | DOUBLE_LITERAL_OR_ID -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] | BOOL_LITERAL -> SIMPLE_NAME[$BOOL_LITERAL] | NULL_LITERAL -> SIMPLE_NAME[$NULL_LITERAL] | REGISTER -> SIMPLE_NAME[$REGISTER] | PARAM_LIST_OR_ID -> SIMPLE_NAME[$PARAM_LIST_OR_ID] | PRIMITIVE_TYPE -> SIMPLE_NAME[$PRIMITIVE_TYPE] | VOID_TYPE -> SIMPLE_NAME[$VOID_TYPE] | ANNOTATION_VISIBILITY -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] | INSTRUCTION_FORMAT10t -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] | INSTRUCTION_FORMAT10x -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] | INSTRUCTION_FORMAT10x_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] | INSTRUCTION_FORMAT11x -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] | INSTRUCTION_FORMAT12x_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] | INSTRUCTION_FORMAT21c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] | INSTRUCTION_FORMAT21c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] | INSTRUCTION_FORMAT21c_STRING -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] | INSTRUCTION_FORMAT21c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] | INSTRUCTION_FORMAT21t -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] | INSTRUCTION_FORMAT22c_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] | INSTRUCTION_FORMAT22c_FIELD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] | INSTRUCTION_FORMAT22c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] | INSTRUCTION_FORMAT22cs_FIELD -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] | INSTRUCTION_FORMAT22s_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] | INSTRUCTION_FORMAT22t -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] | INSTRUCTION_FORMAT23x -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] | INSTRUCTION_FORMAT31i_OR_ID -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] | INSTRUCTION_FORMAT31t -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] | INSTRUCTION_FORMAT35c_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] | INSTRUCTION_FORMAT35c_METHOD_ODEX -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] | INSTRUCTION_FORMAT35c_TYPE -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] | INSTRUCTION_FORMAT35mi_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] | INSTRUCTION_FORMAT35ms_METHOD -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] | INSTRUCTION_FORMAT51l -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] ) 2347 int alt9=39; 2348 switch ( input.LA(1) ) { 2349 case SIMPLE_NAME: 2350 { 2351 alt9=1; 2352 } 2353 break; 2354 case ACCESS_SPEC: 2355 { 2356 alt9=2; 2357 } 2358 break; 2359 case VERIFICATION_ERROR_TYPE: 2360 { 2361 alt9=3; 2362 } 2363 break; 2364 case POSITIVE_INTEGER_LITERAL: 2365 { 2366 alt9=4; 2367 } 2368 break; 2369 case NEGATIVE_INTEGER_LITERAL: 2370 { 2371 alt9=5; 2372 } 2373 break; 2374 case FLOAT_LITERAL_OR_ID: 2375 { 2376 alt9=6; 2377 } 2378 break; 2379 case DOUBLE_LITERAL_OR_ID: 2380 { 2381 alt9=7; 2382 } 2383 break; 2384 case BOOL_LITERAL: 2385 { 2386 alt9=8; 2387 } 2388 break; 2389 case NULL_LITERAL: 2390 { 2391 alt9=9; 2392 } 2393 break; 2394 case REGISTER: 2395 { 2396 alt9=10; 2397 } 2398 break; 2399 case PARAM_LIST_OR_ID: 2400 { 2401 alt9=11; 2402 } 2403 break; 2404 case PRIMITIVE_TYPE: 2405 { 2406 alt9=12; 2407 } 2408 break; 2409 case VOID_TYPE: 2410 { 2411 alt9=13; 2412 } 2413 break; 2414 case ANNOTATION_VISIBILITY: 2415 { 2416 alt9=14; 2417 } 2418 break; 2419 case INSTRUCTION_FORMAT10t: 2420 { 2421 alt9=15; 2422 } 2423 break; 2424 case INSTRUCTION_FORMAT10x: 2425 { 2426 alt9=16; 2427 } 2428 break; 2429 case INSTRUCTION_FORMAT10x_ODEX: 2430 { 2431 alt9=17; 2432 } 2433 break; 2434 case INSTRUCTION_FORMAT11x: 2435 { 2436 alt9=18; 2437 } 2438 break; 2439 case INSTRUCTION_FORMAT12x_OR_ID: 2440 { 2441 alt9=19; 2442 } 2443 break; 2444 case INSTRUCTION_FORMAT21c_FIELD: 2445 { 2446 alt9=20; 2447 } 2448 break; 2449 case INSTRUCTION_FORMAT21c_FIELD_ODEX: 2450 { 2451 alt9=21; 2452 } 2453 break; 2454 case INSTRUCTION_FORMAT21c_STRING: 2455 { 2456 alt9=22; 2457 } 2458 break; 2459 case INSTRUCTION_FORMAT21c_TYPE: 2460 { 2461 alt9=23; 2462 } 2463 break; 2464 case INSTRUCTION_FORMAT21t: 2465 { 2466 alt9=24; 2467 } 2468 break; 2469 case INSTRUCTION_FORMAT22c_FIELD: 2470 { 2471 alt9=25; 2472 } 2473 break; 2474 case INSTRUCTION_FORMAT22c_FIELD_ODEX: 2475 { 2476 alt9=26; 2477 } 2478 break; 2479 case INSTRUCTION_FORMAT22c_TYPE: 2480 { 2481 alt9=27; 2482 } 2483 break; 2484 case INSTRUCTION_FORMAT22cs_FIELD: 2485 { 2486 alt9=28; 2487 } 2488 break; 2489 case INSTRUCTION_FORMAT22s_OR_ID: 2490 { 2491 alt9=29; 2492 } 2493 break; 2494 case INSTRUCTION_FORMAT22t: 2495 { 2496 alt9=30; 2497 } 2498 break; 2499 case INSTRUCTION_FORMAT23x: 2500 { 2501 alt9=31; 2502 } 2503 break; 2504 case INSTRUCTION_FORMAT31i_OR_ID: 2505 { 2506 alt9=32; 2507 } 2508 break; 2509 case INSTRUCTION_FORMAT31t: 2510 { 2511 alt9=33; 2512 } 2513 break; 2514 case INSTRUCTION_FORMAT35c_METHOD: 2515 { 2516 alt9=34; 2517 } 2518 break; 2519 case INSTRUCTION_FORMAT35c_METHOD_ODEX: 2520 { 2521 alt9=35; 2522 } 2523 break; 2524 case INSTRUCTION_FORMAT35c_TYPE: 2525 { 2526 alt9=36; 2527 } 2528 break; 2529 case INSTRUCTION_FORMAT35mi_METHOD: 2530 { 2531 alt9=37; 2532 } 2533 break; 2534 case INSTRUCTION_FORMAT35ms_METHOD: 2535 { 2536 alt9=38; 2537 } 2538 break; 2539 case INSTRUCTION_FORMAT51l: 2540 { 2541 alt9=39; 2542 } 2543 break; 2544 default: 2545 NoViableAltException nvae = 2546 new NoViableAltException("", 9, 0, input); 2547 throw nvae; 2548 } 2549 switch (alt9) { 2550 case 1 : 2551 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:553:5: SIMPLE_NAME 2552 { 2553 root_0 = (CommonTree)adaptor.nil(); 2554 2555 2556 SIMPLE_NAME43=(Token)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_simple_name1836); 2557 SIMPLE_NAME43_tree = (CommonTree)adaptor.create(SIMPLE_NAME43); 2558 adaptor.addChild(root_0, SIMPLE_NAME43_tree); 2559 2560 } 2561 break; 2562 case 2 : 2563 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:554:5: ACCESS_SPEC 2564 { 2565 ACCESS_SPEC44=(Token)match(input,ACCESS_SPEC,FOLLOW_ACCESS_SPEC_in_simple_name1842); 2566 stream_ACCESS_SPEC.add(ACCESS_SPEC44); 2567 2568 // AST REWRITE 2569 // elements: 2570 // token labels: 2571 // rule labels: retval 2572 // token list labels: 2573 // rule list labels: 2574 // wildcard labels: 2575 retval.tree = root_0; 2576 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2577 2578 root_0 = (CommonTree)adaptor.nil(); 2579 // 554:17: -> SIMPLE_NAME[$ACCESS_SPEC] 2580 { 2581 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, ACCESS_SPEC44)); 2582 } 2583 2584 2585 retval.tree = root_0; 2586 2587 } 2588 break; 2589 case 3 : 2590 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:555:5: VERIFICATION_ERROR_TYPE 2591 { 2592 VERIFICATION_ERROR_TYPE45=(Token)match(input,VERIFICATION_ERROR_TYPE,FOLLOW_VERIFICATION_ERROR_TYPE_in_simple_name1853); 2593 stream_VERIFICATION_ERROR_TYPE.add(VERIFICATION_ERROR_TYPE45); 2594 2595 // AST REWRITE 2596 // elements: 2597 // token labels: 2598 // rule labels: retval 2599 // token list labels: 2600 // rule list labels: 2601 // wildcard labels: 2602 retval.tree = root_0; 2603 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2604 2605 root_0 = (CommonTree)adaptor.nil(); 2606 // 555:29: -> SIMPLE_NAME[$VERIFICATION_ERROR_TYPE] 2607 { 2608 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, VERIFICATION_ERROR_TYPE45)); 2609 } 2610 2611 2612 retval.tree = root_0; 2613 2614 } 2615 break; 2616 case 4 : 2617 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:556:5: POSITIVE_INTEGER_LITERAL 2618 { 2619 POSITIVE_INTEGER_LITERAL46=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_simple_name1864); 2620 stream_POSITIVE_INTEGER_LITERAL.add(POSITIVE_INTEGER_LITERAL46); 2621 2622 // AST REWRITE 2623 // elements: 2624 // token labels: 2625 // rule labels: retval 2626 // token list labels: 2627 // rule list labels: 2628 // wildcard labels: 2629 retval.tree = root_0; 2630 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2631 2632 root_0 = (CommonTree)adaptor.nil(); 2633 // 556:30: -> SIMPLE_NAME[$POSITIVE_INTEGER_LITERAL] 2634 { 2635 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, POSITIVE_INTEGER_LITERAL46)); 2636 } 2637 2638 2639 retval.tree = root_0; 2640 2641 } 2642 break; 2643 case 5 : 2644 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:557:5: NEGATIVE_INTEGER_LITERAL 2645 { 2646 NEGATIVE_INTEGER_LITERAL47=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_simple_name1875); 2647 stream_NEGATIVE_INTEGER_LITERAL.add(NEGATIVE_INTEGER_LITERAL47); 2648 2649 // AST REWRITE 2650 // elements: 2651 // token labels: 2652 // rule labels: retval 2653 // token list labels: 2654 // rule list labels: 2655 // wildcard labels: 2656 retval.tree = root_0; 2657 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2658 2659 root_0 = (CommonTree)adaptor.nil(); 2660 // 557:30: -> SIMPLE_NAME[$NEGATIVE_INTEGER_LITERAL] 2661 { 2662 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, NEGATIVE_INTEGER_LITERAL47)); 2663 } 2664 2665 2666 retval.tree = root_0; 2667 2668 } 2669 break; 2670 case 6 : 2671 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:558:5: FLOAT_LITERAL_OR_ID 2672 { 2673 FLOAT_LITERAL_OR_ID48=(Token)match(input,FLOAT_LITERAL_OR_ID,FOLLOW_FLOAT_LITERAL_OR_ID_in_simple_name1886); 2674 stream_FLOAT_LITERAL_OR_ID.add(FLOAT_LITERAL_OR_ID48); 2675 2676 // AST REWRITE 2677 // elements: 2678 // token labels: 2679 // rule labels: retval 2680 // token list labels: 2681 // rule list labels: 2682 // wildcard labels: 2683 retval.tree = root_0; 2684 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2685 2686 root_0 = (CommonTree)adaptor.nil(); 2687 // 558:25: -> SIMPLE_NAME[$FLOAT_LITERAL_OR_ID] 2688 { 2689 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, FLOAT_LITERAL_OR_ID48)); 2690 } 2691 2692 2693 retval.tree = root_0; 2694 2695 } 2696 break; 2697 case 7 : 2698 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:559:5: DOUBLE_LITERAL_OR_ID 2699 { 2700 DOUBLE_LITERAL_OR_ID49=(Token)match(input,DOUBLE_LITERAL_OR_ID,FOLLOW_DOUBLE_LITERAL_OR_ID_in_simple_name1897); 2701 stream_DOUBLE_LITERAL_OR_ID.add(DOUBLE_LITERAL_OR_ID49); 2702 2703 // AST REWRITE 2704 // elements: 2705 // token labels: 2706 // rule labels: retval 2707 // token list labels: 2708 // rule list labels: 2709 // wildcard labels: 2710 retval.tree = root_0; 2711 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2712 2713 root_0 = (CommonTree)adaptor.nil(); 2714 // 559:26: -> SIMPLE_NAME[$DOUBLE_LITERAL_OR_ID] 2715 { 2716 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, DOUBLE_LITERAL_OR_ID49)); 2717 } 2718 2719 2720 retval.tree = root_0; 2721 2722 } 2723 break; 2724 case 8 : 2725 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:560:5: BOOL_LITERAL 2726 { 2727 BOOL_LITERAL50=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_simple_name1908); 2728 stream_BOOL_LITERAL.add(BOOL_LITERAL50); 2729 2730 // AST REWRITE 2731 // elements: 2732 // token labels: 2733 // rule labels: retval 2734 // token list labels: 2735 // rule list labels: 2736 // wildcard labels: 2737 retval.tree = root_0; 2738 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2739 2740 root_0 = (CommonTree)adaptor.nil(); 2741 // 560:18: -> SIMPLE_NAME[$BOOL_LITERAL] 2742 { 2743 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, BOOL_LITERAL50)); 2744 } 2745 2746 2747 retval.tree = root_0; 2748 2749 } 2750 break; 2751 case 9 : 2752 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:561:5: NULL_LITERAL 2753 { 2754 NULL_LITERAL51=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_simple_name1919); 2755 stream_NULL_LITERAL.add(NULL_LITERAL51); 2756 2757 // AST REWRITE 2758 // elements: 2759 // token labels: 2760 // rule labels: retval 2761 // token list labels: 2762 // rule list labels: 2763 // wildcard labels: 2764 retval.tree = root_0; 2765 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2766 2767 root_0 = (CommonTree)adaptor.nil(); 2768 // 561:18: -> SIMPLE_NAME[$NULL_LITERAL] 2769 { 2770 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, NULL_LITERAL51)); 2771 } 2772 2773 2774 retval.tree = root_0; 2775 2776 } 2777 break; 2778 case 10 : 2779 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:562:5: REGISTER 2780 { 2781 REGISTER52=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_simple_name1930); 2782 stream_REGISTER.add(REGISTER52); 2783 2784 // AST REWRITE 2785 // elements: 2786 // token labels: 2787 // rule labels: retval 2788 // token list labels: 2789 // rule list labels: 2790 // wildcard labels: 2791 retval.tree = root_0; 2792 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2793 2794 root_0 = (CommonTree)adaptor.nil(); 2795 // 562:14: -> SIMPLE_NAME[$REGISTER] 2796 { 2797 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, REGISTER52)); 2798 } 2799 2800 2801 retval.tree = root_0; 2802 2803 } 2804 break; 2805 case 11 : 2806 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:563:5: PARAM_LIST_OR_ID 2807 { 2808 PARAM_LIST_OR_ID53=(Token)match(input,PARAM_LIST_OR_ID,FOLLOW_PARAM_LIST_OR_ID_in_simple_name1941); 2809 stream_PARAM_LIST_OR_ID.add(PARAM_LIST_OR_ID53); 2810 2811 // AST REWRITE 2812 // elements: 2813 // token labels: 2814 // rule labels: retval 2815 // token list labels: 2816 // rule list labels: 2817 // wildcard labels: 2818 retval.tree = root_0; 2819 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2820 2821 root_0 = (CommonTree)adaptor.nil(); 2822 // 563:22: -> SIMPLE_NAME[$PARAM_LIST_OR_ID] 2823 { 2824 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, PARAM_LIST_OR_ID53)); 2825 } 2826 2827 2828 retval.tree = root_0; 2829 2830 } 2831 break; 2832 case 12 : 2833 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:564:5: PRIMITIVE_TYPE 2834 { 2835 PRIMITIVE_TYPE54=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_simple_name1952); 2836 stream_PRIMITIVE_TYPE.add(PRIMITIVE_TYPE54); 2837 2838 // AST REWRITE 2839 // elements: 2840 // token labels: 2841 // rule labels: retval 2842 // token list labels: 2843 // rule list labels: 2844 // wildcard labels: 2845 retval.tree = root_0; 2846 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2847 2848 root_0 = (CommonTree)adaptor.nil(); 2849 // 564:20: -> SIMPLE_NAME[$PRIMITIVE_TYPE] 2850 { 2851 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, PRIMITIVE_TYPE54)); 2852 } 2853 2854 2855 retval.tree = root_0; 2856 2857 } 2858 break; 2859 case 13 : 2860 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:565:5: VOID_TYPE 2861 { 2862 VOID_TYPE55=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_simple_name1963); 2863 stream_VOID_TYPE.add(VOID_TYPE55); 2864 2865 // AST REWRITE 2866 // elements: 2867 // token labels: 2868 // rule labels: retval 2869 // token list labels: 2870 // rule list labels: 2871 // wildcard labels: 2872 retval.tree = root_0; 2873 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2874 2875 root_0 = (CommonTree)adaptor.nil(); 2876 // 565:15: -> SIMPLE_NAME[$VOID_TYPE] 2877 { 2878 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, VOID_TYPE55)); 2879 } 2880 2881 2882 retval.tree = root_0; 2883 2884 } 2885 break; 2886 case 14 : 2887 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:566:5: ANNOTATION_VISIBILITY 2888 { 2889 ANNOTATION_VISIBILITY56=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_simple_name1974); 2890 stream_ANNOTATION_VISIBILITY.add(ANNOTATION_VISIBILITY56); 2891 2892 // AST REWRITE 2893 // elements: 2894 // token labels: 2895 // rule labels: retval 2896 // token list labels: 2897 // rule list labels: 2898 // wildcard labels: 2899 retval.tree = root_0; 2900 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2901 2902 root_0 = (CommonTree)adaptor.nil(); 2903 // 566:27: -> SIMPLE_NAME[$ANNOTATION_VISIBILITY] 2904 { 2905 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, ANNOTATION_VISIBILITY56)); 2906 } 2907 2908 2909 retval.tree = root_0; 2910 2911 } 2912 break; 2913 case 15 : 2914 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:567:5: INSTRUCTION_FORMAT10t 2915 { 2916 INSTRUCTION_FORMAT10t57=(Token)match(input,INSTRUCTION_FORMAT10t,FOLLOW_INSTRUCTION_FORMAT10t_in_simple_name1985); 2917 stream_INSTRUCTION_FORMAT10t.add(INSTRUCTION_FORMAT10t57); 2918 2919 // AST REWRITE 2920 // elements: 2921 // token labels: 2922 // rule labels: retval 2923 // token list labels: 2924 // rule list labels: 2925 // wildcard labels: 2926 retval.tree = root_0; 2927 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2928 2929 root_0 = (CommonTree)adaptor.nil(); 2930 // 567:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10t] 2931 { 2932 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10t57)); 2933 } 2934 2935 2936 retval.tree = root_0; 2937 2938 } 2939 break; 2940 case 16 : 2941 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:568:5: INSTRUCTION_FORMAT10x 2942 { 2943 INSTRUCTION_FORMAT10x58=(Token)match(input,INSTRUCTION_FORMAT10x,FOLLOW_INSTRUCTION_FORMAT10x_in_simple_name1996); 2944 stream_INSTRUCTION_FORMAT10x.add(INSTRUCTION_FORMAT10x58); 2945 2946 // AST REWRITE 2947 // elements: 2948 // token labels: 2949 // rule labels: retval 2950 // token list labels: 2951 // rule list labels: 2952 // wildcard labels: 2953 retval.tree = root_0; 2954 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2955 2956 root_0 = (CommonTree)adaptor.nil(); 2957 // 568:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x] 2958 { 2959 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10x58)); 2960 } 2961 2962 2963 retval.tree = root_0; 2964 2965 } 2966 break; 2967 case 17 : 2968 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:569:5: INSTRUCTION_FORMAT10x_ODEX 2969 { 2970 INSTRUCTION_FORMAT10x_ODEX59=(Token)match(input,INSTRUCTION_FORMAT10x_ODEX,FOLLOW_INSTRUCTION_FORMAT10x_ODEX_in_simple_name2007); 2971 stream_INSTRUCTION_FORMAT10x_ODEX.add(INSTRUCTION_FORMAT10x_ODEX59); 2972 2973 // AST REWRITE 2974 // elements: 2975 // token labels: 2976 // rule labels: retval 2977 // token list labels: 2978 // rule list labels: 2979 // wildcard labels: 2980 retval.tree = root_0; 2981 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 2982 2983 root_0 = (CommonTree)adaptor.nil(); 2984 // 569:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT10x_ODEX] 2985 { 2986 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT10x_ODEX59)); 2987 } 2988 2989 2990 retval.tree = root_0; 2991 2992 } 2993 break; 2994 case 18 : 2995 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:570:5: INSTRUCTION_FORMAT11x 2996 { 2997 INSTRUCTION_FORMAT11x60=(Token)match(input,INSTRUCTION_FORMAT11x,FOLLOW_INSTRUCTION_FORMAT11x_in_simple_name2018); 2998 stream_INSTRUCTION_FORMAT11x.add(INSTRUCTION_FORMAT11x60); 2999 3000 // AST REWRITE 3001 // elements: 3002 // token labels: 3003 // rule labels: retval 3004 // token list labels: 3005 // rule list labels: 3006 // wildcard labels: 3007 retval.tree = root_0; 3008 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3009 3010 root_0 = (CommonTree)adaptor.nil(); 3011 // 570:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT11x] 3012 { 3013 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT11x60)); 3014 } 3015 3016 3017 retval.tree = root_0; 3018 3019 } 3020 break; 3021 case 19 : 3022 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:571:5: INSTRUCTION_FORMAT12x_OR_ID 3023 { 3024 INSTRUCTION_FORMAT12x_OR_ID61=(Token)match(input,INSTRUCTION_FORMAT12x_OR_ID,FOLLOW_INSTRUCTION_FORMAT12x_OR_ID_in_simple_name2029); 3025 stream_INSTRUCTION_FORMAT12x_OR_ID.add(INSTRUCTION_FORMAT12x_OR_ID61); 3026 3027 // AST REWRITE 3028 // elements: 3029 // token labels: 3030 // rule labels: retval 3031 // token list labels: 3032 // rule list labels: 3033 // wildcard labels: 3034 retval.tree = root_0; 3035 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3036 3037 root_0 = (CommonTree)adaptor.nil(); 3038 // 571:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT12x_OR_ID] 3039 { 3040 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT12x_OR_ID61)); 3041 } 3042 3043 3044 retval.tree = root_0; 3045 3046 } 3047 break; 3048 case 20 : 3049 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:572:5: INSTRUCTION_FORMAT21c_FIELD 3050 { 3051 INSTRUCTION_FORMAT21c_FIELD62=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_in_simple_name2040); 3052 stream_INSTRUCTION_FORMAT21c_FIELD.add(INSTRUCTION_FORMAT21c_FIELD62); 3053 3054 // AST REWRITE 3055 // elements: 3056 // token labels: 3057 // rule labels: retval 3058 // token list labels: 3059 // rule list labels: 3060 // wildcard labels: 3061 retval.tree = root_0; 3062 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3063 3064 root_0 = (CommonTree)adaptor.nil(); 3065 // 572:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD] 3066 { 3067 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_FIELD62)); 3068 } 3069 3070 3071 retval.tree = root_0; 3072 3073 } 3074 break; 3075 case 21 : 3076 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:573:5: INSTRUCTION_FORMAT21c_FIELD_ODEX 3077 { 3078 INSTRUCTION_FORMAT21c_FIELD_ODEX63=(Token)match(input,INSTRUCTION_FORMAT21c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT21c_FIELD_ODEX_in_simple_name2051); 3079 stream_INSTRUCTION_FORMAT21c_FIELD_ODEX.add(INSTRUCTION_FORMAT21c_FIELD_ODEX63); 3080 3081 // AST REWRITE 3082 // elements: 3083 // token labels: 3084 // rule labels: retval 3085 // token list labels: 3086 // rule list labels: 3087 // wildcard labels: 3088 retval.tree = root_0; 3089 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3090 3091 root_0 = (CommonTree)adaptor.nil(); 3092 // 573:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_FIELD_ODEX] 3093 { 3094 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_FIELD_ODEX63)); 3095 } 3096 3097 3098 retval.tree = root_0; 3099 3100 } 3101 break; 3102 case 22 : 3103 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:574:5: INSTRUCTION_FORMAT21c_STRING 3104 { 3105 INSTRUCTION_FORMAT21c_STRING64=(Token)match(input,INSTRUCTION_FORMAT21c_STRING,FOLLOW_INSTRUCTION_FORMAT21c_STRING_in_simple_name2062); 3106 stream_INSTRUCTION_FORMAT21c_STRING.add(INSTRUCTION_FORMAT21c_STRING64); 3107 3108 // AST REWRITE 3109 // elements: 3110 // token labels: 3111 // rule labels: retval 3112 // token list labels: 3113 // rule list labels: 3114 // wildcard labels: 3115 retval.tree = root_0; 3116 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3117 3118 root_0 = (CommonTree)adaptor.nil(); 3119 // 574:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_STRING] 3120 { 3121 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_STRING64)); 3122 } 3123 3124 3125 retval.tree = root_0; 3126 3127 } 3128 break; 3129 case 23 : 3130 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:575:5: INSTRUCTION_FORMAT21c_TYPE 3131 { 3132 INSTRUCTION_FORMAT21c_TYPE65=(Token)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_simple_name2073); 3133 stream_INSTRUCTION_FORMAT21c_TYPE.add(INSTRUCTION_FORMAT21c_TYPE65); 3134 3135 // AST REWRITE 3136 // elements: 3137 // token labels: 3138 // rule labels: retval 3139 // token list labels: 3140 // rule list labels: 3141 // wildcard labels: 3142 retval.tree = root_0; 3143 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3144 3145 root_0 = (CommonTree)adaptor.nil(); 3146 // 575:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21c_TYPE] 3147 { 3148 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21c_TYPE65)); 3149 } 3150 3151 3152 retval.tree = root_0; 3153 3154 } 3155 break; 3156 case 24 : 3157 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:576:5: INSTRUCTION_FORMAT21t 3158 { 3159 INSTRUCTION_FORMAT21t66=(Token)match(input,INSTRUCTION_FORMAT21t,FOLLOW_INSTRUCTION_FORMAT21t_in_simple_name2084); 3160 stream_INSTRUCTION_FORMAT21t.add(INSTRUCTION_FORMAT21t66); 3161 3162 // AST REWRITE 3163 // elements: 3164 // token labels: 3165 // rule labels: retval 3166 // token list labels: 3167 // rule list labels: 3168 // wildcard labels: 3169 retval.tree = root_0; 3170 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3171 3172 root_0 = (CommonTree)adaptor.nil(); 3173 // 576:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT21t] 3174 { 3175 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT21t66)); 3176 } 3177 3178 3179 retval.tree = root_0; 3180 3181 } 3182 break; 3183 case 25 : 3184 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:577:5: INSTRUCTION_FORMAT22c_FIELD 3185 { 3186 INSTRUCTION_FORMAT22c_FIELD67=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_in_simple_name2095); 3187 stream_INSTRUCTION_FORMAT22c_FIELD.add(INSTRUCTION_FORMAT22c_FIELD67); 3188 3189 // AST REWRITE 3190 // elements: 3191 // token labels: 3192 // rule labels: retval 3193 // token list labels: 3194 // rule list labels: 3195 // wildcard labels: 3196 retval.tree = root_0; 3197 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3198 3199 root_0 = (CommonTree)adaptor.nil(); 3200 // 577:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD] 3201 { 3202 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD67)); 3203 } 3204 3205 3206 retval.tree = root_0; 3207 3208 } 3209 break; 3210 case 26 : 3211 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:578:5: INSTRUCTION_FORMAT22c_FIELD_ODEX 3212 { 3213 INSTRUCTION_FORMAT22c_FIELD_ODEX68=(Token)match(input,INSTRUCTION_FORMAT22c_FIELD_ODEX,FOLLOW_INSTRUCTION_FORMAT22c_FIELD_ODEX_in_simple_name2106); 3214 stream_INSTRUCTION_FORMAT22c_FIELD_ODEX.add(INSTRUCTION_FORMAT22c_FIELD_ODEX68); 3215 3216 // AST REWRITE 3217 // elements: 3218 // token labels: 3219 // rule labels: retval 3220 // token list labels: 3221 // rule list labels: 3222 // wildcard labels: 3223 retval.tree = root_0; 3224 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3225 3226 root_0 = (CommonTree)adaptor.nil(); 3227 // 578:38: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_FIELD_ODEX] 3228 { 3229 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_FIELD_ODEX68)); 3230 } 3231 3232 3233 retval.tree = root_0; 3234 3235 } 3236 break; 3237 case 27 : 3238 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:579:5: INSTRUCTION_FORMAT22c_TYPE 3239 { 3240 INSTRUCTION_FORMAT22c_TYPE69=(Token)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_simple_name2117); 3241 stream_INSTRUCTION_FORMAT22c_TYPE.add(INSTRUCTION_FORMAT22c_TYPE69); 3242 3243 // AST REWRITE 3244 // elements: 3245 // token labels: 3246 // rule labels: retval 3247 // token list labels: 3248 // rule list labels: 3249 // wildcard labels: 3250 retval.tree = root_0; 3251 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3252 3253 root_0 = (CommonTree)adaptor.nil(); 3254 // 579:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22c_TYPE] 3255 { 3256 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22c_TYPE69)); 3257 } 3258 3259 3260 retval.tree = root_0; 3261 3262 } 3263 break; 3264 case 28 : 3265 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:580:5: INSTRUCTION_FORMAT22cs_FIELD 3266 { 3267 INSTRUCTION_FORMAT22cs_FIELD70=(Token)match(input,INSTRUCTION_FORMAT22cs_FIELD,FOLLOW_INSTRUCTION_FORMAT22cs_FIELD_in_simple_name2128); 3268 stream_INSTRUCTION_FORMAT22cs_FIELD.add(INSTRUCTION_FORMAT22cs_FIELD70); 3269 3270 // AST REWRITE 3271 // elements: 3272 // token labels: 3273 // rule labels: retval 3274 // token list labels: 3275 // rule list labels: 3276 // wildcard labels: 3277 retval.tree = root_0; 3278 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3279 3280 root_0 = (CommonTree)adaptor.nil(); 3281 // 580:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22cs_FIELD] 3282 { 3283 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22cs_FIELD70)); 3284 } 3285 3286 3287 retval.tree = root_0; 3288 3289 } 3290 break; 3291 case 29 : 3292 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:581:5: INSTRUCTION_FORMAT22s_OR_ID 3293 { 3294 INSTRUCTION_FORMAT22s_OR_ID71=(Token)match(input,INSTRUCTION_FORMAT22s_OR_ID,FOLLOW_INSTRUCTION_FORMAT22s_OR_ID_in_simple_name2139); 3295 stream_INSTRUCTION_FORMAT22s_OR_ID.add(INSTRUCTION_FORMAT22s_OR_ID71); 3296 3297 // AST REWRITE 3298 // elements: 3299 // token labels: 3300 // rule labels: retval 3301 // token list labels: 3302 // rule list labels: 3303 // wildcard labels: 3304 retval.tree = root_0; 3305 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3306 3307 root_0 = (CommonTree)adaptor.nil(); 3308 // 581:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22s_OR_ID] 3309 { 3310 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22s_OR_ID71)); 3311 } 3312 3313 3314 retval.tree = root_0; 3315 3316 } 3317 break; 3318 case 30 : 3319 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:582:5: INSTRUCTION_FORMAT22t 3320 { 3321 INSTRUCTION_FORMAT22t72=(Token)match(input,INSTRUCTION_FORMAT22t,FOLLOW_INSTRUCTION_FORMAT22t_in_simple_name2150); 3322 stream_INSTRUCTION_FORMAT22t.add(INSTRUCTION_FORMAT22t72); 3323 3324 // AST REWRITE 3325 // elements: 3326 // token labels: 3327 // rule labels: retval 3328 // token list labels: 3329 // rule list labels: 3330 // wildcard labels: 3331 retval.tree = root_0; 3332 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3333 3334 root_0 = (CommonTree)adaptor.nil(); 3335 // 582:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT22t] 3336 { 3337 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT22t72)); 3338 } 3339 3340 3341 retval.tree = root_0; 3342 3343 } 3344 break; 3345 case 31 : 3346 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:583:5: INSTRUCTION_FORMAT23x 3347 { 3348 INSTRUCTION_FORMAT23x73=(Token)match(input,INSTRUCTION_FORMAT23x,FOLLOW_INSTRUCTION_FORMAT23x_in_simple_name2161); 3349 stream_INSTRUCTION_FORMAT23x.add(INSTRUCTION_FORMAT23x73); 3350 3351 // AST REWRITE 3352 // elements: 3353 // token labels: 3354 // rule labels: retval 3355 // token list labels: 3356 // rule list labels: 3357 // wildcard labels: 3358 retval.tree = root_0; 3359 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3360 3361 root_0 = (CommonTree)adaptor.nil(); 3362 // 583:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT23x] 3363 { 3364 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT23x73)); 3365 } 3366 3367 3368 retval.tree = root_0; 3369 3370 } 3371 break; 3372 case 32 : 3373 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:584:5: INSTRUCTION_FORMAT31i_OR_ID 3374 { 3375 INSTRUCTION_FORMAT31i_OR_ID74=(Token)match(input,INSTRUCTION_FORMAT31i_OR_ID,FOLLOW_INSTRUCTION_FORMAT31i_OR_ID_in_simple_name2172); 3376 stream_INSTRUCTION_FORMAT31i_OR_ID.add(INSTRUCTION_FORMAT31i_OR_ID74); 3377 3378 // AST REWRITE 3379 // elements: 3380 // token labels: 3381 // rule labels: retval 3382 // token list labels: 3383 // rule list labels: 3384 // wildcard labels: 3385 retval.tree = root_0; 3386 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3387 3388 root_0 = (CommonTree)adaptor.nil(); 3389 // 584:33: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31i_OR_ID] 3390 { 3391 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31i_OR_ID74)); 3392 } 3393 3394 3395 retval.tree = root_0; 3396 3397 } 3398 break; 3399 case 33 : 3400 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:585:5: INSTRUCTION_FORMAT31t 3401 { 3402 INSTRUCTION_FORMAT31t75=(Token)match(input,INSTRUCTION_FORMAT31t,FOLLOW_INSTRUCTION_FORMAT31t_in_simple_name2183); 3403 stream_INSTRUCTION_FORMAT31t.add(INSTRUCTION_FORMAT31t75); 3404 3405 // AST REWRITE 3406 // elements: 3407 // token labels: 3408 // rule labels: retval 3409 // token list labels: 3410 // rule list labels: 3411 // wildcard labels: 3412 retval.tree = root_0; 3413 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3414 3415 root_0 = (CommonTree)adaptor.nil(); 3416 // 585:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT31t] 3417 { 3418 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT31t75)); 3419 } 3420 3421 3422 retval.tree = root_0; 3423 3424 } 3425 break; 3426 case 34 : 3427 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:586:5: INSTRUCTION_FORMAT35c_METHOD 3428 { 3429 INSTRUCTION_FORMAT35c_METHOD76=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_simple_name2194); 3430 stream_INSTRUCTION_FORMAT35c_METHOD.add(INSTRUCTION_FORMAT35c_METHOD76); 3431 3432 // AST REWRITE 3433 // elements: 3434 // token labels: 3435 // rule labels: retval 3436 // token list labels: 3437 // rule list labels: 3438 // wildcard labels: 3439 retval.tree = root_0; 3440 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3441 3442 root_0 = (CommonTree)adaptor.nil(); 3443 // 586:34: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD] 3444 { 3445 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD76)); 3446 } 3447 3448 3449 retval.tree = root_0; 3450 3451 } 3452 break; 3453 case 35 : 3454 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:587:5: INSTRUCTION_FORMAT35c_METHOD_ODEX 3455 { 3456 INSTRUCTION_FORMAT35c_METHOD_ODEX77=(Token)match(input,INSTRUCTION_FORMAT35c_METHOD_ODEX,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_ODEX_in_simple_name2205); 3457 stream_INSTRUCTION_FORMAT35c_METHOD_ODEX.add(INSTRUCTION_FORMAT35c_METHOD_ODEX77); 3458 3459 // AST REWRITE 3460 // elements: 3461 // token labels: 3462 // rule labels: retval 3463 // token list labels: 3464 // rule list labels: 3465 // wildcard labels: 3466 retval.tree = root_0; 3467 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3468 3469 root_0 = (CommonTree)adaptor.nil(); 3470 // 587:39: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_METHOD_ODEX] 3471 { 3472 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_METHOD_ODEX77)); 3473 } 3474 3475 3476 retval.tree = root_0; 3477 3478 } 3479 break; 3480 case 36 : 3481 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:588:5: INSTRUCTION_FORMAT35c_TYPE 3482 { 3483 INSTRUCTION_FORMAT35c_TYPE78=(Token)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_simple_name2216); 3484 stream_INSTRUCTION_FORMAT35c_TYPE.add(INSTRUCTION_FORMAT35c_TYPE78); 3485 3486 // AST REWRITE 3487 // elements: 3488 // token labels: 3489 // rule labels: retval 3490 // token list labels: 3491 // rule list labels: 3492 // wildcard labels: 3493 retval.tree = root_0; 3494 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3495 3496 root_0 = (CommonTree)adaptor.nil(); 3497 // 588:32: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35c_TYPE] 3498 { 3499 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35c_TYPE78)); 3500 } 3501 3502 3503 retval.tree = root_0; 3504 3505 } 3506 break; 3507 case 37 : 3508 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:589:5: INSTRUCTION_FORMAT35mi_METHOD 3509 { 3510 INSTRUCTION_FORMAT35mi_METHOD79=(Token)match(input,INSTRUCTION_FORMAT35mi_METHOD,FOLLOW_INSTRUCTION_FORMAT35mi_METHOD_in_simple_name2227); 3511 stream_INSTRUCTION_FORMAT35mi_METHOD.add(INSTRUCTION_FORMAT35mi_METHOD79); 3512 3513 // AST REWRITE 3514 // elements: 3515 // token labels: 3516 // rule labels: retval 3517 // token list labels: 3518 // rule list labels: 3519 // wildcard labels: 3520 retval.tree = root_0; 3521 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3522 3523 root_0 = (CommonTree)adaptor.nil(); 3524 // 589:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35mi_METHOD] 3525 { 3526 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35mi_METHOD79)); 3527 } 3528 3529 3530 retval.tree = root_0; 3531 3532 } 3533 break; 3534 case 38 : 3535 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:590:5: INSTRUCTION_FORMAT35ms_METHOD 3536 { 3537 INSTRUCTION_FORMAT35ms_METHOD80=(Token)match(input,INSTRUCTION_FORMAT35ms_METHOD,FOLLOW_INSTRUCTION_FORMAT35ms_METHOD_in_simple_name2238); 3538 stream_INSTRUCTION_FORMAT35ms_METHOD.add(INSTRUCTION_FORMAT35ms_METHOD80); 3539 3540 // AST REWRITE 3541 // elements: 3542 // token labels: 3543 // rule labels: retval 3544 // token list labels: 3545 // rule list labels: 3546 // wildcard labels: 3547 retval.tree = root_0; 3548 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3549 3550 root_0 = (CommonTree)adaptor.nil(); 3551 // 590:35: -> SIMPLE_NAME[$INSTRUCTION_FORMAT35ms_METHOD] 3552 { 3553 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT35ms_METHOD80)); 3554 } 3555 3556 3557 retval.tree = root_0; 3558 3559 } 3560 break; 3561 case 39 : 3562 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:591:5: INSTRUCTION_FORMAT51l 3563 { 3564 INSTRUCTION_FORMAT51l81=(Token)match(input,INSTRUCTION_FORMAT51l,FOLLOW_INSTRUCTION_FORMAT51l_in_simple_name2249); 3565 stream_INSTRUCTION_FORMAT51l.add(INSTRUCTION_FORMAT51l81); 3566 3567 // AST REWRITE 3568 // elements: 3569 // token labels: 3570 // rule labels: retval 3571 // token list labels: 3572 // rule list labels: 3573 // wildcard labels: 3574 retval.tree = root_0; 3575 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3576 3577 root_0 = (CommonTree)adaptor.nil(); 3578 // 591:27: -> SIMPLE_NAME[$INSTRUCTION_FORMAT51l] 3579 { 3580 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, INSTRUCTION_FORMAT51l81)); 3581 } 3582 3583 3584 retval.tree = root_0; 3585 3586 } 3587 break; 3588 3589 } 3590 retval.stop = input.LT(-1); 3591 3592 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 3593 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 3594 3595 } 3596 catch (RecognitionException re) { 3597 reportError(re); 3598 recover(input,re); 3599 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 3600 } 3601 finally { 3602 // do for sure before leaving 3603 } 3604 return retval; 3605 } 3606 // $ANTLR end "simple_name" 3607 3608 3609 public static class member_name_return extends ParserRuleReturnScope { 3610 CommonTree tree; 3611 @Override 3612 public CommonTree getTree() { return tree; } 3613 }; 3614 3615 3616 // $ANTLR start "member_name" 3617 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:593:1: member_name : ( simple_name | MEMBER_NAME -> SIMPLE_NAME[$MEMBER_NAME] ); 3618 public final smaliParser.member_name_return member_name() throws RecognitionException { 3619 smaliParser.member_name_return retval = new smaliParser.member_name_return(); 3620 retval.start = input.LT(1); 3621 3622 CommonTree root_0 = null; 3623 3624 Token MEMBER_NAME83=null; 3625 ParserRuleReturnScope simple_name82 =null; 3626 3627 CommonTree MEMBER_NAME83_tree=null; 3628 RewriteRuleTokenStream stream_MEMBER_NAME=new RewriteRuleTokenStream(adaptor,"token MEMBER_NAME"); 3629 3630 try { 3631 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:594:3: ( simple_name | MEMBER_NAME -> SIMPLE_NAME[$MEMBER_NAME] ) 3632 int alt10=2; 3633 int LA10_0 = input.LA(1); 3634 if ( (LA10_0==ACCESS_SPEC||LA10_0==ANNOTATION_VISIBILITY||LA10_0==BOOL_LITERAL||LA10_0==DOUBLE_LITERAL_OR_ID||LA10_0==FLOAT_LITERAL_OR_ID||(LA10_0 >= INSTRUCTION_FORMAT10t && LA10_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA10_0==INSTRUCTION_FORMAT11x||LA10_0==INSTRUCTION_FORMAT12x_OR_ID||(LA10_0 >= INSTRUCTION_FORMAT21c_FIELD && LA10_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA10_0==INSTRUCTION_FORMAT21t||(LA10_0 >= INSTRUCTION_FORMAT22c_FIELD && LA10_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA10_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA10_0 <= INSTRUCTION_FORMAT22t)||LA10_0==INSTRUCTION_FORMAT23x||(LA10_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA10_0 <= INSTRUCTION_FORMAT31t)||(LA10_0 >= INSTRUCTION_FORMAT35c_METHOD && LA10_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA10_0==INSTRUCTION_FORMAT51l||(LA10_0 >= NEGATIVE_INTEGER_LITERAL && LA10_0 <= NULL_LITERAL)||(LA10_0 >= PARAM_LIST_OR_ID && LA10_0 <= PRIMITIVE_TYPE)||LA10_0==REGISTER||LA10_0==SIMPLE_NAME||(LA10_0 >= VERIFICATION_ERROR_TYPE && LA10_0 <= VOID_TYPE)) ) { 3635 alt10=1; 3636 } 3637 else if ( (LA10_0==MEMBER_NAME) ) { 3638 alt10=2; 3639 } 3640 3641 else { 3642 NoViableAltException nvae = 3643 new NoViableAltException("", 10, 0, input); 3644 throw nvae; 3645 } 3646 3647 switch (alt10) { 3648 case 1 : 3649 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:594:5: simple_name 3650 { 3651 root_0 = (CommonTree)adaptor.nil(); 3652 3653 3654 pushFollow(FOLLOW_simple_name_in_member_name2264); 3655 simple_name82=simple_name(); 3656 state._fsp--; 3657 3658 adaptor.addChild(root_0, simple_name82.getTree()); 3659 3660 } 3661 break; 3662 case 2 : 3663 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:595:5: MEMBER_NAME 3664 { 3665 MEMBER_NAME83=(Token)match(input,MEMBER_NAME,FOLLOW_MEMBER_NAME_in_member_name2270); 3666 stream_MEMBER_NAME.add(MEMBER_NAME83); 3667 3668 // AST REWRITE 3669 // elements: 3670 // token labels: 3671 // rule labels: retval 3672 // token list labels: 3673 // rule list labels: 3674 // wildcard labels: 3675 retval.tree = root_0; 3676 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3677 3678 root_0 = (CommonTree)adaptor.nil(); 3679 // 595:17: -> SIMPLE_NAME[$MEMBER_NAME] 3680 { 3681 adaptor.addChild(root_0, (CommonTree)adaptor.create(SIMPLE_NAME, MEMBER_NAME83)); 3682 } 3683 3684 3685 retval.tree = root_0; 3686 3687 } 3688 break; 3689 3690 } 3691 retval.stop = input.LT(-1); 3692 3693 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 3694 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 3695 3696 } 3697 catch (RecognitionException re) { 3698 reportError(re); 3699 recover(input,re); 3700 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 3701 } 3702 finally { 3703 // do for sure before leaving 3704 } 3705 return retval; 3706 } 3707 // $ANTLR end "member_name" 3708 3709 3710 public static class method_prototype_return extends ParserRuleReturnScope { 3711 CommonTree tree; 3712 @Override 3713 public CommonTree getTree() { return tree; } 3714 }; 3715 3716 3717 // $ANTLR start "method_prototype" 3718 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:597:1: method_prototype : OPEN_PAREN param_list CLOSE_PAREN type_descriptor -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) ; 3719 public final smaliParser.method_prototype_return method_prototype() throws RecognitionException { 3720 smaliParser.method_prototype_return retval = new smaliParser.method_prototype_return(); 3721 retval.start = input.LT(1); 3722 3723 CommonTree root_0 = null; 3724 3725 Token OPEN_PAREN84=null; 3726 Token CLOSE_PAREN86=null; 3727 ParserRuleReturnScope param_list85 =null; 3728 ParserRuleReturnScope type_descriptor87 =null; 3729 3730 CommonTree OPEN_PAREN84_tree=null; 3731 CommonTree CLOSE_PAREN86_tree=null; 3732 RewriteRuleTokenStream stream_OPEN_PAREN=new RewriteRuleTokenStream(adaptor,"token OPEN_PAREN"); 3733 RewriteRuleTokenStream stream_CLOSE_PAREN=new RewriteRuleTokenStream(adaptor,"token CLOSE_PAREN"); 3734 RewriteRuleSubtreeStream stream_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule type_descriptor"); 3735 RewriteRuleSubtreeStream stream_param_list=new RewriteRuleSubtreeStream(adaptor,"rule param_list"); 3736 3737 try { 3738 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:598:3: ( OPEN_PAREN param_list CLOSE_PAREN type_descriptor -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) ) 3739 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:598:5: OPEN_PAREN param_list CLOSE_PAREN type_descriptor 3740 { 3741 OPEN_PAREN84=(Token)match(input,OPEN_PAREN,FOLLOW_OPEN_PAREN_in_method_prototype2285); 3742 stream_OPEN_PAREN.add(OPEN_PAREN84); 3743 3744 pushFollow(FOLLOW_param_list_in_method_prototype2287); 3745 param_list85=param_list(); 3746 state._fsp--; 3747 3748 stream_param_list.add(param_list85.getTree()); 3749 CLOSE_PAREN86=(Token)match(input,CLOSE_PAREN,FOLLOW_CLOSE_PAREN_in_method_prototype2289); 3750 stream_CLOSE_PAREN.add(CLOSE_PAREN86); 3751 3752 pushFollow(FOLLOW_type_descriptor_in_method_prototype2291); 3753 type_descriptor87=type_descriptor(); 3754 state._fsp--; 3755 3756 stream_type_descriptor.add(type_descriptor87.getTree()); 3757 // AST REWRITE 3758 // elements: param_list, type_descriptor 3759 // token labels: 3760 // rule labels: retval 3761 // token list labels: 3762 // rule list labels: 3763 // wildcard labels: 3764 retval.tree = root_0; 3765 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3766 3767 root_0 = (CommonTree)adaptor.nil(); 3768 // 599:5: -> ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) 3769 { 3770 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:599:8: ^( I_METHOD_PROTOTYPE[$start, \"I_METHOD_PROTOTYPE\"] ^( I_METHOD_RETURN_TYPE type_descriptor ) ( param_list )? ) 3771 { 3772 CommonTree root_1 = (CommonTree)adaptor.nil(); 3773 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD_PROTOTYPE, (retval.start), "I_METHOD_PROTOTYPE"), root_1); 3774 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:599:59: ^( I_METHOD_RETURN_TYPE type_descriptor ) 3775 { 3776 CommonTree root_2 = (CommonTree)adaptor.nil(); 3777 root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_METHOD_RETURN_TYPE, "I_METHOD_RETURN_TYPE"), root_2); 3778 adaptor.addChild(root_2, stream_type_descriptor.nextTree()); 3779 adaptor.addChild(root_1, root_2); 3780 } 3781 3782 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:599:99: ( param_list )? 3783 if ( stream_param_list.hasNext() ) { 3784 adaptor.addChild(root_1, stream_param_list.nextTree()); 3785 } 3786 stream_param_list.reset(); 3787 3788 adaptor.addChild(root_0, root_1); 3789 } 3790 3791 } 3792 3793 3794 retval.tree = root_0; 3795 3796 } 3797 3798 retval.stop = input.LT(-1); 3799 3800 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 3801 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 3802 3803 } 3804 catch (RecognitionException re) { 3805 reportError(re); 3806 recover(input,re); 3807 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 3808 } 3809 finally { 3810 // do for sure before leaving 3811 } 3812 return retval; 3813 } 3814 // $ANTLR end "method_prototype" 3815 3816 3817 public static class param_list_return extends ParserRuleReturnScope { 3818 CommonTree tree; 3819 @Override 3820 public CommonTree getTree() { return tree; } 3821 }; 3822 3823 3824 // $ANTLR start "param_list" 3825 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:601:1: param_list : ( PARAM_LIST ->| PARAM_LIST_OR_ID ->| ( nonvoid_type_descriptor )* ); 3826 public final smaliParser.param_list_return param_list() throws RecognitionException { 3827 smaliParser.param_list_return retval = new smaliParser.param_list_return(); 3828 retval.start = input.LT(1); 3829 3830 CommonTree root_0 = null; 3831 3832 Token PARAM_LIST88=null; 3833 Token PARAM_LIST_OR_ID89=null; 3834 ParserRuleReturnScope nonvoid_type_descriptor90 =null; 3835 3836 CommonTree PARAM_LIST88_tree=null; 3837 CommonTree PARAM_LIST_OR_ID89_tree=null; 3838 RewriteRuleTokenStream stream_PARAM_LIST=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST"); 3839 RewriteRuleTokenStream stream_PARAM_LIST_OR_ID=new RewriteRuleTokenStream(adaptor,"token PARAM_LIST_OR_ID"); 3840 3841 try { 3842 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:602:3: ( PARAM_LIST ->| PARAM_LIST_OR_ID ->| ( nonvoid_type_descriptor )* ) 3843 int alt12=3; 3844 switch ( input.LA(1) ) { 3845 case PARAM_LIST: 3846 { 3847 alt12=1; 3848 } 3849 break; 3850 case PARAM_LIST_OR_ID: 3851 { 3852 alt12=2; 3853 } 3854 break; 3855 case ARRAY_DESCRIPTOR: 3856 case CLASS_DESCRIPTOR: 3857 case CLOSE_PAREN: 3858 case PRIMITIVE_TYPE: 3859 { 3860 alt12=3; 3861 } 3862 break; 3863 default: 3864 NoViableAltException nvae = 3865 new NoViableAltException("", 12, 0, input); 3866 throw nvae; 3867 } 3868 switch (alt12) { 3869 case 1 : 3870 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:602:5: PARAM_LIST 3871 { 3872 PARAM_LIST88=(Token)match(input,PARAM_LIST,FOLLOW_PARAM_LIST_in_param_list2321); 3873 stream_PARAM_LIST.add(PARAM_LIST88); 3874 3875 // AST REWRITE 3876 // elements: 3877 // token labels: 3878 // rule labels: retval 3879 // token list labels: 3880 // rule list labels: 3881 // wildcard labels: 3882 retval.tree = root_0; 3883 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3884 3885 root_0 = (CommonTree)adaptor.nil(); 3886 // 602:16: -> 3887 { 3888 adaptor.addChild(root_0, parseParamList((CommonToken)PARAM_LIST88) ); 3889 } 3890 3891 3892 retval.tree = root_0; 3893 3894 } 3895 break; 3896 case 2 : 3897 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:603:5: PARAM_LIST_OR_ID 3898 { 3899 PARAM_LIST_OR_ID89=(Token)match(input,PARAM_LIST_OR_ID,FOLLOW_PARAM_LIST_OR_ID_in_param_list2331); 3900 stream_PARAM_LIST_OR_ID.add(PARAM_LIST_OR_ID89); 3901 3902 // AST REWRITE 3903 // elements: 3904 // token labels: 3905 // rule labels: retval 3906 // token list labels: 3907 // rule list labels: 3908 // wildcard labels: 3909 retval.tree = root_0; 3910 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 3911 3912 root_0 = (CommonTree)adaptor.nil(); 3913 // 603:22: -> 3914 { 3915 adaptor.addChild(root_0, parseParamList((CommonToken)PARAM_LIST_OR_ID89) ); 3916 } 3917 3918 3919 retval.tree = root_0; 3920 3921 } 3922 break; 3923 case 3 : 3924 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:604:5: ( nonvoid_type_descriptor )* 3925 { 3926 root_0 = (CommonTree)adaptor.nil(); 3927 3928 3929 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:604:5: ( nonvoid_type_descriptor )* 3930 loop11: 3931 while (true) { 3932 int alt11=2; 3933 int LA11_0 = input.LA(1); 3934 if ( (LA11_0==ARRAY_DESCRIPTOR||LA11_0==CLASS_DESCRIPTOR||LA11_0==PRIMITIVE_TYPE) ) { 3935 alt11=1; 3936 } 3937 3938 switch (alt11) { 3939 case 1 : 3940 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:604:5: nonvoid_type_descriptor 3941 { 3942 pushFollow(FOLLOW_nonvoid_type_descriptor_in_param_list2341); 3943 nonvoid_type_descriptor90=nonvoid_type_descriptor(); 3944 state._fsp--; 3945 3946 adaptor.addChild(root_0, nonvoid_type_descriptor90.getTree()); 3947 3948 } 3949 break; 3950 3951 default : 3952 break loop11; 3953 } 3954 } 3955 3956 } 3957 break; 3958 3959 } 3960 retval.stop = input.LT(-1); 3961 3962 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 3963 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 3964 3965 } 3966 catch (RecognitionException re) { 3967 reportError(re); 3968 recover(input,re); 3969 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 3970 } 3971 finally { 3972 // do for sure before leaving 3973 } 3974 return retval; 3975 } 3976 // $ANTLR end "param_list" 3977 3978 3979 public static class type_descriptor_return extends ParserRuleReturnScope { 3980 CommonTree tree; 3981 @Override 3982 public CommonTree getTree() { return tree; } 3983 }; 3984 3985 3986 // $ANTLR start "type_descriptor" 3987 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:606:1: type_descriptor : ( VOID_TYPE | PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ); 3988 public final smaliParser.type_descriptor_return type_descriptor() throws RecognitionException { 3989 smaliParser.type_descriptor_return retval = new smaliParser.type_descriptor_return(); 3990 retval.start = input.LT(1); 3991 3992 CommonTree root_0 = null; 3993 3994 Token set91=null; 3995 3996 CommonTree set91_tree=null; 3997 3998 try { 3999 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:607:3: ( VOID_TYPE | PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) 4000 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g: 4001 { 4002 root_0 = (CommonTree)adaptor.nil(); 4003 4004 4005 set91=input.LT(1); 4006 if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR||input.LA(1)==PRIMITIVE_TYPE||input.LA(1)==VOID_TYPE ) { 4007 input.consume(); 4008 adaptor.addChild(root_0, (CommonTree)adaptor.create(set91)); 4009 state.errorRecovery=false; 4010 } 4011 else { 4012 MismatchedSetException mse = new MismatchedSetException(null,input); 4013 throw mse; 4014 } 4015 } 4016 4017 retval.stop = input.LT(-1); 4018 4019 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 4020 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 4021 4022 } 4023 catch (RecognitionException re) { 4024 reportError(re); 4025 recover(input,re); 4026 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 4027 } 4028 finally { 4029 // do for sure before leaving 4030 } 4031 return retval; 4032 } 4033 // $ANTLR end "type_descriptor" 4034 4035 4036 public static class nonvoid_type_descriptor_return extends ParserRuleReturnScope { 4037 CommonTree tree; 4038 @Override 4039 public CommonTree getTree() { return tree; } 4040 }; 4041 4042 4043 // $ANTLR start "nonvoid_type_descriptor" 4044 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:612:1: nonvoid_type_descriptor : ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ); 4045 public final smaliParser.nonvoid_type_descriptor_return nonvoid_type_descriptor() throws RecognitionException { 4046 smaliParser.nonvoid_type_descriptor_return retval = new smaliParser.nonvoid_type_descriptor_return(); 4047 retval.start = input.LT(1); 4048 4049 CommonTree root_0 = null; 4050 4051 Token set92=null; 4052 4053 CommonTree set92_tree=null; 4054 4055 try { 4056 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:613:3: ( PRIMITIVE_TYPE | CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) 4057 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g: 4058 { 4059 root_0 = (CommonTree)adaptor.nil(); 4060 4061 4062 set92=input.LT(1); 4063 if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR||input.LA(1)==PRIMITIVE_TYPE ) { 4064 input.consume(); 4065 adaptor.addChild(root_0, (CommonTree)adaptor.create(set92)); 4066 state.errorRecovery=false; 4067 } 4068 else { 4069 MismatchedSetException mse = new MismatchedSetException(null,input); 4070 throw mse; 4071 } 4072 } 4073 4074 retval.stop = input.LT(-1); 4075 4076 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 4077 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 4078 4079 } 4080 catch (RecognitionException re) { 4081 reportError(re); 4082 recover(input,re); 4083 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 4084 } 4085 finally { 4086 // do for sure before leaving 4087 } 4088 return retval; 4089 } 4090 // $ANTLR end "nonvoid_type_descriptor" 4091 4092 4093 public static class reference_type_descriptor_return extends ParserRuleReturnScope { 4094 CommonTree tree; 4095 @Override 4096 public CommonTree getTree() { return tree; } 4097 }; 4098 4099 4100 // $ANTLR start "reference_type_descriptor" 4101 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:617:1: reference_type_descriptor : ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ); 4102 public final smaliParser.reference_type_descriptor_return reference_type_descriptor() throws RecognitionException { 4103 smaliParser.reference_type_descriptor_return retval = new smaliParser.reference_type_descriptor_return(); 4104 retval.start = input.LT(1); 4105 4106 CommonTree root_0 = null; 4107 4108 Token set93=null; 4109 4110 CommonTree set93_tree=null; 4111 4112 try { 4113 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:618:3: ( CLASS_DESCRIPTOR | ARRAY_DESCRIPTOR ) 4114 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g: 4115 { 4116 root_0 = (CommonTree)adaptor.nil(); 4117 4118 4119 set93=input.LT(1); 4120 if ( input.LA(1)==ARRAY_DESCRIPTOR||input.LA(1)==CLASS_DESCRIPTOR ) { 4121 input.consume(); 4122 adaptor.addChild(root_0, (CommonTree)adaptor.create(set93)); 4123 state.errorRecovery=false; 4124 } 4125 else { 4126 MismatchedSetException mse = new MismatchedSetException(null,input); 4127 throw mse; 4128 } 4129 } 4130 4131 retval.stop = input.LT(-1); 4132 4133 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 4134 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 4135 4136 } 4137 catch (RecognitionException re) { 4138 reportError(re); 4139 recover(input,re); 4140 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 4141 } 4142 finally { 4143 // do for sure before leaving 4144 } 4145 return retval; 4146 } 4147 // $ANTLR end "reference_type_descriptor" 4148 4149 4150 public static class integer_literal_return extends ParserRuleReturnScope { 4151 CommonTree tree; 4152 @Override 4153 public CommonTree getTree() { return tree; } 4154 }; 4155 4156 4157 // $ANTLR start "integer_literal" 4158 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:621:1: integer_literal : ( POSITIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] ); 4159 public final smaliParser.integer_literal_return integer_literal() throws RecognitionException { 4160 smaliParser.integer_literal_return retval = new smaliParser.integer_literal_return(); 4161 retval.start = input.LT(1); 4162 4163 CommonTree root_0 = null; 4164 4165 Token POSITIVE_INTEGER_LITERAL94=null; 4166 Token NEGATIVE_INTEGER_LITERAL95=null; 4167 4168 CommonTree POSITIVE_INTEGER_LITERAL94_tree=null; 4169 CommonTree NEGATIVE_INTEGER_LITERAL95_tree=null; 4170 RewriteRuleTokenStream stream_NEGATIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token NEGATIVE_INTEGER_LITERAL"); 4171 RewriteRuleTokenStream stream_POSITIVE_INTEGER_LITERAL=new RewriteRuleTokenStream(adaptor,"token POSITIVE_INTEGER_LITERAL"); 4172 4173 try { 4174 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:622:3: ( POSITIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] | NEGATIVE_INTEGER_LITERAL -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] ) 4175 int alt13=2; 4176 int LA13_0 = input.LA(1); 4177 if ( (LA13_0==POSITIVE_INTEGER_LITERAL) ) { 4178 alt13=1; 4179 } 4180 else if ( (LA13_0==NEGATIVE_INTEGER_LITERAL) ) { 4181 alt13=2; 4182 } 4183 4184 else { 4185 NoViableAltException nvae = 4186 new NoViableAltException("", 13, 0, input); 4187 throw nvae; 4188 } 4189 4190 switch (alt13) { 4191 case 1 : 4192 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:622:5: POSITIVE_INTEGER_LITERAL 4193 { 4194 POSITIVE_INTEGER_LITERAL94=(Token)match(input,POSITIVE_INTEGER_LITERAL,FOLLOW_POSITIVE_INTEGER_LITERAL_in_integer_literal2418); 4195 stream_POSITIVE_INTEGER_LITERAL.add(POSITIVE_INTEGER_LITERAL94); 4196 4197 // AST REWRITE 4198 // elements: 4199 // token labels: 4200 // rule labels: retval 4201 // token list labels: 4202 // rule list labels: 4203 // wildcard labels: 4204 retval.tree = root_0; 4205 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 4206 4207 root_0 = (CommonTree)adaptor.nil(); 4208 // 622:30: -> INTEGER_LITERAL[$POSITIVE_INTEGER_LITERAL] 4209 { 4210 adaptor.addChild(root_0, (CommonTree)adaptor.create(INTEGER_LITERAL, POSITIVE_INTEGER_LITERAL94)); 4211 } 4212 4213 4214 retval.tree = root_0; 4215 4216 } 4217 break; 4218 case 2 : 4219 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:623:5: NEGATIVE_INTEGER_LITERAL 4220 { 4221 NEGATIVE_INTEGER_LITERAL95=(Token)match(input,NEGATIVE_INTEGER_LITERAL,FOLLOW_NEGATIVE_INTEGER_LITERAL_in_integer_literal2429); 4222 stream_NEGATIVE_INTEGER_LITERAL.add(NEGATIVE_INTEGER_LITERAL95); 4223 4224 // AST REWRITE 4225 // elements: 4226 // token labels: 4227 // rule labels: retval 4228 // token list labels: 4229 // rule list labels: 4230 // wildcard labels: 4231 retval.tree = root_0; 4232 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 4233 4234 root_0 = (CommonTree)adaptor.nil(); 4235 // 623:30: -> INTEGER_LITERAL[$NEGATIVE_INTEGER_LITERAL] 4236 { 4237 adaptor.addChild(root_0, (CommonTree)adaptor.create(INTEGER_LITERAL, NEGATIVE_INTEGER_LITERAL95)); 4238 } 4239 4240 4241 retval.tree = root_0; 4242 4243 } 4244 break; 4245 4246 } 4247 retval.stop = input.LT(-1); 4248 4249 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 4250 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 4251 4252 } 4253 catch (RecognitionException re) { 4254 reportError(re); 4255 recover(input,re); 4256 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 4257 } 4258 finally { 4259 // do for sure before leaving 4260 } 4261 return retval; 4262 } 4263 // $ANTLR end "integer_literal" 4264 4265 4266 public static class float_literal_return extends ParserRuleReturnScope { 4267 CommonTree tree; 4268 @Override 4269 public CommonTree getTree() { return tree; } 4270 }; 4271 4272 4273 // $ANTLR start "float_literal" 4274 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:625:1: float_literal : ( FLOAT_LITERAL_OR_ID -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID] | FLOAT_LITERAL ); 4275 public final smaliParser.float_literal_return float_literal() throws RecognitionException { 4276 smaliParser.float_literal_return retval = new smaliParser.float_literal_return(); 4277 retval.start = input.LT(1); 4278 4279 CommonTree root_0 = null; 4280 4281 Token FLOAT_LITERAL_OR_ID96=null; 4282 Token FLOAT_LITERAL97=null; 4283 4284 CommonTree FLOAT_LITERAL_OR_ID96_tree=null; 4285 CommonTree FLOAT_LITERAL97_tree=null; 4286 RewriteRuleTokenStream stream_FLOAT_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token FLOAT_LITERAL_OR_ID"); 4287 4288 try { 4289 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:626:3: ( FLOAT_LITERAL_OR_ID -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID] | FLOAT_LITERAL ) 4290 int alt14=2; 4291 int LA14_0 = input.LA(1); 4292 if ( (LA14_0==FLOAT_LITERAL_OR_ID) ) { 4293 alt14=1; 4294 } 4295 else if ( (LA14_0==FLOAT_LITERAL) ) { 4296 alt14=2; 4297 } 4298 4299 else { 4300 NoViableAltException nvae = 4301 new NoViableAltException("", 14, 0, input); 4302 throw nvae; 4303 } 4304 4305 switch (alt14) { 4306 case 1 : 4307 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:626:5: FLOAT_LITERAL_OR_ID 4308 { 4309 FLOAT_LITERAL_OR_ID96=(Token)match(input,FLOAT_LITERAL_OR_ID,FOLLOW_FLOAT_LITERAL_OR_ID_in_float_literal2444); 4310 stream_FLOAT_LITERAL_OR_ID.add(FLOAT_LITERAL_OR_ID96); 4311 4312 // AST REWRITE 4313 // elements: 4314 // token labels: 4315 // rule labels: retval 4316 // token list labels: 4317 // rule list labels: 4318 // wildcard labels: 4319 retval.tree = root_0; 4320 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 4321 4322 root_0 = (CommonTree)adaptor.nil(); 4323 // 626:25: -> FLOAT_LITERAL[$FLOAT_LITERAL_OR_ID] 4324 { 4325 adaptor.addChild(root_0, (CommonTree)adaptor.create(FLOAT_LITERAL, FLOAT_LITERAL_OR_ID96)); 4326 } 4327 4328 4329 retval.tree = root_0; 4330 4331 } 4332 break; 4333 case 2 : 4334 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:627:5: FLOAT_LITERAL 4335 { 4336 root_0 = (CommonTree)adaptor.nil(); 4337 4338 4339 FLOAT_LITERAL97=(Token)match(input,FLOAT_LITERAL,FOLLOW_FLOAT_LITERAL_in_float_literal2455); 4340 FLOAT_LITERAL97_tree = (CommonTree)adaptor.create(FLOAT_LITERAL97); 4341 adaptor.addChild(root_0, FLOAT_LITERAL97_tree); 4342 4343 } 4344 break; 4345 4346 } 4347 retval.stop = input.LT(-1); 4348 4349 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 4350 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 4351 4352 } 4353 catch (RecognitionException re) { 4354 reportError(re); 4355 recover(input,re); 4356 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 4357 } 4358 finally { 4359 // do for sure before leaving 4360 } 4361 return retval; 4362 } 4363 // $ANTLR end "float_literal" 4364 4365 4366 public static class double_literal_return extends ParserRuleReturnScope { 4367 CommonTree tree; 4368 @Override 4369 public CommonTree getTree() { return tree; } 4370 }; 4371 4372 4373 // $ANTLR start "double_literal" 4374 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:629:1: double_literal : ( DOUBLE_LITERAL_OR_ID -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID] | DOUBLE_LITERAL ); 4375 public final smaliParser.double_literal_return double_literal() throws RecognitionException { 4376 smaliParser.double_literal_return retval = new smaliParser.double_literal_return(); 4377 retval.start = input.LT(1); 4378 4379 CommonTree root_0 = null; 4380 4381 Token DOUBLE_LITERAL_OR_ID98=null; 4382 Token DOUBLE_LITERAL99=null; 4383 4384 CommonTree DOUBLE_LITERAL_OR_ID98_tree=null; 4385 CommonTree DOUBLE_LITERAL99_tree=null; 4386 RewriteRuleTokenStream stream_DOUBLE_LITERAL_OR_ID=new RewriteRuleTokenStream(adaptor,"token DOUBLE_LITERAL_OR_ID"); 4387 4388 try { 4389 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:630:3: ( DOUBLE_LITERAL_OR_ID -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID] | DOUBLE_LITERAL ) 4390 int alt15=2; 4391 int LA15_0 = input.LA(1); 4392 if ( (LA15_0==DOUBLE_LITERAL_OR_ID) ) { 4393 alt15=1; 4394 } 4395 else if ( (LA15_0==DOUBLE_LITERAL) ) { 4396 alt15=2; 4397 } 4398 4399 else { 4400 NoViableAltException nvae = 4401 new NoViableAltException("", 15, 0, input); 4402 throw nvae; 4403 } 4404 4405 switch (alt15) { 4406 case 1 : 4407 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:630:5: DOUBLE_LITERAL_OR_ID 4408 { 4409 DOUBLE_LITERAL_OR_ID98=(Token)match(input,DOUBLE_LITERAL_OR_ID,FOLLOW_DOUBLE_LITERAL_OR_ID_in_double_literal2465); 4410 stream_DOUBLE_LITERAL_OR_ID.add(DOUBLE_LITERAL_OR_ID98); 4411 4412 // AST REWRITE 4413 // elements: 4414 // token labels: 4415 // rule labels: retval 4416 // token list labels: 4417 // rule list labels: 4418 // wildcard labels: 4419 retval.tree = root_0; 4420 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 4421 4422 root_0 = (CommonTree)adaptor.nil(); 4423 // 630:26: -> DOUBLE_LITERAL[$DOUBLE_LITERAL_OR_ID] 4424 { 4425 adaptor.addChild(root_0, (CommonTree)adaptor.create(DOUBLE_LITERAL, DOUBLE_LITERAL_OR_ID98)); 4426 } 4427 4428 4429 retval.tree = root_0; 4430 4431 } 4432 break; 4433 case 2 : 4434 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:631:5: DOUBLE_LITERAL 4435 { 4436 root_0 = (CommonTree)adaptor.nil(); 4437 4438 4439 DOUBLE_LITERAL99=(Token)match(input,DOUBLE_LITERAL,FOLLOW_DOUBLE_LITERAL_in_double_literal2476); 4440 DOUBLE_LITERAL99_tree = (CommonTree)adaptor.create(DOUBLE_LITERAL99); 4441 adaptor.addChild(root_0, DOUBLE_LITERAL99_tree); 4442 4443 } 4444 break; 4445 4446 } 4447 retval.stop = input.LT(-1); 4448 4449 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 4450 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 4451 4452 } 4453 catch (RecognitionException re) { 4454 reportError(re); 4455 recover(input,re); 4456 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 4457 } 4458 finally { 4459 // do for sure before leaving 4460 } 4461 return retval; 4462 } 4463 // $ANTLR end "double_literal" 4464 4465 4466 public static class literal_return extends ParserRuleReturnScope { 4467 CommonTree tree; 4468 @Override 4469 public CommonTree getTree() { return tree; } 4470 }; 4471 4472 4473 // $ANTLR start "literal" 4474 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:633:1: literal : ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | STRING_LITERAL | BOOL_LITERAL | NULL_LITERAL | array_literal | subannotation | type_field_method_literal | enum_literal ); 4475 public final smaliParser.literal_return literal() throws RecognitionException { 4476 smaliParser.literal_return retval = new smaliParser.literal_return(); 4477 retval.start = input.LT(1); 4478 4479 CommonTree root_0 = null; 4480 4481 Token LONG_LITERAL100=null; 4482 Token SHORT_LITERAL102=null; 4483 Token BYTE_LITERAL103=null; 4484 Token CHAR_LITERAL106=null; 4485 Token STRING_LITERAL107=null; 4486 Token BOOL_LITERAL108=null; 4487 Token NULL_LITERAL109=null; 4488 ParserRuleReturnScope integer_literal101 =null; 4489 ParserRuleReturnScope float_literal104 =null; 4490 ParserRuleReturnScope double_literal105 =null; 4491 ParserRuleReturnScope array_literal110 =null; 4492 ParserRuleReturnScope subannotation111 =null; 4493 ParserRuleReturnScope type_field_method_literal112 =null; 4494 ParserRuleReturnScope enum_literal113 =null; 4495 4496 CommonTree LONG_LITERAL100_tree=null; 4497 CommonTree SHORT_LITERAL102_tree=null; 4498 CommonTree BYTE_LITERAL103_tree=null; 4499 CommonTree CHAR_LITERAL106_tree=null; 4500 CommonTree STRING_LITERAL107_tree=null; 4501 CommonTree BOOL_LITERAL108_tree=null; 4502 CommonTree NULL_LITERAL109_tree=null; 4503 4504 try { 4505 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:634:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | STRING_LITERAL | BOOL_LITERAL | NULL_LITERAL | array_literal | subannotation | type_field_method_literal | enum_literal ) 4506 int alt16=14; 4507 switch ( input.LA(1) ) { 4508 case LONG_LITERAL: 4509 { 4510 alt16=1; 4511 } 4512 break; 4513 case NEGATIVE_INTEGER_LITERAL: 4514 case POSITIVE_INTEGER_LITERAL: 4515 { 4516 alt16=2; 4517 } 4518 break; 4519 case SHORT_LITERAL: 4520 { 4521 alt16=3; 4522 } 4523 break; 4524 case BYTE_LITERAL: 4525 { 4526 alt16=4; 4527 } 4528 break; 4529 case FLOAT_LITERAL: 4530 case FLOAT_LITERAL_OR_ID: 4531 { 4532 alt16=5; 4533 } 4534 break; 4535 case DOUBLE_LITERAL: 4536 case DOUBLE_LITERAL_OR_ID: 4537 { 4538 alt16=6; 4539 } 4540 break; 4541 case CHAR_LITERAL: 4542 { 4543 alt16=7; 4544 } 4545 break; 4546 case STRING_LITERAL: 4547 { 4548 alt16=8; 4549 } 4550 break; 4551 case BOOL_LITERAL: 4552 { 4553 alt16=9; 4554 } 4555 break; 4556 case NULL_LITERAL: 4557 { 4558 alt16=10; 4559 } 4560 break; 4561 case OPEN_BRACE: 4562 { 4563 alt16=11; 4564 } 4565 break; 4566 case SUBANNOTATION_DIRECTIVE: 4567 { 4568 alt16=12; 4569 } 4570 break; 4571 case ARRAY_DESCRIPTOR: 4572 case CLASS_DESCRIPTOR: 4573 case PRIMITIVE_TYPE: 4574 case VOID_TYPE: 4575 { 4576 alt16=13; 4577 } 4578 break; 4579 case ENUM_DIRECTIVE: 4580 { 4581 alt16=14; 4582 } 4583 break; 4584 default: 4585 NoViableAltException nvae = 4586 new NoViableAltException("", 16, 0, input); 4587 throw nvae; 4588 } 4589 switch (alt16) { 4590 case 1 : 4591 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:634:5: LONG_LITERAL 4592 { 4593 root_0 = (CommonTree)adaptor.nil(); 4594 4595 4596 LONG_LITERAL100=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_literal2486); 4597 LONG_LITERAL100_tree = (CommonTree)adaptor.create(LONG_LITERAL100); 4598 adaptor.addChild(root_0, LONG_LITERAL100_tree); 4599 4600 } 4601 break; 4602 case 2 : 4603 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:635:5: integer_literal 4604 { 4605 root_0 = (CommonTree)adaptor.nil(); 4606 4607 4608 pushFollow(FOLLOW_integer_literal_in_literal2492); 4609 integer_literal101=integer_literal(); 4610 state._fsp--; 4611 4612 adaptor.addChild(root_0, integer_literal101.getTree()); 4613 4614 } 4615 break; 4616 case 3 : 4617 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:636:5: SHORT_LITERAL 4618 { 4619 root_0 = (CommonTree)adaptor.nil(); 4620 4621 4622 SHORT_LITERAL102=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_literal2498); 4623 SHORT_LITERAL102_tree = (CommonTree)adaptor.create(SHORT_LITERAL102); 4624 adaptor.addChild(root_0, SHORT_LITERAL102_tree); 4625 4626 } 4627 break; 4628 case 4 : 4629 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:637:5: BYTE_LITERAL 4630 { 4631 root_0 = (CommonTree)adaptor.nil(); 4632 4633 4634 BYTE_LITERAL103=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_literal2504); 4635 BYTE_LITERAL103_tree = (CommonTree)adaptor.create(BYTE_LITERAL103); 4636 adaptor.addChild(root_0, BYTE_LITERAL103_tree); 4637 4638 } 4639 break; 4640 case 5 : 4641 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:638:5: float_literal 4642 { 4643 root_0 = (CommonTree)adaptor.nil(); 4644 4645 4646 pushFollow(FOLLOW_float_literal_in_literal2510); 4647 float_literal104=float_literal(); 4648 state._fsp--; 4649 4650 adaptor.addChild(root_0, float_literal104.getTree()); 4651 4652 } 4653 break; 4654 case 6 : 4655 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:639:5: double_literal 4656 { 4657 root_0 = (CommonTree)adaptor.nil(); 4658 4659 4660 pushFollow(FOLLOW_double_literal_in_literal2516); 4661 double_literal105=double_literal(); 4662 state._fsp--; 4663 4664 adaptor.addChild(root_0, double_literal105.getTree()); 4665 4666 } 4667 break; 4668 case 7 : 4669 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:640:5: CHAR_LITERAL 4670 { 4671 root_0 = (CommonTree)adaptor.nil(); 4672 4673 4674 CHAR_LITERAL106=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_literal2522); 4675 CHAR_LITERAL106_tree = (CommonTree)adaptor.create(CHAR_LITERAL106); 4676 adaptor.addChild(root_0, CHAR_LITERAL106_tree); 4677 4678 } 4679 break; 4680 case 8 : 4681 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:641:5: STRING_LITERAL 4682 { 4683 root_0 = (CommonTree)adaptor.nil(); 4684 4685 4686 STRING_LITERAL107=(Token)match(input,STRING_LITERAL,FOLLOW_STRING_LITERAL_in_literal2528); 4687 STRING_LITERAL107_tree = (CommonTree)adaptor.create(STRING_LITERAL107); 4688 adaptor.addChild(root_0, STRING_LITERAL107_tree); 4689 4690 } 4691 break; 4692 case 9 : 4693 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:642:5: BOOL_LITERAL 4694 { 4695 root_0 = (CommonTree)adaptor.nil(); 4696 4697 4698 BOOL_LITERAL108=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_literal2534); 4699 BOOL_LITERAL108_tree = (CommonTree)adaptor.create(BOOL_LITERAL108); 4700 adaptor.addChild(root_0, BOOL_LITERAL108_tree); 4701 4702 } 4703 break; 4704 case 10 : 4705 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:643:5: NULL_LITERAL 4706 { 4707 root_0 = (CommonTree)adaptor.nil(); 4708 4709 4710 NULL_LITERAL109=(Token)match(input,NULL_LITERAL,FOLLOW_NULL_LITERAL_in_literal2540); 4711 NULL_LITERAL109_tree = (CommonTree)adaptor.create(NULL_LITERAL109); 4712 adaptor.addChild(root_0, NULL_LITERAL109_tree); 4713 4714 } 4715 break; 4716 case 11 : 4717 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:644:5: array_literal 4718 { 4719 root_0 = (CommonTree)adaptor.nil(); 4720 4721 4722 pushFollow(FOLLOW_array_literal_in_literal2546); 4723 array_literal110=array_literal(); 4724 state._fsp--; 4725 4726 adaptor.addChild(root_0, array_literal110.getTree()); 4727 4728 } 4729 break; 4730 case 12 : 4731 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:645:5: subannotation 4732 { 4733 root_0 = (CommonTree)adaptor.nil(); 4734 4735 4736 pushFollow(FOLLOW_subannotation_in_literal2552); 4737 subannotation111=subannotation(); 4738 state._fsp--; 4739 4740 adaptor.addChild(root_0, subannotation111.getTree()); 4741 4742 } 4743 break; 4744 case 13 : 4745 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:646:5: type_field_method_literal 4746 { 4747 root_0 = (CommonTree)adaptor.nil(); 4748 4749 4750 pushFollow(FOLLOW_type_field_method_literal_in_literal2558); 4751 type_field_method_literal112=type_field_method_literal(); 4752 state._fsp--; 4753 4754 adaptor.addChild(root_0, type_field_method_literal112.getTree()); 4755 4756 } 4757 break; 4758 case 14 : 4759 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:647:5: enum_literal 4760 { 4761 root_0 = (CommonTree)adaptor.nil(); 4762 4763 4764 pushFollow(FOLLOW_enum_literal_in_literal2564); 4765 enum_literal113=enum_literal(); 4766 state._fsp--; 4767 4768 adaptor.addChild(root_0, enum_literal113.getTree()); 4769 4770 } 4771 break; 4772 4773 } 4774 retval.stop = input.LT(-1); 4775 4776 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 4777 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 4778 4779 } 4780 catch (RecognitionException re) { 4781 reportError(re); 4782 recover(input,re); 4783 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 4784 } 4785 finally { 4786 // do for sure before leaving 4787 } 4788 return retval; 4789 } 4790 // $ANTLR end "literal" 4791 4792 4793 public static class parsed_integer_literal_return extends ParserRuleReturnScope { 4794 public int value; 4795 CommonTree tree; 4796 @Override 4797 public CommonTree getTree() { return tree; } 4798 }; 4799 4800 4801 // $ANTLR start "parsed_integer_literal" 4802 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:649:1: parsed_integer_literal returns [int value] : integer_literal ; 4803 public final smaliParser.parsed_integer_literal_return parsed_integer_literal() throws RecognitionException { 4804 smaliParser.parsed_integer_literal_return retval = new smaliParser.parsed_integer_literal_return(); 4805 retval.start = input.LT(1); 4806 4807 CommonTree root_0 = null; 4808 4809 ParserRuleReturnScope integer_literal114 =null; 4810 4811 4812 try { 4813 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:650:3: ( integer_literal ) 4814 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:650:5: integer_literal 4815 { 4816 root_0 = (CommonTree)adaptor.nil(); 4817 4818 4819 pushFollow(FOLLOW_integer_literal_in_parsed_integer_literal2577); 4820 integer_literal114=integer_literal(); 4821 state._fsp--; 4822 4823 adaptor.addChild(root_0, integer_literal114.getTree()); 4824 4825 retval.value = LiteralTools.parseInt((integer_literal114!=null?input.toString(integer_literal114.start,integer_literal114.stop):null)); 4826 } 4827 4828 retval.stop = input.LT(-1); 4829 4830 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 4831 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 4832 4833 } 4834 catch (RecognitionException re) { 4835 reportError(re); 4836 recover(input,re); 4837 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 4838 } 4839 finally { 4840 // do for sure before leaving 4841 } 4842 return retval; 4843 } 4844 // $ANTLR end "parsed_integer_literal" 4845 4846 4847 public static class integral_literal_return extends ParserRuleReturnScope { 4848 CommonTree tree; 4849 @Override 4850 public CommonTree getTree() { return tree; } 4851 }; 4852 4853 4854 // $ANTLR start "integral_literal" 4855 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:652:1: integral_literal : ( LONG_LITERAL | integer_literal | SHORT_LITERAL | CHAR_LITERAL | BYTE_LITERAL ); 4856 public final smaliParser.integral_literal_return integral_literal() throws RecognitionException { 4857 smaliParser.integral_literal_return retval = new smaliParser.integral_literal_return(); 4858 retval.start = input.LT(1); 4859 4860 CommonTree root_0 = null; 4861 4862 Token LONG_LITERAL115=null; 4863 Token SHORT_LITERAL117=null; 4864 Token CHAR_LITERAL118=null; 4865 Token BYTE_LITERAL119=null; 4866 ParserRuleReturnScope integer_literal116 =null; 4867 4868 CommonTree LONG_LITERAL115_tree=null; 4869 CommonTree SHORT_LITERAL117_tree=null; 4870 CommonTree CHAR_LITERAL118_tree=null; 4871 CommonTree BYTE_LITERAL119_tree=null; 4872 4873 try { 4874 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:653:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | CHAR_LITERAL | BYTE_LITERAL ) 4875 int alt17=5; 4876 switch ( input.LA(1) ) { 4877 case LONG_LITERAL: 4878 { 4879 alt17=1; 4880 } 4881 break; 4882 case NEGATIVE_INTEGER_LITERAL: 4883 case POSITIVE_INTEGER_LITERAL: 4884 { 4885 alt17=2; 4886 } 4887 break; 4888 case SHORT_LITERAL: 4889 { 4890 alt17=3; 4891 } 4892 break; 4893 case CHAR_LITERAL: 4894 { 4895 alt17=4; 4896 } 4897 break; 4898 case BYTE_LITERAL: 4899 { 4900 alt17=5; 4901 } 4902 break; 4903 default: 4904 NoViableAltException nvae = 4905 new NoViableAltException("", 17, 0, input); 4906 throw nvae; 4907 } 4908 switch (alt17) { 4909 case 1 : 4910 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:653:5: LONG_LITERAL 4911 { 4912 root_0 = (CommonTree)adaptor.nil(); 4913 4914 4915 LONG_LITERAL115=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_integral_literal2589); 4916 LONG_LITERAL115_tree = (CommonTree)adaptor.create(LONG_LITERAL115); 4917 adaptor.addChild(root_0, LONG_LITERAL115_tree); 4918 4919 } 4920 break; 4921 case 2 : 4922 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:654:5: integer_literal 4923 { 4924 root_0 = (CommonTree)adaptor.nil(); 4925 4926 4927 pushFollow(FOLLOW_integer_literal_in_integral_literal2595); 4928 integer_literal116=integer_literal(); 4929 state._fsp--; 4930 4931 adaptor.addChild(root_0, integer_literal116.getTree()); 4932 4933 } 4934 break; 4935 case 3 : 4936 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:655:5: SHORT_LITERAL 4937 { 4938 root_0 = (CommonTree)adaptor.nil(); 4939 4940 4941 SHORT_LITERAL117=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_integral_literal2601); 4942 SHORT_LITERAL117_tree = (CommonTree)adaptor.create(SHORT_LITERAL117); 4943 adaptor.addChild(root_0, SHORT_LITERAL117_tree); 4944 4945 } 4946 break; 4947 case 4 : 4948 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:656:5: CHAR_LITERAL 4949 { 4950 root_0 = (CommonTree)adaptor.nil(); 4951 4952 4953 CHAR_LITERAL118=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_integral_literal2607); 4954 CHAR_LITERAL118_tree = (CommonTree)adaptor.create(CHAR_LITERAL118); 4955 adaptor.addChild(root_0, CHAR_LITERAL118_tree); 4956 4957 } 4958 break; 4959 case 5 : 4960 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:657:5: BYTE_LITERAL 4961 { 4962 root_0 = (CommonTree)adaptor.nil(); 4963 4964 4965 BYTE_LITERAL119=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_integral_literal2613); 4966 BYTE_LITERAL119_tree = (CommonTree)adaptor.create(BYTE_LITERAL119); 4967 adaptor.addChild(root_0, BYTE_LITERAL119_tree); 4968 4969 } 4970 break; 4971 4972 } 4973 retval.stop = input.LT(-1); 4974 4975 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 4976 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 4977 4978 } 4979 catch (RecognitionException re) { 4980 reportError(re); 4981 recover(input,re); 4982 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 4983 } 4984 finally { 4985 // do for sure before leaving 4986 } 4987 return retval; 4988 } 4989 // $ANTLR end "integral_literal" 4990 4991 4992 public static class fixed_32bit_literal_return extends ParserRuleReturnScope { 4993 CommonTree tree; 4994 @Override 4995 public CommonTree getTree() { return tree; } 4996 }; 4997 4998 4999 // $ANTLR start "fixed_32bit_literal" 5000 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:659:1: fixed_32bit_literal : ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | CHAR_LITERAL | BOOL_LITERAL ); 5001 public final smaliParser.fixed_32bit_literal_return fixed_32bit_literal() throws RecognitionException { 5002 smaliParser.fixed_32bit_literal_return retval = new smaliParser.fixed_32bit_literal_return(); 5003 retval.start = input.LT(1); 5004 5005 CommonTree root_0 = null; 5006 5007 Token LONG_LITERAL120=null; 5008 Token SHORT_LITERAL122=null; 5009 Token BYTE_LITERAL123=null; 5010 Token CHAR_LITERAL125=null; 5011 Token BOOL_LITERAL126=null; 5012 ParserRuleReturnScope integer_literal121 =null; 5013 ParserRuleReturnScope float_literal124 =null; 5014 5015 CommonTree LONG_LITERAL120_tree=null; 5016 CommonTree SHORT_LITERAL122_tree=null; 5017 CommonTree BYTE_LITERAL123_tree=null; 5018 CommonTree CHAR_LITERAL125_tree=null; 5019 CommonTree BOOL_LITERAL126_tree=null; 5020 5021 try { 5022 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:660:3: ( LONG_LITERAL | integer_literal | SHORT_LITERAL | BYTE_LITERAL | float_literal | CHAR_LITERAL | BOOL_LITERAL ) 5023 int alt18=7; 5024 switch ( input.LA(1) ) { 5025 case LONG_LITERAL: 5026 { 5027 alt18=1; 5028 } 5029 break; 5030 case NEGATIVE_INTEGER_LITERAL: 5031 case POSITIVE_INTEGER_LITERAL: 5032 { 5033 alt18=2; 5034 } 5035 break; 5036 case SHORT_LITERAL: 5037 { 5038 alt18=3; 5039 } 5040 break; 5041 case BYTE_LITERAL: 5042 { 5043 alt18=4; 5044 } 5045 break; 5046 case FLOAT_LITERAL: 5047 case FLOAT_LITERAL_OR_ID: 5048 { 5049 alt18=5; 5050 } 5051 break; 5052 case CHAR_LITERAL: 5053 { 5054 alt18=6; 5055 } 5056 break; 5057 case BOOL_LITERAL: 5058 { 5059 alt18=7; 5060 } 5061 break; 5062 default: 5063 NoViableAltException nvae = 5064 new NoViableAltException("", 18, 0, input); 5065 throw nvae; 5066 } 5067 switch (alt18) { 5068 case 1 : 5069 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:660:5: LONG_LITERAL 5070 { 5071 root_0 = (CommonTree)adaptor.nil(); 5072 5073 5074 LONG_LITERAL120=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_fixed_32bit_literal2623); 5075 LONG_LITERAL120_tree = (CommonTree)adaptor.create(LONG_LITERAL120); 5076 adaptor.addChild(root_0, LONG_LITERAL120_tree); 5077 5078 } 5079 break; 5080 case 2 : 5081 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:661:5: integer_literal 5082 { 5083 root_0 = (CommonTree)adaptor.nil(); 5084 5085 5086 pushFollow(FOLLOW_integer_literal_in_fixed_32bit_literal2629); 5087 integer_literal121=integer_literal(); 5088 state._fsp--; 5089 5090 adaptor.addChild(root_0, integer_literal121.getTree()); 5091 5092 } 5093 break; 5094 case 3 : 5095 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:662:5: SHORT_LITERAL 5096 { 5097 root_0 = (CommonTree)adaptor.nil(); 5098 5099 5100 SHORT_LITERAL122=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_fixed_32bit_literal2635); 5101 SHORT_LITERAL122_tree = (CommonTree)adaptor.create(SHORT_LITERAL122); 5102 adaptor.addChild(root_0, SHORT_LITERAL122_tree); 5103 5104 } 5105 break; 5106 case 4 : 5107 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:663:5: BYTE_LITERAL 5108 { 5109 root_0 = (CommonTree)adaptor.nil(); 5110 5111 5112 BYTE_LITERAL123=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_fixed_32bit_literal2641); 5113 BYTE_LITERAL123_tree = (CommonTree)adaptor.create(BYTE_LITERAL123); 5114 adaptor.addChild(root_0, BYTE_LITERAL123_tree); 5115 5116 } 5117 break; 5118 case 5 : 5119 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:664:5: float_literal 5120 { 5121 root_0 = (CommonTree)adaptor.nil(); 5122 5123 5124 pushFollow(FOLLOW_float_literal_in_fixed_32bit_literal2647); 5125 float_literal124=float_literal(); 5126 state._fsp--; 5127 5128 adaptor.addChild(root_0, float_literal124.getTree()); 5129 5130 } 5131 break; 5132 case 6 : 5133 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:665:5: CHAR_LITERAL 5134 { 5135 root_0 = (CommonTree)adaptor.nil(); 5136 5137 5138 CHAR_LITERAL125=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_fixed_32bit_literal2653); 5139 CHAR_LITERAL125_tree = (CommonTree)adaptor.create(CHAR_LITERAL125); 5140 adaptor.addChild(root_0, CHAR_LITERAL125_tree); 5141 5142 } 5143 break; 5144 case 7 : 5145 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:666:5: BOOL_LITERAL 5146 { 5147 root_0 = (CommonTree)adaptor.nil(); 5148 5149 5150 BOOL_LITERAL126=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_fixed_32bit_literal2659); 5151 BOOL_LITERAL126_tree = (CommonTree)adaptor.create(BOOL_LITERAL126); 5152 adaptor.addChild(root_0, BOOL_LITERAL126_tree); 5153 5154 } 5155 break; 5156 5157 } 5158 retval.stop = input.LT(-1); 5159 5160 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 5161 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 5162 5163 } 5164 catch (RecognitionException re) { 5165 reportError(re); 5166 recover(input,re); 5167 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 5168 } 5169 finally { 5170 // do for sure before leaving 5171 } 5172 return retval; 5173 } 5174 // $ANTLR end "fixed_32bit_literal" 5175 5176 5177 public static class fixed_literal_return extends ParserRuleReturnScope { 5178 CommonTree tree; 5179 @Override 5180 public CommonTree getTree() { return tree; } 5181 }; 5182 5183 5184 // $ANTLR start "fixed_literal" 5185 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:668:1: fixed_literal : ( integer_literal | LONG_LITERAL | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | BOOL_LITERAL ); 5186 public final smaliParser.fixed_literal_return fixed_literal() throws RecognitionException { 5187 smaliParser.fixed_literal_return retval = new smaliParser.fixed_literal_return(); 5188 retval.start = input.LT(1); 5189 5190 CommonTree root_0 = null; 5191 5192 Token LONG_LITERAL128=null; 5193 Token SHORT_LITERAL129=null; 5194 Token BYTE_LITERAL130=null; 5195 Token CHAR_LITERAL133=null; 5196 Token BOOL_LITERAL134=null; 5197 ParserRuleReturnScope integer_literal127 =null; 5198 ParserRuleReturnScope float_literal131 =null; 5199 ParserRuleReturnScope double_literal132 =null; 5200 5201 CommonTree LONG_LITERAL128_tree=null; 5202 CommonTree SHORT_LITERAL129_tree=null; 5203 CommonTree BYTE_LITERAL130_tree=null; 5204 CommonTree CHAR_LITERAL133_tree=null; 5205 CommonTree BOOL_LITERAL134_tree=null; 5206 5207 try { 5208 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:669:3: ( integer_literal | LONG_LITERAL | SHORT_LITERAL | BYTE_LITERAL | float_literal | double_literal | CHAR_LITERAL | BOOL_LITERAL ) 5209 int alt19=8; 5210 switch ( input.LA(1) ) { 5211 case NEGATIVE_INTEGER_LITERAL: 5212 case POSITIVE_INTEGER_LITERAL: 5213 { 5214 alt19=1; 5215 } 5216 break; 5217 case LONG_LITERAL: 5218 { 5219 alt19=2; 5220 } 5221 break; 5222 case SHORT_LITERAL: 5223 { 5224 alt19=3; 5225 } 5226 break; 5227 case BYTE_LITERAL: 5228 { 5229 alt19=4; 5230 } 5231 break; 5232 case FLOAT_LITERAL: 5233 case FLOAT_LITERAL_OR_ID: 5234 { 5235 alt19=5; 5236 } 5237 break; 5238 case DOUBLE_LITERAL: 5239 case DOUBLE_LITERAL_OR_ID: 5240 { 5241 alt19=6; 5242 } 5243 break; 5244 case CHAR_LITERAL: 5245 { 5246 alt19=7; 5247 } 5248 break; 5249 case BOOL_LITERAL: 5250 { 5251 alt19=8; 5252 } 5253 break; 5254 default: 5255 NoViableAltException nvae = 5256 new NoViableAltException("", 19, 0, input); 5257 throw nvae; 5258 } 5259 switch (alt19) { 5260 case 1 : 5261 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:669:5: integer_literal 5262 { 5263 root_0 = (CommonTree)adaptor.nil(); 5264 5265 5266 pushFollow(FOLLOW_integer_literal_in_fixed_literal2669); 5267 integer_literal127=integer_literal(); 5268 state._fsp--; 5269 5270 adaptor.addChild(root_0, integer_literal127.getTree()); 5271 5272 } 5273 break; 5274 case 2 : 5275 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:670:5: LONG_LITERAL 5276 { 5277 root_0 = (CommonTree)adaptor.nil(); 5278 5279 5280 LONG_LITERAL128=(Token)match(input,LONG_LITERAL,FOLLOW_LONG_LITERAL_in_fixed_literal2675); 5281 LONG_LITERAL128_tree = (CommonTree)adaptor.create(LONG_LITERAL128); 5282 adaptor.addChild(root_0, LONG_LITERAL128_tree); 5283 5284 } 5285 break; 5286 case 3 : 5287 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:671:5: SHORT_LITERAL 5288 { 5289 root_0 = (CommonTree)adaptor.nil(); 5290 5291 5292 SHORT_LITERAL129=(Token)match(input,SHORT_LITERAL,FOLLOW_SHORT_LITERAL_in_fixed_literal2681); 5293 SHORT_LITERAL129_tree = (CommonTree)adaptor.create(SHORT_LITERAL129); 5294 adaptor.addChild(root_0, SHORT_LITERAL129_tree); 5295 5296 } 5297 break; 5298 case 4 : 5299 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:672:5: BYTE_LITERAL 5300 { 5301 root_0 = (CommonTree)adaptor.nil(); 5302 5303 5304 BYTE_LITERAL130=(Token)match(input,BYTE_LITERAL,FOLLOW_BYTE_LITERAL_in_fixed_literal2687); 5305 BYTE_LITERAL130_tree = (CommonTree)adaptor.create(BYTE_LITERAL130); 5306 adaptor.addChild(root_0, BYTE_LITERAL130_tree); 5307 5308 } 5309 break; 5310 case 5 : 5311 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:673:5: float_literal 5312 { 5313 root_0 = (CommonTree)adaptor.nil(); 5314 5315 5316 pushFollow(FOLLOW_float_literal_in_fixed_literal2693); 5317 float_literal131=float_literal(); 5318 state._fsp--; 5319 5320 adaptor.addChild(root_0, float_literal131.getTree()); 5321 5322 } 5323 break; 5324 case 6 : 5325 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:674:5: double_literal 5326 { 5327 root_0 = (CommonTree)adaptor.nil(); 5328 5329 5330 pushFollow(FOLLOW_double_literal_in_fixed_literal2699); 5331 double_literal132=double_literal(); 5332 state._fsp--; 5333 5334 adaptor.addChild(root_0, double_literal132.getTree()); 5335 5336 } 5337 break; 5338 case 7 : 5339 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:675:5: CHAR_LITERAL 5340 { 5341 root_0 = (CommonTree)adaptor.nil(); 5342 5343 5344 CHAR_LITERAL133=(Token)match(input,CHAR_LITERAL,FOLLOW_CHAR_LITERAL_in_fixed_literal2705); 5345 CHAR_LITERAL133_tree = (CommonTree)adaptor.create(CHAR_LITERAL133); 5346 adaptor.addChild(root_0, CHAR_LITERAL133_tree); 5347 5348 } 5349 break; 5350 case 8 : 5351 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:676:5: BOOL_LITERAL 5352 { 5353 root_0 = (CommonTree)adaptor.nil(); 5354 5355 5356 BOOL_LITERAL134=(Token)match(input,BOOL_LITERAL,FOLLOW_BOOL_LITERAL_in_fixed_literal2711); 5357 BOOL_LITERAL134_tree = (CommonTree)adaptor.create(BOOL_LITERAL134); 5358 adaptor.addChild(root_0, BOOL_LITERAL134_tree); 5359 5360 } 5361 break; 5362 5363 } 5364 retval.stop = input.LT(-1); 5365 5366 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 5367 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 5368 5369 } 5370 catch (RecognitionException re) { 5371 reportError(re); 5372 recover(input,re); 5373 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 5374 } 5375 finally { 5376 // do for sure before leaving 5377 } 5378 return retval; 5379 } 5380 // $ANTLR end "fixed_literal" 5381 5382 5383 public static class array_literal_return extends ParserRuleReturnScope { 5384 CommonTree tree; 5385 @Override 5386 public CommonTree getTree() { return tree; } 5387 }; 5388 5389 5390 // $ANTLR start "array_literal" 5391 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:678:1: array_literal : OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) ; 5392 public final smaliParser.array_literal_return array_literal() throws RecognitionException { 5393 smaliParser.array_literal_return retval = new smaliParser.array_literal_return(); 5394 retval.start = input.LT(1); 5395 5396 CommonTree root_0 = null; 5397 5398 Token OPEN_BRACE135=null; 5399 Token COMMA137=null; 5400 Token CLOSE_BRACE139=null; 5401 ParserRuleReturnScope literal136 =null; 5402 ParserRuleReturnScope literal138 =null; 5403 5404 CommonTree OPEN_BRACE135_tree=null; 5405 CommonTree COMMA137_tree=null; 5406 CommonTree CLOSE_BRACE139_tree=null; 5407 RewriteRuleTokenStream stream_CLOSE_BRACE=new RewriteRuleTokenStream(adaptor,"token CLOSE_BRACE"); 5408 RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); 5409 RewriteRuleTokenStream stream_OPEN_BRACE=new RewriteRuleTokenStream(adaptor,"token OPEN_BRACE"); 5410 RewriteRuleSubtreeStream stream_literal=new RewriteRuleSubtreeStream(adaptor,"rule literal"); 5411 5412 try { 5413 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:3: ( OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) ) 5414 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:5: OPEN_BRACE ( literal ( COMMA literal )* |) CLOSE_BRACE 5415 { 5416 OPEN_BRACE135=(Token)match(input,OPEN_BRACE,FOLLOW_OPEN_BRACE_in_array_literal2721); 5417 stream_OPEN_BRACE.add(OPEN_BRACE135); 5418 5419 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:16: ( literal ( COMMA literal )* |) 5420 int alt21=2; 5421 int LA21_0 = input.LA(1); 5422 if ( (LA21_0==ARRAY_DESCRIPTOR||(LA21_0 >= BOOL_LITERAL && LA21_0 <= BYTE_LITERAL)||(LA21_0 >= CHAR_LITERAL && LA21_0 <= CLASS_DESCRIPTOR)||(LA21_0 >= DOUBLE_LITERAL && LA21_0 <= DOUBLE_LITERAL_OR_ID)||LA21_0==ENUM_DIRECTIVE||(LA21_0 >= FLOAT_LITERAL && LA21_0 <= FLOAT_LITERAL_OR_ID)||LA21_0==LONG_LITERAL||(LA21_0 >= NEGATIVE_INTEGER_LITERAL && LA21_0 <= OPEN_BRACE)||(LA21_0 >= POSITIVE_INTEGER_LITERAL && LA21_0 <= PRIMITIVE_TYPE)||LA21_0==SHORT_LITERAL||(LA21_0 >= STRING_LITERAL && LA21_0 <= SUBANNOTATION_DIRECTIVE)||LA21_0==VOID_TYPE) ) { 5423 alt21=1; 5424 } 5425 else if ( (LA21_0==CLOSE_BRACE) ) { 5426 alt21=2; 5427 } 5428 5429 else { 5430 NoViableAltException nvae = 5431 new NoViableAltException("", 21, 0, input); 5432 throw nvae; 5433 } 5434 5435 switch (alt21) { 5436 case 1 : 5437 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:17: literal ( COMMA literal )* 5438 { 5439 pushFollow(FOLLOW_literal_in_array_literal2724); 5440 literal136=literal(); 5441 state._fsp--; 5442 5443 stream_literal.add(literal136.getTree()); 5444 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:25: ( COMMA literal )* 5445 loop20: 5446 while (true) { 5447 int alt20=2; 5448 int LA20_0 = input.LA(1); 5449 if ( (LA20_0==COMMA) ) { 5450 alt20=1; 5451 } 5452 5453 switch (alt20) { 5454 case 1 : 5455 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:26: COMMA literal 5456 { 5457 COMMA137=(Token)match(input,COMMA,FOLLOW_COMMA_in_array_literal2727); 5458 stream_COMMA.add(COMMA137); 5459 5460 pushFollow(FOLLOW_literal_in_array_literal2729); 5461 literal138=literal(); 5462 state._fsp--; 5463 5464 stream_literal.add(literal138.getTree()); 5465 } 5466 break; 5467 5468 default : 5469 break loop20; 5470 } 5471 } 5472 5473 } 5474 break; 5475 case 2 : 5476 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:679:44: 5477 { 5478 } 5479 break; 5480 5481 } 5482 5483 CLOSE_BRACE139=(Token)match(input,CLOSE_BRACE,FOLLOW_CLOSE_BRACE_in_array_literal2737); 5484 stream_CLOSE_BRACE.add(CLOSE_BRACE139); 5485 5486 // AST REWRITE 5487 // elements: literal 5488 // token labels: 5489 // rule labels: retval 5490 // token list labels: 5491 // rule list labels: 5492 // wildcard labels: 5493 retval.tree = root_0; 5494 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 5495 5496 root_0 = (CommonTree)adaptor.nil(); 5497 // 680:5: -> ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) 5498 { 5499 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:680:8: ^( I_ENCODED_ARRAY[$start, \"I_ENCODED_ARRAY\"] ( literal )* ) 5500 { 5501 CommonTree root_1 = (CommonTree)adaptor.nil(); 5502 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ENCODED_ARRAY, (retval.start), "I_ENCODED_ARRAY"), root_1); 5503 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:680:53: ( literal )* 5504 while ( stream_literal.hasNext() ) { 5505 adaptor.addChild(root_1, stream_literal.nextTree()); 5506 } 5507 stream_literal.reset(); 5508 5509 adaptor.addChild(root_0, root_1); 5510 } 5511 5512 } 5513 5514 5515 retval.tree = root_0; 5516 5517 } 5518 5519 retval.stop = input.LT(-1); 5520 5521 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 5522 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 5523 5524 } 5525 catch (RecognitionException re) { 5526 reportError(re); 5527 recover(input,re); 5528 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 5529 } 5530 finally { 5531 // do for sure before leaving 5532 } 5533 return retval; 5534 } 5535 // $ANTLR end "array_literal" 5536 5537 5538 public static class annotation_element_return extends ParserRuleReturnScope { 5539 CommonTree tree; 5540 @Override 5541 public CommonTree getTree() { return tree; } 5542 }; 5543 5544 5545 // $ANTLR start "annotation_element" 5546 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:682:1: annotation_element : simple_name EQUAL literal -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) ; 5547 public final smaliParser.annotation_element_return annotation_element() throws RecognitionException { 5548 smaliParser.annotation_element_return retval = new smaliParser.annotation_element_return(); 5549 retval.start = input.LT(1); 5550 5551 CommonTree root_0 = null; 5552 5553 Token EQUAL141=null; 5554 ParserRuleReturnScope simple_name140 =null; 5555 ParserRuleReturnScope literal142 =null; 5556 5557 CommonTree EQUAL141_tree=null; 5558 RewriteRuleTokenStream stream_EQUAL=new RewriteRuleTokenStream(adaptor,"token EQUAL"); 5559 RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name"); 5560 RewriteRuleSubtreeStream stream_literal=new RewriteRuleSubtreeStream(adaptor,"rule literal"); 5561 5562 try { 5563 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:683:3: ( simple_name EQUAL literal -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) ) 5564 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:683:5: simple_name EQUAL literal 5565 { 5566 pushFollow(FOLLOW_simple_name_in_annotation_element2761); 5567 simple_name140=simple_name(); 5568 state._fsp--; 5569 5570 stream_simple_name.add(simple_name140.getTree()); 5571 EQUAL141=(Token)match(input,EQUAL,FOLLOW_EQUAL_in_annotation_element2763); 5572 stream_EQUAL.add(EQUAL141); 5573 5574 pushFollow(FOLLOW_literal_in_annotation_element2765); 5575 literal142=literal(); 5576 state._fsp--; 5577 5578 stream_literal.add(literal142.getTree()); 5579 // AST REWRITE 5580 // elements: simple_name, literal 5581 // token labels: 5582 // rule labels: retval 5583 // token list labels: 5584 // rule list labels: 5585 // wildcard labels: 5586 retval.tree = root_0; 5587 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 5588 5589 root_0 = (CommonTree)adaptor.nil(); 5590 // 684:5: -> ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) 5591 { 5592 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:684:8: ^( I_ANNOTATION_ELEMENT[$start, \"I_ANNOTATION_ELEMENT\"] simple_name literal ) 5593 { 5594 CommonTree root_1 = (CommonTree)adaptor.nil(); 5595 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATION_ELEMENT, (retval.start), "I_ANNOTATION_ELEMENT"), root_1); 5596 adaptor.addChild(root_1, stream_simple_name.nextTree()); 5597 adaptor.addChild(root_1, stream_literal.nextTree()); 5598 adaptor.addChild(root_0, root_1); 5599 } 5600 5601 } 5602 5603 5604 retval.tree = root_0; 5605 5606 } 5607 5608 retval.stop = input.LT(-1); 5609 5610 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 5611 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 5612 5613 } 5614 catch (RecognitionException re) { 5615 reportError(re); 5616 recover(input,re); 5617 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 5618 } 5619 finally { 5620 // do for sure before leaving 5621 } 5622 return retval; 5623 } 5624 // $ANTLR end "annotation_element" 5625 5626 5627 public static class annotation_return extends ParserRuleReturnScope { 5628 CommonTree tree; 5629 @Override 5630 public CommonTree getTree() { return tree; } 5631 }; 5632 5633 5634 // $ANTLR start "annotation" 5635 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:686:1: annotation : ANNOTATION_DIRECTIVE ANNOTATION_VISIBILITY CLASS_DESCRIPTOR ( annotation_element )* END_ANNOTATION_DIRECTIVE -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) ; 5636 public final smaliParser.annotation_return annotation() throws RecognitionException { 5637 smaliParser.annotation_return retval = new smaliParser.annotation_return(); 5638 retval.start = input.LT(1); 5639 5640 CommonTree root_0 = null; 5641 5642 Token ANNOTATION_DIRECTIVE143=null; 5643 Token ANNOTATION_VISIBILITY144=null; 5644 Token CLASS_DESCRIPTOR145=null; 5645 Token END_ANNOTATION_DIRECTIVE147=null; 5646 ParserRuleReturnScope annotation_element146 =null; 5647 5648 CommonTree ANNOTATION_DIRECTIVE143_tree=null; 5649 CommonTree ANNOTATION_VISIBILITY144_tree=null; 5650 CommonTree CLASS_DESCRIPTOR145_tree=null; 5651 CommonTree END_ANNOTATION_DIRECTIVE147_tree=null; 5652 RewriteRuleTokenStream stream_ANNOTATION_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token ANNOTATION_DIRECTIVE"); 5653 RewriteRuleTokenStream stream_END_ANNOTATION_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_ANNOTATION_DIRECTIVE"); 5654 RewriteRuleTokenStream stream_ANNOTATION_VISIBILITY=new RewriteRuleTokenStream(adaptor,"token ANNOTATION_VISIBILITY"); 5655 RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR"); 5656 RewriteRuleSubtreeStream stream_annotation_element=new RewriteRuleSubtreeStream(adaptor,"rule annotation_element"); 5657 5658 try { 5659 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:687:3: ( ANNOTATION_DIRECTIVE ANNOTATION_VISIBILITY CLASS_DESCRIPTOR ( annotation_element )* END_ANNOTATION_DIRECTIVE -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) ) 5660 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:687:5: ANNOTATION_DIRECTIVE ANNOTATION_VISIBILITY CLASS_DESCRIPTOR ( annotation_element )* END_ANNOTATION_DIRECTIVE 5661 { 5662 ANNOTATION_DIRECTIVE143=(Token)match(input,ANNOTATION_DIRECTIVE,FOLLOW_ANNOTATION_DIRECTIVE_in_annotation2790); 5663 stream_ANNOTATION_DIRECTIVE.add(ANNOTATION_DIRECTIVE143); 5664 5665 ANNOTATION_VISIBILITY144=(Token)match(input,ANNOTATION_VISIBILITY,FOLLOW_ANNOTATION_VISIBILITY_in_annotation2792); 5666 stream_ANNOTATION_VISIBILITY.add(ANNOTATION_VISIBILITY144); 5667 5668 CLASS_DESCRIPTOR145=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_annotation2794); 5669 stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR145); 5670 5671 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:688:5: ( annotation_element )* 5672 loop22: 5673 while (true) { 5674 int alt22=2; 5675 int LA22_0 = input.LA(1); 5676 if ( (LA22_0==ACCESS_SPEC||LA22_0==ANNOTATION_VISIBILITY||LA22_0==BOOL_LITERAL||LA22_0==DOUBLE_LITERAL_OR_ID||LA22_0==FLOAT_LITERAL_OR_ID||(LA22_0 >= INSTRUCTION_FORMAT10t && LA22_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA22_0==INSTRUCTION_FORMAT11x||LA22_0==INSTRUCTION_FORMAT12x_OR_ID||(LA22_0 >= INSTRUCTION_FORMAT21c_FIELD && LA22_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA22_0==INSTRUCTION_FORMAT21t||(LA22_0 >= INSTRUCTION_FORMAT22c_FIELD && LA22_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA22_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA22_0 <= INSTRUCTION_FORMAT22t)||LA22_0==INSTRUCTION_FORMAT23x||(LA22_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA22_0 <= INSTRUCTION_FORMAT31t)||(LA22_0 >= INSTRUCTION_FORMAT35c_METHOD && LA22_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA22_0==INSTRUCTION_FORMAT51l||(LA22_0 >= NEGATIVE_INTEGER_LITERAL && LA22_0 <= NULL_LITERAL)||(LA22_0 >= PARAM_LIST_OR_ID && LA22_0 <= PRIMITIVE_TYPE)||LA22_0==REGISTER||LA22_0==SIMPLE_NAME||(LA22_0 >= VERIFICATION_ERROR_TYPE && LA22_0 <= VOID_TYPE)) ) { 5677 alt22=1; 5678 } 5679 5680 switch (alt22) { 5681 case 1 : 5682 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:688:5: annotation_element 5683 { 5684 pushFollow(FOLLOW_annotation_element_in_annotation2800); 5685 annotation_element146=annotation_element(); 5686 state._fsp--; 5687 5688 stream_annotation_element.add(annotation_element146.getTree()); 5689 } 5690 break; 5691 5692 default : 5693 break loop22; 5694 } 5695 } 5696 5697 END_ANNOTATION_DIRECTIVE147=(Token)match(input,END_ANNOTATION_DIRECTIVE,FOLLOW_END_ANNOTATION_DIRECTIVE_in_annotation2803); 5698 stream_END_ANNOTATION_DIRECTIVE.add(END_ANNOTATION_DIRECTIVE147); 5699 5700 // AST REWRITE 5701 // elements: CLASS_DESCRIPTOR, annotation_element, ANNOTATION_VISIBILITY 5702 // token labels: 5703 // rule labels: retval 5704 // token list labels: 5705 // rule list labels: 5706 // wildcard labels: 5707 retval.tree = root_0; 5708 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 5709 5710 root_0 = (CommonTree)adaptor.nil(); 5711 // 689:5: -> ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) 5712 { 5713 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:689:8: ^( I_ANNOTATION[$start, \"I_ANNOTATION\"] ANNOTATION_VISIBILITY ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) 5714 { 5715 CommonTree root_1 = (CommonTree)adaptor.nil(); 5716 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ANNOTATION, (retval.start), "I_ANNOTATION"), root_1); 5717 adaptor.addChild(root_1, stream_ANNOTATION_VISIBILITY.nextNode()); 5718 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:689:69: ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) 5719 { 5720 CommonTree root_2 = (CommonTree)adaptor.nil(); 5721 root_2 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SUBANNOTATION, (retval.start), "I_SUBANNOTATION"), root_2); 5722 adaptor.addChild(root_2, stream_CLASS_DESCRIPTOR.nextNode()); 5723 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:689:131: ( annotation_element )* 5724 while ( stream_annotation_element.hasNext() ) { 5725 adaptor.addChild(root_2, stream_annotation_element.nextTree()); 5726 } 5727 stream_annotation_element.reset(); 5728 5729 adaptor.addChild(root_1, root_2); 5730 } 5731 5732 adaptor.addChild(root_0, root_1); 5733 } 5734 5735 } 5736 5737 5738 retval.tree = root_0; 5739 5740 } 5741 5742 retval.stop = input.LT(-1); 5743 5744 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 5745 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 5746 5747 } 5748 catch (RecognitionException re) { 5749 reportError(re); 5750 recover(input,re); 5751 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 5752 } 5753 finally { 5754 // do for sure before leaving 5755 } 5756 return retval; 5757 } 5758 // $ANTLR end "annotation" 5759 5760 5761 public static class subannotation_return extends ParserRuleReturnScope { 5762 CommonTree tree; 5763 @Override 5764 public CommonTree getTree() { return tree; } 5765 }; 5766 5767 5768 // $ANTLR start "subannotation" 5769 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:691:1: subannotation : SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ; 5770 public final smaliParser.subannotation_return subannotation() throws RecognitionException { 5771 smaliParser.subannotation_return retval = new smaliParser.subannotation_return(); 5772 retval.start = input.LT(1); 5773 5774 CommonTree root_0 = null; 5775 5776 Token SUBANNOTATION_DIRECTIVE148=null; 5777 Token CLASS_DESCRIPTOR149=null; 5778 Token END_SUBANNOTATION_DIRECTIVE151=null; 5779 ParserRuleReturnScope annotation_element150 =null; 5780 5781 CommonTree SUBANNOTATION_DIRECTIVE148_tree=null; 5782 CommonTree CLASS_DESCRIPTOR149_tree=null; 5783 CommonTree END_SUBANNOTATION_DIRECTIVE151_tree=null; 5784 RewriteRuleTokenStream stream_SUBANNOTATION_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token SUBANNOTATION_DIRECTIVE"); 5785 RewriteRuleTokenStream stream_END_SUBANNOTATION_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token END_SUBANNOTATION_DIRECTIVE"); 5786 RewriteRuleTokenStream stream_CLASS_DESCRIPTOR=new RewriteRuleTokenStream(adaptor,"token CLASS_DESCRIPTOR"); 5787 RewriteRuleSubtreeStream stream_annotation_element=new RewriteRuleSubtreeStream(adaptor,"rule annotation_element"); 5788 5789 try { 5790 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:692:3: ( SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) ) 5791 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:692:5: SUBANNOTATION_DIRECTIVE CLASS_DESCRIPTOR ( annotation_element )* END_SUBANNOTATION_DIRECTIVE 5792 { 5793 SUBANNOTATION_DIRECTIVE148=(Token)match(input,SUBANNOTATION_DIRECTIVE,FOLLOW_SUBANNOTATION_DIRECTIVE_in_subannotation2836); 5794 stream_SUBANNOTATION_DIRECTIVE.add(SUBANNOTATION_DIRECTIVE148); 5795 5796 CLASS_DESCRIPTOR149=(Token)match(input,CLASS_DESCRIPTOR,FOLLOW_CLASS_DESCRIPTOR_in_subannotation2838); 5797 stream_CLASS_DESCRIPTOR.add(CLASS_DESCRIPTOR149); 5798 5799 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:692:46: ( annotation_element )* 5800 loop23: 5801 while (true) { 5802 int alt23=2; 5803 int LA23_0 = input.LA(1); 5804 if ( (LA23_0==ACCESS_SPEC||LA23_0==ANNOTATION_VISIBILITY||LA23_0==BOOL_LITERAL||LA23_0==DOUBLE_LITERAL_OR_ID||LA23_0==FLOAT_LITERAL_OR_ID||(LA23_0 >= INSTRUCTION_FORMAT10t && LA23_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA23_0==INSTRUCTION_FORMAT11x||LA23_0==INSTRUCTION_FORMAT12x_OR_ID||(LA23_0 >= INSTRUCTION_FORMAT21c_FIELD && LA23_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA23_0==INSTRUCTION_FORMAT21t||(LA23_0 >= INSTRUCTION_FORMAT22c_FIELD && LA23_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA23_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA23_0 <= INSTRUCTION_FORMAT22t)||LA23_0==INSTRUCTION_FORMAT23x||(LA23_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA23_0 <= INSTRUCTION_FORMAT31t)||(LA23_0 >= INSTRUCTION_FORMAT35c_METHOD && LA23_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA23_0==INSTRUCTION_FORMAT51l||(LA23_0 >= NEGATIVE_INTEGER_LITERAL && LA23_0 <= NULL_LITERAL)||(LA23_0 >= PARAM_LIST_OR_ID && LA23_0 <= PRIMITIVE_TYPE)||LA23_0==REGISTER||LA23_0==SIMPLE_NAME||(LA23_0 >= VERIFICATION_ERROR_TYPE && LA23_0 <= VOID_TYPE)) ) { 5805 alt23=1; 5806 } 5807 5808 switch (alt23) { 5809 case 1 : 5810 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:692:46: annotation_element 5811 { 5812 pushFollow(FOLLOW_annotation_element_in_subannotation2840); 5813 annotation_element150=annotation_element(); 5814 state._fsp--; 5815 5816 stream_annotation_element.add(annotation_element150.getTree()); 5817 } 5818 break; 5819 5820 default : 5821 break loop23; 5822 } 5823 } 5824 5825 END_SUBANNOTATION_DIRECTIVE151=(Token)match(input,END_SUBANNOTATION_DIRECTIVE,FOLLOW_END_SUBANNOTATION_DIRECTIVE_in_subannotation2843); 5826 stream_END_SUBANNOTATION_DIRECTIVE.add(END_SUBANNOTATION_DIRECTIVE151); 5827 5828 // AST REWRITE 5829 // elements: CLASS_DESCRIPTOR, annotation_element 5830 // token labels: 5831 // rule labels: retval 5832 // token list labels: 5833 // rule list labels: 5834 // wildcard labels: 5835 retval.tree = root_0; 5836 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 5837 5838 root_0 = (CommonTree)adaptor.nil(); 5839 // 693:5: -> ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) 5840 { 5841 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:693:8: ^( I_SUBANNOTATION[$start, \"I_SUBANNOTATION\"] CLASS_DESCRIPTOR ( annotation_element )* ) 5842 { 5843 CommonTree root_1 = (CommonTree)adaptor.nil(); 5844 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_SUBANNOTATION, (retval.start), "I_SUBANNOTATION"), root_1); 5845 adaptor.addChild(root_1, stream_CLASS_DESCRIPTOR.nextNode()); 5846 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:693:70: ( annotation_element )* 5847 while ( stream_annotation_element.hasNext() ) { 5848 adaptor.addChild(root_1, stream_annotation_element.nextTree()); 5849 } 5850 stream_annotation_element.reset(); 5851 5852 adaptor.addChild(root_0, root_1); 5853 } 5854 5855 } 5856 5857 5858 retval.tree = root_0; 5859 5860 } 5861 5862 retval.stop = input.LT(-1); 5863 5864 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 5865 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 5866 5867 } 5868 catch (RecognitionException re) { 5869 reportError(re); 5870 recover(input,re); 5871 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 5872 } 5873 finally { 5874 // do for sure before leaving 5875 } 5876 return retval; 5877 } 5878 // $ANTLR end "subannotation" 5879 5880 5881 public static class enum_literal_return extends ParserRuleReturnScope { 5882 CommonTree tree; 5883 @Override 5884 public CommonTree getTree() { return tree; } 5885 }; 5886 5887 5888 // $ANTLR start "enum_literal" 5889 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:695:1: enum_literal : ENUM_DIRECTIVE reference_type_descriptor ARROW simple_name COLON reference_type_descriptor -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) ; 5890 public final smaliParser.enum_literal_return enum_literal() throws RecognitionException { 5891 smaliParser.enum_literal_return retval = new smaliParser.enum_literal_return(); 5892 retval.start = input.LT(1); 5893 5894 CommonTree root_0 = null; 5895 5896 Token ENUM_DIRECTIVE152=null; 5897 Token ARROW154=null; 5898 Token COLON156=null; 5899 ParserRuleReturnScope reference_type_descriptor153 =null; 5900 ParserRuleReturnScope simple_name155 =null; 5901 ParserRuleReturnScope reference_type_descriptor157 =null; 5902 5903 CommonTree ENUM_DIRECTIVE152_tree=null; 5904 CommonTree ARROW154_tree=null; 5905 CommonTree COLON156_tree=null; 5906 RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); 5907 RewriteRuleTokenStream stream_ENUM_DIRECTIVE=new RewriteRuleTokenStream(adaptor,"token ENUM_DIRECTIVE"); 5908 RewriteRuleTokenStream stream_ARROW=new RewriteRuleTokenStream(adaptor,"token ARROW"); 5909 RewriteRuleSubtreeStream stream_reference_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule reference_type_descriptor"); 5910 RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name"); 5911 5912 try { 5913 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:696:3: ( ENUM_DIRECTIVE reference_type_descriptor ARROW simple_name COLON reference_type_descriptor -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) ) 5914 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:696:5: ENUM_DIRECTIVE reference_type_descriptor ARROW simple_name COLON reference_type_descriptor 5915 { 5916 ENUM_DIRECTIVE152=(Token)match(input,ENUM_DIRECTIVE,FOLLOW_ENUM_DIRECTIVE_in_enum_literal2869); 5917 stream_ENUM_DIRECTIVE.add(ENUM_DIRECTIVE152); 5918 5919 pushFollow(FOLLOW_reference_type_descriptor_in_enum_literal2871); 5920 reference_type_descriptor153=reference_type_descriptor(); 5921 state._fsp--; 5922 5923 stream_reference_type_descriptor.add(reference_type_descriptor153.getTree()); 5924 ARROW154=(Token)match(input,ARROW,FOLLOW_ARROW_in_enum_literal2873); 5925 stream_ARROW.add(ARROW154); 5926 5927 pushFollow(FOLLOW_simple_name_in_enum_literal2875); 5928 simple_name155=simple_name(); 5929 state._fsp--; 5930 5931 stream_simple_name.add(simple_name155.getTree()); 5932 COLON156=(Token)match(input,COLON,FOLLOW_COLON_in_enum_literal2877); 5933 stream_COLON.add(COLON156); 5934 5935 pushFollow(FOLLOW_reference_type_descriptor_in_enum_literal2879); 5936 reference_type_descriptor157=reference_type_descriptor(); 5937 state._fsp--; 5938 5939 stream_reference_type_descriptor.add(reference_type_descriptor157.getTree()); 5940 // AST REWRITE 5941 // elements: reference_type_descriptor, reference_type_descriptor, simple_name 5942 // token labels: 5943 // rule labels: retval 5944 // token list labels: 5945 // rule list labels: 5946 // wildcard labels: 5947 retval.tree = root_0; 5948 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 5949 5950 root_0 = (CommonTree)adaptor.nil(); 5951 // 697:3: -> ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) 5952 { 5953 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:697:6: ^( I_ENCODED_ENUM reference_type_descriptor simple_name reference_type_descriptor ) 5954 { 5955 CommonTree root_1 = (CommonTree)adaptor.nil(); 5956 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ENCODED_ENUM, "I_ENCODED_ENUM"), root_1); 5957 adaptor.addChild(root_1, stream_reference_type_descriptor.nextTree()); 5958 adaptor.addChild(root_1, stream_simple_name.nextTree()); 5959 adaptor.addChild(root_1, stream_reference_type_descriptor.nextTree()); 5960 adaptor.addChild(root_0, root_1); 5961 } 5962 5963 } 5964 5965 5966 retval.tree = root_0; 5967 5968 } 5969 5970 retval.stop = input.LT(-1); 5971 5972 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 5973 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 5974 5975 } 5976 catch (RecognitionException re) { 5977 reportError(re); 5978 recover(input,re); 5979 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 5980 } 5981 finally { 5982 // do for sure before leaving 5983 } 5984 return retval; 5985 } 5986 // $ANTLR end "enum_literal" 5987 5988 5989 public static class type_field_method_literal_return extends ParserRuleReturnScope { 5990 CommonTree tree; 5991 @Override 5992 public CommonTree getTree() { return tree; } 5993 }; 5994 5995 5996 // $ANTLR start "type_field_method_literal" 5997 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:699:1: type_field_method_literal : ( reference_type_descriptor ( ARROW ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD reference_type_descriptor member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD reference_type_descriptor member_name method_prototype ) ) | -> reference_type_descriptor ) | PRIMITIVE_TYPE | VOID_TYPE ); 5998 public final smaliParser.type_field_method_literal_return type_field_method_literal() throws RecognitionException { 5999 smaliParser.type_field_method_literal_return retval = new smaliParser.type_field_method_literal_return(); 6000 retval.start = input.LT(1); 6001 6002 CommonTree root_0 = null; 6003 6004 Token ARROW159=null; 6005 Token COLON161=null; 6006 Token PRIMITIVE_TYPE165=null; 6007 Token VOID_TYPE166=null; 6008 ParserRuleReturnScope reference_type_descriptor158 =null; 6009 ParserRuleReturnScope member_name160 =null; 6010 ParserRuleReturnScope nonvoid_type_descriptor162 =null; 6011 ParserRuleReturnScope member_name163 =null; 6012 ParserRuleReturnScope method_prototype164 =null; 6013 6014 CommonTree ARROW159_tree=null; 6015 CommonTree COLON161_tree=null; 6016 CommonTree PRIMITIVE_TYPE165_tree=null; 6017 CommonTree VOID_TYPE166_tree=null; 6018 RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); 6019 RewriteRuleTokenStream stream_ARROW=new RewriteRuleTokenStream(adaptor,"token ARROW"); 6020 RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor"); 6021 RewriteRuleSubtreeStream stream_method_prototype=new RewriteRuleSubtreeStream(adaptor,"rule method_prototype"); 6022 RewriteRuleSubtreeStream stream_reference_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule reference_type_descriptor"); 6023 RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name"); 6024 6025 try { 6026 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:700:3: ( reference_type_descriptor ( ARROW ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD reference_type_descriptor member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD reference_type_descriptor member_name method_prototype ) ) | -> reference_type_descriptor ) | PRIMITIVE_TYPE | VOID_TYPE ) 6027 int alt26=3; 6028 switch ( input.LA(1) ) { 6029 case ARRAY_DESCRIPTOR: 6030 case CLASS_DESCRIPTOR: 6031 { 6032 alt26=1; 6033 } 6034 break; 6035 case PRIMITIVE_TYPE: 6036 { 6037 alt26=2; 6038 } 6039 break; 6040 case VOID_TYPE: 6041 { 6042 alt26=3; 6043 } 6044 break; 6045 default: 6046 NoViableAltException nvae = 6047 new NoViableAltException("", 26, 0, input); 6048 throw nvae; 6049 } 6050 switch (alt26) { 6051 case 1 : 6052 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:700:5: reference_type_descriptor ( ARROW ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD reference_type_descriptor member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD reference_type_descriptor member_name method_prototype ) ) | -> reference_type_descriptor ) 6053 { 6054 pushFollow(FOLLOW_reference_type_descriptor_in_type_field_method_literal2903); 6055 reference_type_descriptor158=reference_type_descriptor(); 6056 state._fsp--; 6057 6058 stream_reference_type_descriptor.add(reference_type_descriptor158.getTree()); 6059 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:701:5: ( ARROW ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD reference_type_descriptor member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD reference_type_descriptor member_name method_prototype ) ) | -> reference_type_descriptor ) 6060 int alt25=2; 6061 int LA25_0 = input.LA(1); 6062 if ( (LA25_0==ARROW) ) { 6063 alt25=1; 6064 } 6065 else if ( (LA25_0==EOF||(LA25_0 >= ACCESS_SPEC && LA25_0 <= ANNOTATION_VISIBILITY)||LA25_0==BOOL_LITERAL||(LA25_0 >= CLASS_DIRECTIVE && LA25_0 <= CLOSE_BRACE)||LA25_0==COMMA||(LA25_0 >= DOUBLE_LITERAL_OR_ID && LA25_0 <= END_ANNOTATION_DIRECTIVE)||LA25_0==END_FIELD_DIRECTIVE||LA25_0==END_SUBANNOTATION_DIRECTIVE||LA25_0==FIELD_DIRECTIVE||LA25_0==FLOAT_LITERAL_OR_ID||LA25_0==IMPLEMENTS_DIRECTIVE||(LA25_0 >= INSTRUCTION_FORMAT10t && LA25_0 <= INSTRUCTION_FORMAT10x_ODEX)||LA25_0==INSTRUCTION_FORMAT11x||LA25_0==INSTRUCTION_FORMAT12x_OR_ID||(LA25_0 >= INSTRUCTION_FORMAT21c_FIELD && LA25_0 <= INSTRUCTION_FORMAT21c_TYPE)||LA25_0==INSTRUCTION_FORMAT21t||(LA25_0 >= INSTRUCTION_FORMAT22c_FIELD && LA25_0 <= INSTRUCTION_FORMAT22cs_FIELD)||(LA25_0 >= INSTRUCTION_FORMAT22s_OR_ID && LA25_0 <= INSTRUCTION_FORMAT22t)||LA25_0==INSTRUCTION_FORMAT23x||(LA25_0 >= INSTRUCTION_FORMAT31i_OR_ID && LA25_0 <= INSTRUCTION_FORMAT31t)||(LA25_0 >= INSTRUCTION_FORMAT35c_METHOD && LA25_0 <= INSTRUCTION_FORMAT35ms_METHOD)||LA25_0==INSTRUCTION_FORMAT51l||(LA25_0 >= METHOD_DIRECTIVE && LA25_0 <= NULL_LITERAL)||(LA25_0 >= PARAM_LIST_OR_ID && LA25_0 <= PRIMITIVE_TYPE)||LA25_0==REGISTER||(LA25_0 >= SIMPLE_NAME && LA25_0 <= SOURCE_DIRECTIVE)||(LA25_0 >= SUPER_DIRECTIVE && LA25_0 <= VOID_TYPE)) ) { 6066 alt25=2; 6067 } 6068 6069 else { 6070 NoViableAltException nvae = 6071 new NoViableAltException("", 25, 0, input); 6072 throw nvae; 6073 } 6074 6075 switch (alt25) { 6076 case 1 : 6077 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:701:7: ARROW ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD reference_type_descriptor member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD reference_type_descriptor member_name method_prototype ) ) 6078 { 6079 ARROW159=(Token)match(input,ARROW,FOLLOW_ARROW_in_type_field_method_literal2911); 6080 stream_ARROW.add(ARROW159); 6081 6082 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:702:7: ( member_name COLON nonvoid_type_descriptor -> ^( I_ENCODED_FIELD reference_type_descriptor member_name nonvoid_type_descriptor ) | member_name method_prototype -> ^( I_ENCODED_METHOD reference_type_descriptor member_name method_prototype ) ) 6083 int alt24=2; 6084 switch ( input.LA(1) ) { 6085 case SIMPLE_NAME: 6086 { 6087 int LA24_1 = input.LA(2); 6088 if ( (LA24_1==COLON) ) { 6089 alt24=1; 6090 } 6091 else if ( (LA24_1==OPEN_PAREN) ) { 6092 alt24=2; 6093 } 6094 6095 else { 6096 int nvaeMark = input.mark(); 6097 try { 6098 input.consume(); 6099 NoViableAltException nvae = 6100 new NoViableAltException("", 24, 1, input); 6101 throw nvae; 6102 } finally { 6103 input.rewind(nvaeMark); 6104 } 6105 } 6106 6107 } 6108 break; 6109 case ACCESS_SPEC: 6110 { 6111 int LA24_2 = input.LA(2); 6112 if ( (LA24_2==COLON) ) { 6113 alt24=1; 6114 } 6115 else if ( (LA24_2==OPEN_PAREN) ) { 6116 alt24=2; 6117 } 6118 6119 else { 6120 int nvaeMark = input.mark(); 6121 try { 6122 input.consume(); 6123 NoViableAltException nvae = 6124 new NoViableAltException("", 24, 2, input); 6125 throw nvae; 6126 } finally { 6127 input.rewind(nvaeMark); 6128 } 6129 } 6130 6131 } 6132 break; 6133 case VERIFICATION_ERROR_TYPE: 6134 { 6135 int LA24_3 = input.LA(2); 6136 if ( (LA24_3==COLON) ) { 6137 alt24=1; 6138 } 6139 else if ( (LA24_3==OPEN_PAREN) ) { 6140 alt24=2; 6141 } 6142 6143 else { 6144 int nvaeMark = input.mark(); 6145 try { 6146 input.consume(); 6147 NoViableAltException nvae = 6148 new NoViableAltException("", 24, 3, input); 6149 throw nvae; 6150 } finally { 6151 input.rewind(nvaeMark); 6152 } 6153 } 6154 6155 } 6156 break; 6157 case POSITIVE_INTEGER_LITERAL: 6158 { 6159 int LA24_4 = input.LA(2); 6160 if ( (LA24_4==COLON) ) { 6161 alt24=1; 6162 } 6163 else if ( (LA24_4==OPEN_PAREN) ) { 6164 alt24=2; 6165 } 6166 6167 else { 6168 int nvaeMark = input.mark(); 6169 try { 6170 input.consume(); 6171 NoViableAltException nvae = 6172 new NoViableAltException("", 24, 4, input); 6173 throw nvae; 6174 } finally { 6175 input.rewind(nvaeMark); 6176 } 6177 } 6178 6179 } 6180 break; 6181 case NEGATIVE_INTEGER_LITERAL: 6182 { 6183 int LA24_5 = input.LA(2); 6184 if ( (LA24_5==COLON) ) { 6185 alt24=1; 6186 } 6187 else if ( (LA24_5==OPEN_PAREN) ) { 6188 alt24=2; 6189 } 6190 6191 else { 6192 int nvaeMark = input.mark(); 6193 try { 6194 input.consume(); 6195 NoViableAltException nvae = 6196 new NoViableAltException("", 24, 5, input); 6197 throw nvae; 6198 } finally { 6199 input.rewind(nvaeMark); 6200 } 6201 } 6202 6203 } 6204 break; 6205 case FLOAT_LITERAL_OR_ID: 6206 { 6207 int LA24_6 = input.LA(2); 6208 if ( (LA24_6==COLON) ) { 6209 alt24=1; 6210 } 6211 else if ( (LA24_6==OPEN_PAREN) ) { 6212 alt24=2; 6213 } 6214 6215 else { 6216 int nvaeMark = input.mark(); 6217 try { 6218 input.consume(); 6219 NoViableAltException nvae = 6220 new NoViableAltException("", 24, 6, input); 6221 throw nvae; 6222 } finally { 6223 input.rewind(nvaeMark); 6224 } 6225 } 6226 6227 } 6228 break; 6229 case DOUBLE_LITERAL_OR_ID: 6230 { 6231 int LA24_7 = input.LA(2); 6232 if ( (LA24_7==COLON) ) { 6233 alt24=1; 6234 } 6235 else if ( (LA24_7==OPEN_PAREN) ) { 6236 alt24=2; 6237 } 6238 6239 else { 6240 int nvaeMark = input.mark(); 6241 try { 6242 input.consume(); 6243 NoViableAltException nvae = 6244 new NoViableAltException("", 24, 7, input); 6245 throw nvae; 6246 } finally { 6247 input.rewind(nvaeMark); 6248 } 6249 } 6250 6251 } 6252 break; 6253 case BOOL_LITERAL: 6254 { 6255 int LA24_8 = input.LA(2); 6256 if ( (LA24_8==COLON) ) { 6257 alt24=1; 6258 } 6259 else if ( (LA24_8==OPEN_PAREN) ) { 6260 alt24=2; 6261 } 6262 6263 else { 6264 int nvaeMark = input.mark(); 6265 try { 6266 input.consume(); 6267 NoViableAltException nvae = 6268 new NoViableAltException("", 24, 8, input); 6269 throw nvae; 6270 } finally { 6271 input.rewind(nvaeMark); 6272 } 6273 } 6274 6275 } 6276 break; 6277 case NULL_LITERAL: 6278 { 6279 int LA24_9 = input.LA(2); 6280 if ( (LA24_9==COLON) ) { 6281 alt24=1; 6282 } 6283 else if ( (LA24_9==OPEN_PAREN) ) { 6284 alt24=2; 6285 } 6286 6287 else { 6288 int nvaeMark = input.mark(); 6289 try { 6290 input.consume(); 6291 NoViableAltException nvae = 6292 new NoViableAltException("", 24, 9, input); 6293 throw nvae; 6294 } finally { 6295 input.rewind(nvaeMark); 6296 } 6297 } 6298 6299 } 6300 break; 6301 case REGISTER: 6302 { 6303 int LA24_10 = input.LA(2); 6304 if ( (LA24_10==COLON) ) { 6305 alt24=1; 6306 } 6307 else if ( (LA24_10==OPEN_PAREN) ) { 6308 alt24=2; 6309 } 6310 6311 else { 6312 int nvaeMark = input.mark(); 6313 try { 6314 input.consume(); 6315 NoViableAltException nvae = 6316 new NoViableAltException("", 24, 10, input); 6317 throw nvae; 6318 } finally { 6319 input.rewind(nvaeMark); 6320 } 6321 } 6322 6323 } 6324 break; 6325 case PARAM_LIST_OR_ID: 6326 { 6327 int LA24_11 = input.LA(2); 6328 if ( (LA24_11==COLON) ) { 6329 alt24=1; 6330 } 6331 else if ( (LA24_11==OPEN_PAREN) ) { 6332 alt24=2; 6333 } 6334 6335 else { 6336 int nvaeMark = input.mark(); 6337 try { 6338 input.consume(); 6339 NoViableAltException nvae = 6340 new NoViableAltException("", 24, 11, input); 6341 throw nvae; 6342 } finally { 6343 input.rewind(nvaeMark); 6344 } 6345 } 6346 6347 } 6348 break; 6349 case PRIMITIVE_TYPE: 6350 { 6351 int LA24_12 = input.LA(2); 6352 if ( (LA24_12==COLON) ) { 6353 alt24=1; 6354 } 6355 else if ( (LA24_12==OPEN_PAREN) ) { 6356 alt24=2; 6357 } 6358 6359 else { 6360 int nvaeMark = input.mark(); 6361 try { 6362 input.consume(); 6363 NoViableAltException nvae = 6364 new NoViableAltException("", 24, 12, input); 6365 throw nvae; 6366 } finally { 6367 input.rewind(nvaeMark); 6368 } 6369 } 6370 6371 } 6372 break; 6373 case VOID_TYPE: 6374 { 6375 int LA24_13 = input.LA(2); 6376 if ( (LA24_13==COLON) ) { 6377 alt24=1; 6378 } 6379 else if ( (LA24_13==OPEN_PAREN) ) { 6380 alt24=2; 6381 } 6382 6383 else { 6384 int nvaeMark = input.mark(); 6385 try { 6386 input.consume(); 6387 NoViableAltException nvae = 6388 new NoViableAltException("", 24, 13, input); 6389 throw nvae; 6390 } finally { 6391 input.rewind(nvaeMark); 6392 } 6393 } 6394 6395 } 6396 break; 6397 case ANNOTATION_VISIBILITY: 6398 { 6399 int LA24_14 = input.LA(2); 6400 if ( (LA24_14==COLON) ) { 6401 alt24=1; 6402 } 6403 else if ( (LA24_14==OPEN_PAREN) ) { 6404 alt24=2; 6405 } 6406 6407 else { 6408 int nvaeMark = input.mark(); 6409 try { 6410 input.consume(); 6411 NoViableAltException nvae = 6412 new NoViableAltException("", 24, 14, input); 6413 throw nvae; 6414 } finally { 6415 input.rewind(nvaeMark); 6416 } 6417 } 6418 6419 } 6420 break; 6421 case INSTRUCTION_FORMAT10t: 6422 { 6423 int LA24_15 = input.LA(2); 6424 if ( (LA24_15==COLON) ) { 6425 alt24=1; 6426 } 6427 else if ( (LA24_15==OPEN_PAREN) ) { 6428 alt24=2; 6429 } 6430 6431 else { 6432 int nvaeMark = input.mark(); 6433 try { 6434 input.consume(); 6435 NoViableAltException nvae = 6436 new NoViableAltException("", 24, 15, input); 6437 throw nvae; 6438 } finally { 6439 input.rewind(nvaeMark); 6440 } 6441 } 6442 6443 } 6444 break; 6445 case INSTRUCTION_FORMAT10x: 6446 { 6447 int LA24_16 = input.LA(2); 6448 if ( (LA24_16==COLON) ) { 6449 alt24=1; 6450 } 6451 else if ( (LA24_16==OPEN_PAREN) ) { 6452 alt24=2; 6453 } 6454 6455 else { 6456 int nvaeMark = input.mark(); 6457 try { 6458 input.consume(); 6459 NoViableAltException nvae = 6460 new NoViableAltException("", 24, 16, input); 6461 throw nvae; 6462 } finally { 6463 input.rewind(nvaeMark); 6464 } 6465 } 6466 6467 } 6468 break; 6469 case INSTRUCTION_FORMAT10x_ODEX: 6470 { 6471 int LA24_17 = input.LA(2); 6472 if ( (LA24_17==COLON) ) { 6473 alt24=1; 6474 } 6475 else if ( (LA24_17==OPEN_PAREN) ) { 6476 alt24=2; 6477 } 6478 6479 else { 6480 int nvaeMark = input.mark(); 6481 try { 6482 input.consume(); 6483 NoViableAltException nvae = 6484 new NoViableAltException("", 24, 17, input); 6485 throw nvae; 6486 } finally { 6487 input.rewind(nvaeMark); 6488 } 6489 } 6490 6491 } 6492 break; 6493 case INSTRUCTION_FORMAT11x: 6494 { 6495 int LA24_18 = input.LA(2); 6496 if ( (LA24_18==COLON) ) { 6497 alt24=1; 6498 } 6499 else if ( (LA24_18==OPEN_PAREN) ) { 6500 alt24=2; 6501 } 6502 6503 else { 6504 int nvaeMark = input.mark(); 6505 try { 6506 input.consume(); 6507 NoViableAltException nvae = 6508 new NoViableAltException("", 24, 18, input); 6509 throw nvae; 6510 } finally { 6511 input.rewind(nvaeMark); 6512 } 6513 } 6514 6515 } 6516 break; 6517 case INSTRUCTION_FORMAT12x_OR_ID: 6518 { 6519 int LA24_19 = input.LA(2); 6520 if ( (LA24_19==COLON) ) { 6521 alt24=1; 6522 } 6523 else if ( (LA24_19==OPEN_PAREN) ) { 6524 alt24=2; 6525 } 6526 6527 else { 6528 int nvaeMark = input.mark(); 6529 try { 6530 input.consume(); 6531 NoViableAltException nvae = 6532 new NoViableAltException("", 24, 19, input); 6533 throw nvae; 6534 } finally { 6535 input.rewind(nvaeMark); 6536 } 6537 } 6538 6539 } 6540 break; 6541 case INSTRUCTION_FORMAT21c_FIELD: 6542 { 6543 int LA24_20 = input.LA(2); 6544 if ( (LA24_20==COLON) ) { 6545 alt24=1; 6546 } 6547 else if ( (LA24_20==OPEN_PAREN) ) { 6548 alt24=2; 6549 } 6550 6551 else { 6552 int nvaeMark = input.mark(); 6553 try { 6554 input.consume(); 6555 NoViableAltException nvae = 6556 new NoViableAltException("", 24, 20, input); 6557 throw nvae; 6558 } finally { 6559 input.rewind(nvaeMark); 6560 } 6561 } 6562 6563 } 6564 break; 6565 case INSTRUCTION_FORMAT21c_FIELD_ODEX: 6566 { 6567 int LA24_21 = input.LA(2); 6568 if ( (LA24_21==COLON) ) { 6569 alt24=1; 6570 } 6571 else if ( (LA24_21==OPEN_PAREN) ) { 6572 alt24=2; 6573 } 6574 6575 else { 6576 int nvaeMark = input.mark(); 6577 try { 6578 input.consume(); 6579 NoViableAltException nvae = 6580 new NoViableAltException("", 24, 21, input); 6581 throw nvae; 6582 } finally { 6583 input.rewind(nvaeMark); 6584 } 6585 } 6586 6587 } 6588 break; 6589 case INSTRUCTION_FORMAT21c_STRING: 6590 { 6591 int LA24_22 = input.LA(2); 6592 if ( (LA24_22==COLON) ) { 6593 alt24=1; 6594 } 6595 else if ( (LA24_22==OPEN_PAREN) ) { 6596 alt24=2; 6597 } 6598 6599 else { 6600 int nvaeMark = input.mark(); 6601 try { 6602 input.consume(); 6603 NoViableAltException nvae = 6604 new NoViableAltException("", 24, 22, input); 6605 throw nvae; 6606 } finally { 6607 input.rewind(nvaeMark); 6608 } 6609 } 6610 6611 } 6612 break; 6613 case INSTRUCTION_FORMAT21c_TYPE: 6614 { 6615 int LA24_23 = input.LA(2); 6616 if ( (LA24_23==COLON) ) { 6617 alt24=1; 6618 } 6619 else if ( (LA24_23==OPEN_PAREN) ) { 6620 alt24=2; 6621 } 6622 6623 else { 6624 int nvaeMark = input.mark(); 6625 try { 6626 input.consume(); 6627 NoViableAltException nvae = 6628 new NoViableAltException("", 24, 23, input); 6629 throw nvae; 6630 } finally { 6631 input.rewind(nvaeMark); 6632 } 6633 } 6634 6635 } 6636 break; 6637 case INSTRUCTION_FORMAT21t: 6638 { 6639 int LA24_24 = input.LA(2); 6640 if ( (LA24_24==COLON) ) { 6641 alt24=1; 6642 } 6643 else if ( (LA24_24==OPEN_PAREN) ) { 6644 alt24=2; 6645 } 6646 6647 else { 6648 int nvaeMark = input.mark(); 6649 try { 6650 input.consume(); 6651 NoViableAltException nvae = 6652 new NoViableAltException("", 24, 24, input); 6653 throw nvae; 6654 } finally { 6655 input.rewind(nvaeMark); 6656 } 6657 } 6658 6659 } 6660 break; 6661 case INSTRUCTION_FORMAT22c_FIELD: 6662 { 6663 int LA24_25 = input.LA(2); 6664 if ( (LA24_25==COLON) ) { 6665 alt24=1; 6666 } 6667 else if ( (LA24_25==OPEN_PAREN) ) { 6668 alt24=2; 6669 } 6670 6671 else { 6672 int nvaeMark = input.mark(); 6673 try { 6674 input.consume(); 6675 NoViableAltException nvae = 6676 new NoViableAltException("", 24, 25, input); 6677 throw nvae; 6678 } finally { 6679 input.rewind(nvaeMark); 6680 } 6681 } 6682 6683 } 6684 break; 6685 case INSTRUCTION_FORMAT22c_FIELD_ODEX: 6686 { 6687 int LA24_26 = input.LA(2); 6688 if ( (LA24_26==COLON) ) { 6689 alt24=1; 6690 } 6691 else if ( (LA24_26==OPEN_PAREN) ) { 6692 alt24=2; 6693 } 6694 6695 else { 6696 int nvaeMark = input.mark(); 6697 try { 6698 input.consume(); 6699 NoViableAltException nvae = 6700 new NoViableAltException("", 24, 26, input); 6701 throw nvae; 6702 } finally { 6703 input.rewind(nvaeMark); 6704 } 6705 } 6706 6707 } 6708 break; 6709 case INSTRUCTION_FORMAT22c_TYPE: 6710 { 6711 int LA24_27 = input.LA(2); 6712 if ( (LA24_27==COLON) ) { 6713 alt24=1; 6714 } 6715 else if ( (LA24_27==OPEN_PAREN) ) { 6716 alt24=2; 6717 } 6718 6719 else { 6720 int nvaeMark = input.mark(); 6721 try { 6722 input.consume(); 6723 NoViableAltException nvae = 6724 new NoViableAltException("", 24, 27, input); 6725 throw nvae; 6726 } finally { 6727 input.rewind(nvaeMark); 6728 } 6729 } 6730 6731 } 6732 break; 6733 case INSTRUCTION_FORMAT22cs_FIELD: 6734 { 6735 int LA24_28 = input.LA(2); 6736 if ( (LA24_28==COLON) ) { 6737 alt24=1; 6738 } 6739 else if ( (LA24_28==OPEN_PAREN) ) { 6740 alt24=2; 6741 } 6742 6743 else { 6744 int nvaeMark = input.mark(); 6745 try { 6746 input.consume(); 6747 NoViableAltException nvae = 6748 new NoViableAltException("", 24, 28, input); 6749 throw nvae; 6750 } finally { 6751 input.rewind(nvaeMark); 6752 } 6753 } 6754 6755 } 6756 break; 6757 case INSTRUCTION_FORMAT22s_OR_ID: 6758 { 6759 int LA24_29 = input.LA(2); 6760 if ( (LA24_29==COLON) ) { 6761 alt24=1; 6762 } 6763 else if ( (LA24_29==OPEN_PAREN) ) { 6764 alt24=2; 6765 } 6766 6767 else { 6768 int nvaeMark = input.mark(); 6769 try { 6770 input.consume(); 6771 NoViableAltException nvae = 6772 new NoViableAltException("", 24, 29, input); 6773 throw nvae; 6774 } finally { 6775 input.rewind(nvaeMark); 6776 } 6777 } 6778 6779 } 6780 break; 6781 case INSTRUCTION_FORMAT22t: 6782 { 6783 int LA24_30 = input.LA(2); 6784 if ( (LA24_30==COLON) ) { 6785 alt24=1; 6786 } 6787 else if ( (LA24_30==OPEN_PAREN) ) { 6788 alt24=2; 6789 } 6790 6791 else { 6792 int nvaeMark = input.mark(); 6793 try { 6794 input.consume(); 6795 NoViableAltException nvae = 6796 new NoViableAltException("", 24, 30, input); 6797 throw nvae; 6798 } finally { 6799 input.rewind(nvaeMark); 6800 } 6801 } 6802 6803 } 6804 break; 6805 case INSTRUCTION_FORMAT23x: 6806 { 6807 int LA24_31 = input.LA(2); 6808 if ( (LA24_31==COLON) ) { 6809 alt24=1; 6810 } 6811 else if ( (LA24_31==OPEN_PAREN) ) { 6812 alt24=2; 6813 } 6814 6815 else { 6816 int nvaeMark = input.mark(); 6817 try { 6818 input.consume(); 6819 NoViableAltException nvae = 6820 new NoViableAltException("", 24, 31, input); 6821 throw nvae; 6822 } finally { 6823 input.rewind(nvaeMark); 6824 } 6825 } 6826 6827 } 6828 break; 6829 case INSTRUCTION_FORMAT31i_OR_ID: 6830 { 6831 int LA24_32 = input.LA(2); 6832 if ( (LA24_32==COLON) ) { 6833 alt24=1; 6834 } 6835 else if ( (LA24_32==OPEN_PAREN) ) { 6836 alt24=2; 6837 } 6838 6839 else { 6840 int nvaeMark = input.mark(); 6841 try { 6842 input.consume(); 6843 NoViableAltException nvae = 6844 new NoViableAltException("", 24, 32, input); 6845 throw nvae; 6846 } finally { 6847 input.rewind(nvaeMark); 6848 } 6849 } 6850 6851 } 6852 break; 6853 case INSTRUCTION_FORMAT31t: 6854 { 6855 int LA24_33 = input.LA(2); 6856 if ( (LA24_33==COLON) ) { 6857 alt24=1; 6858 } 6859 else if ( (LA24_33==OPEN_PAREN) ) { 6860 alt24=2; 6861 } 6862 6863 else { 6864 int nvaeMark = input.mark(); 6865 try { 6866 input.consume(); 6867 NoViableAltException nvae = 6868 new NoViableAltException("", 24, 33, input); 6869 throw nvae; 6870 } finally { 6871 input.rewind(nvaeMark); 6872 } 6873 } 6874 6875 } 6876 break; 6877 case INSTRUCTION_FORMAT35c_METHOD: 6878 { 6879 int LA24_34 = input.LA(2); 6880 if ( (LA24_34==COLON) ) { 6881 alt24=1; 6882 } 6883 else if ( (LA24_34==OPEN_PAREN) ) { 6884 alt24=2; 6885 } 6886 6887 else { 6888 int nvaeMark = input.mark(); 6889 try { 6890 input.consume(); 6891 NoViableAltException nvae = 6892 new NoViableAltException("", 24, 34, input); 6893 throw nvae; 6894 } finally { 6895 input.rewind(nvaeMark); 6896 } 6897 } 6898 6899 } 6900 break; 6901 case INSTRUCTION_FORMAT35c_METHOD_ODEX: 6902 { 6903 int LA24_35 = input.LA(2); 6904 if ( (LA24_35==COLON) ) { 6905 alt24=1; 6906 } 6907 else if ( (LA24_35==OPEN_PAREN) ) { 6908 alt24=2; 6909 } 6910 6911 else { 6912 int nvaeMark = input.mark(); 6913 try { 6914 input.consume(); 6915 NoViableAltException nvae = 6916 new NoViableAltException("", 24, 35, input); 6917 throw nvae; 6918 } finally { 6919 input.rewind(nvaeMark); 6920 } 6921 } 6922 6923 } 6924 break; 6925 case INSTRUCTION_FORMAT35c_TYPE: 6926 { 6927 int LA24_36 = input.LA(2); 6928 if ( (LA24_36==COLON) ) { 6929 alt24=1; 6930 } 6931 else if ( (LA24_36==OPEN_PAREN) ) { 6932 alt24=2; 6933 } 6934 6935 else { 6936 int nvaeMark = input.mark(); 6937 try { 6938 input.consume(); 6939 NoViableAltException nvae = 6940 new NoViableAltException("", 24, 36, input); 6941 throw nvae; 6942 } finally { 6943 input.rewind(nvaeMark); 6944 } 6945 } 6946 6947 } 6948 break; 6949 case INSTRUCTION_FORMAT35mi_METHOD: 6950 { 6951 int LA24_37 = input.LA(2); 6952 if ( (LA24_37==COLON) ) { 6953 alt24=1; 6954 } 6955 else if ( (LA24_37==OPEN_PAREN) ) { 6956 alt24=2; 6957 } 6958 6959 else { 6960 int nvaeMark = input.mark(); 6961 try { 6962 input.consume(); 6963 NoViableAltException nvae = 6964 new NoViableAltException("", 24, 37, input); 6965 throw nvae; 6966 } finally { 6967 input.rewind(nvaeMark); 6968 } 6969 } 6970 6971 } 6972 break; 6973 case INSTRUCTION_FORMAT35ms_METHOD: 6974 { 6975 int LA24_38 = input.LA(2); 6976 if ( (LA24_38==COLON) ) { 6977 alt24=1; 6978 } 6979 else if ( (LA24_38==OPEN_PAREN) ) { 6980 alt24=2; 6981 } 6982 6983 else { 6984 int nvaeMark = input.mark(); 6985 try { 6986 input.consume(); 6987 NoViableAltException nvae = 6988 new NoViableAltException("", 24, 38, input); 6989 throw nvae; 6990 } finally { 6991 input.rewind(nvaeMark); 6992 } 6993 } 6994 6995 } 6996 break; 6997 case INSTRUCTION_FORMAT51l: 6998 { 6999 int LA24_39 = input.LA(2); 7000 if ( (LA24_39==COLON) ) { 7001 alt24=1; 7002 } 7003 else if ( (LA24_39==OPEN_PAREN) ) { 7004 alt24=2; 7005 } 7006 7007 else { 7008 int nvaeMark = input.mark(); 7009 try { 7010 input.consume(); 7011 NoViableAltException nvae = 7012 new NoViableAltException("", 24, 39, input); 7013 throw nvae; 7014 } finally { 7015 input.rewind(nvaeMark); 7016 } 7017 } 7018 7019 } 7020 break; 7021 case MEMBER_NAME: 7022 { 7023 int LA24_40 = input.LA(2); 7024 if ( (LA24_40==COLON) ) { 7025 alt24=1; 7026 } 7027 else if ( (LA24_40==OPEN_PAREN) ) { 7028 alt24=2; 7029 } 7030 7031 else { 7032 int nvaeMark = input.mark(); 7033 try { 7034 input.consume(); 7035 NoViableAltException nvae = 7036 new NoViableAltException("", 24, 40, input); 7037 throw nvae; 7038 } finally { 7039 input.rewind(nvaeMark); 7040 } 7041 } 7042 7043 } 7044 break; 7045 default: 7046 NoViableAltException nvae = 7047 new NoViableAltException("", 24, 0, input); 7048 throw nvae; 7049 } 7050 switch (alt24) { 7051 case 1 : 7052 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:702:9: member_name COLON nonvoid_type_descriptor 7053 { 7054 pushFollow(FOLLOW_member_name_in_type_field_method_literal2921); 7055 member_name160=member_name(); 7056 state._fsp--; 7057 7058 stream_member_name.add(member_name160.getTree()); 7059 COLON161=(Token)match(input,COLON,FOLLOW_COLON_in_type_field_method_literal2923); 7060 stream_COLON.add(COLON161); 7061 7062 pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_field_method_literal2925); 7063 nonvoid_type_descriptor162=nonvoid_type_descriptor(); 7064 state._fsp--; 7065 7066 stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor162.getTree()); 7067 // AST REWRITE 7068 // elements: member_name, nonvoid_type_descriptor, reference_type_descriptor 7069 // token labels: 7070 // rule labels: retval 7071 // token list labels: 7072 // rule list labels: 7073 // wildcard labels: 7074 retval.tree = root_0; 7075 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 7076 7077 root_0 = (CommonTree)adaptor.nil(); 7078 // 702:51: -> ^( I_ENCODED_FIELD reference_type_descriptor member_name nonvoid_type_descriptor ) 7079 { 7080 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:702:54: ^( I_ENCODED_FIELD reference_type_descriptor member_name nonvoid_type_descriptor ) 7081 { 7082 CommonTree root_1 = (CommonTree)adaptor.nil(); 7083 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ENCODED_FIELD, "I_ENCODED_FIELD"), root_1); 7084 adaptor.addChild(root_1, stream_reference_type_descriptor.nextTree()); 7085 adaptor.addChild(root_1, stream_member_name.nextTree()); 7086 adaptor.addChild(root_1, stream_nonvoid_type_descriptor.nextTree()); 7087 adaptor.addChild(root_0, root_1); 7088 } 7089 7090 } 7091 7092 7093 retval.tree = root_0; 7094 7095 } 7096 break; 7097 case 2 : 7098 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:703:9: member_name method_prototype 7099 { 7100 pushFollow(FOLLOW_member_name_in_type_field_method_literal2947); 7101 member_name163=member_name(); 7102 state._fsp--; 7103 7104 stream_member_name.add(member_name163.getTree()); 7105 pushFollow(FOLLOW_method_prototype_in_type_field_method_literal2949); 7106 method_prototype164=method_prototype(); 7107 state._fsp--; 7108 7109 stream_method_prototype.add(method_prototype164.getTree()); 7110 // AST REWRITE 7111 // elements: reference_type_descriptor, method_prototype, member_name 7112 // token labels: 7113 // rule labels: retval 7114 // token list labels: 7115 // rule list labels: 7116 // wildcard labels: 7117 retval.tree = root_0; 7118 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 7119 7120 root_0 = (CommonTree)adaptor.nil(); 7121 // 703:38: -> ^( I_ENCODED_METHOD reference_type_descriptor member_name method_prototype ) 7122 { 7123 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:703:41: ^( I_ENCODED_METHOD reference_type_descriptor member_name method_prototype ) 7124 { 7125 CommonTree root_1 = (CommonTree)adaptor.nil(); 7126 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_ENCODED_METHOD, "I_ENCODED_METHOD"), root_1); 7127 adaptor.addChild(root_1, stream_reference_type_descriptor.nextTree()); 7128 adaptor.addChild(root_1, stream_member_name.nextTree()); 7129 adaptor.addChild(root_1, stream_method_prototype.nextTree()); 7130 adaptor.addChild(root_0, root_1); 7131 } 7132 7133 } 7134 7135 7136 retval.tree = root_0; 7137 7138 } 7139 break; 7140 7141 } 7142 7143 } 7144 break; 7145 case 2 : 7146 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:705:7: 7147 { 7148 // AST REWRITE 7149 // elements: reference_type_descriptor 7150 // token labels: 7151 // rule labels: retval 7152 // token list labels: 7153 // rule list labels: 7154 // wildcard labels: 7155 retval.tree = root_0; 7156 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 7157 7158 root_0 = (CommonTree)adaptor.nil(); 7159 // 705:7: -> reference_type_descriptor 7160 { 7161 adaptor.addChild(root_0, stream_reference_type_descriptor.nextTree()); 7162 } 7163 7164 7165 retval.tree = root_0; 7166 7167 } 7168 break; 7169 7170 } 7171 7172 } 7173 break; 7174 case 2 : 7175 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:707:5: PRIMITIVE_TYPE 7176 { 7177 root_0 = (CommonTree)adaptor.nil(); 7178 7179 7180 PRIMITIVE_TYPE165=(Token)match(input,PRIMITIVE_TYPE,FOLLOW_PRIMITIVE_TYPE_in_type_field_method_literal2991); 7181 PRIMITIVE_TYPE165_tree = (CommonTree)adaptor.create(PRIMITIVE_TYPE165); 7182 adaptor.addChild(root_0, PRIMITIVE_TYPE165_tree); 7183 7184 } 7185 break; 7186 case 3 : 7187 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:708:5: VOID_TYPE 7188 { 7189 root_0 = (CommonTree)adaptor.nil(); 7190 7191 7192 VOID_TYPE166=(Token)match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_field_method_literal2997); 7193 VOID_TYPE166_tree = (CommonTree)adaptor.create(VOID_TYPE166); 7194 adaptor.addChild(root_0, VOID_TYPE166_tree); 7195 7196 } 7197 break; 7198 7199 } 7200 retval.stop = input.LT(-1); 7201 7202 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 7203 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 7204 7205 } 7206 catch (RecognitionException re) { 7207 reportError(re); 7208 recover(input,re); 7209 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 7210 } 7211 finally { 7212 // do for sure before leaving 7213 } 7214 return retval; 7215 } 7216 // $ANTLR end "type_field_method_literal" 7217 7218 7219 public static class fully_qualified_method_return extends ParserRuleReturnScope { 7220 CommonTree tree; 7221 @Override 7222 public CommonTree getTree() { return tree; } 7223 }; 7224 7225 7226 // $ANTLR start "fully_qualified_method" 7227 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:710:1: fully_qualified_method : reference_type_descriptor ARROW member_name method_prototype -> reference_type_descriptor member_name method_prototype ; 7228 public final smaliParser.fully_qualified_method_return fully_qualified_method() throws RecognitionException { 7229 smaliParser.fully_qualified_method_return retval = new smaliParser.fully_qualified_method_return(); 7230 retval.start = input.LT(1); 7231 7232 CommonTree root_0 = null; 7233 7234 Token ARROW168=null; 7235 ParserRuleReturnScope reference_type_descriptor167 =null; 7236 ParserRuleReturnScope member_name169 =null; 7237 ParserRuleReturnScope method_prototype170 =null; 7238 7239 CommonTree ARROW168_tree=null; 7240 RewriteRuleTokenStream stream_ARROW=new RewriteRuleTokenStream(adaptor,"token ARROW"); 7241 RewriteRuleSubtreeStream stream_method_prototype=new RewriteRuleSubtreeStream(adaptor,"rule method_prototype"); 7242 RewriteRuleSubtreeStream stream_reference_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule reference_type_descriptor"); 7243 RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name"); 7244 7245 try { 7246 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:711:3: ( reference_type_descriptor ARROW member_name method_prototype -> reference_type_descriptor member_name method_prototype ) 7247 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:711:5: reference_type_descriptor ARROW member_name method_prototype 7248 { 7249 pushFollow(FOLLOW_reference_type_descriptor_in_fully_qualified_method3007); 7250 reference_type_descriptor167=reference_type_descriptor(); 7251 state._fsp--; 7252 7253 stream_reference_type_descriptor.add(reference_type_descriptor167.getTree()); 7254 ARROW168=(Token)match(input,ARROW,FOLLOW_ARROW_in_fully_qualified_method3009); 7255 stream_ARROW.add(ARROW168); 7256 7257 pushFollow(FOLLOW_member_name_in_fully_qualified_method3011); 7258 member_name169=member_name(); 7259 state._fsp--; 7260 7261 stream_member_name.add(member_name169.getTree()); 7262 pushFollow(FOLLOW_method_prototype_in_fully_qualified_method3013); 7263 method_prototype170=method_prototype(); 7264 state._fsp--; 7265 7266 stream_method_prototype.add(method_prototype170.getTree()); 7267 // AST REWRITE 7268 // elements: method_prototype, member_name, reference_type_descriptor 7269 // token labels: 7270 // rule labels: retval 7271 // token list labels: 7272 // rule list labels: 7273 // wildcard labels: 7274 retval.tree = root_0; 7275 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 7276 7277 root_0 = (CommonTree)adaptor.nil(); 7278 // 712:3: -> reference_type_descriptor member_name method_prototype 7279 { 7280 adaptor.addChild(root_0, stream_reference_type_descriptor.nextTree()); 7281 adaptor.addChild(root_0, stream_member_name.nextTree()); 7282 adaptor.addChild(root_0, stream_method_prototype.nextTree()); 7283 } 7284 7285 7286 retval.tree = root_0; 7287 7288 } 7289 7290 retval.stop = input.LT(-1); 7291 7292 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 7293 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 7294 7295 } 7296 catch (RecognitionException re) { 7297 reportError(re); 7298 recover(input,re); 7299 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 7300 } 7301 finally { 7302 // do for sure before leaving 7303 } 7304 return retval; 7305 } 7306 // $ANTLR end "fully_qualified_method" 7307 7308 7309 public static class fully_qualified_field_return extends ParserRuleReturnScope { 7310 CommonTree tree; 7311 @Override 7312 public CommonTree getTree() { return tree; } 7313 }; 7314 7315 7316 // $ANTLR start "fully_qualified_field" 7317 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:714:1: fully_qualified_field : reference_type_descriptor ARROW member_name COLON nonvoid_type_descriptor -> reference_type_descriptor member_name nonvoid_type_descriptor ; 7318 public final smaliParser.fully_qualified_field_return fully_qualified_field() throws RecognitionException { 7319 smaliParser.fully_qualified_field_return retval = new smaliParser.fully_qualified_field_return(); 7320 retval.start = input.LT(1); 7321 7322 CommonTree root_0 = null; 7323 7324 Token ARROW172=null; 7325 Token COLON174=null; 7326 ParserRuleReturnScope reference_type_descriptor171 =null; 7327 ParserRuleReturnScope member_name173 =null; 7328 ParserRuleReturnScope nonvoid_type_descriptor175 =null; 7329 7330 CommonTree ARROW172_tree=null; 7331 CommonTree COLON174_tree=null; 7332 RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); 7333 RewriteRuleTokenStream stream_ARROW=new RewriteRuleTokenStream(adaptor,"token ARROW"); 7334 RewriteRuleSubtreeStream stream_nonvoid_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule nonvoid_type_descriptor"); 7335 RewriteRuleSubtreeStream stream_reference_type_descriptor=new RewriteRuleSubtreeStream(adaptor,"rule reference_type_descriptor"); 7336 RewriteRuleSubtreeStream stream_member_name=new RewriteRuleSubtreeStream(adaptor,"rule member_name"); 7337 7338 try { 7339 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:715:3: ( reference_type_descriptor ARROW member_name COLON nonvoid_type_descriptor -> reference_type_descriptor member_name nonvoid_type_descriptor ) 7340 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:715:5: reference_type_descriptor ARROW member_name COLON nonvoid_type_descriptor 7341 { 7342 pushFollow(FOLLOW_reference_type_descriptor_in_fully_qualified_field3033); 7343 reference_type_descriptor171=reference_type_descriptor(); 7344 state._fsp--; 7345 7346 stream_reference_type_descriptor.add(reference_type_descriptor171.getTree()); 7347 ARROW172=(Token)match(input,ARROW,FOLLOW_ARROW_in_fully_qualified_field3035); 7348 stream_ARROW.add(ARROW172); 7349 7350 pushFollow(FOLLOW_member_name_in_fully_qualified_field3037); 7351 member_name173=member_name(); 7352 state._fsp--; 7353 7354 stream_member_name.add(member_name173.getTree()); 7355 COLON174=(Token)match(input,COLON,FOLLOW_COLON_in_fully_qualified_field3039); 7356 stream_COLON.add(COLON174); 7357 7358 pushFollow(FOLLOW_nonvoid_type_descriptor_in_fully_qualified_field3041); 7359 nonvoid_type_descriptor175=nonvoid_type_descriptor(); 7360 state._fsp--; 7361 7362 stream_nonvoid_type_descriptor.add(nonvoid_type_descriptor175.getTree()); 7363 // AST REWRITE 7364 // elements: nonvoid_type_descriptor, reference_type_descriptor, member_name 7365 // token labels: 7366 // rule labels: retval 7367 // token list labels: 7368 // rule list labels: 7369 // wildcard labels: 7370 retval.tree = root_0; 7371 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 7372 7373 root_0 = (CommonTree)adaptor.nil(); 7374 // 716:3: -> reference_type_descriptor member_name nonvoid_type_descriptor 7375 { 7376 adaptor.addChild(root_0, stream_reference_type_descriptor.nextTree()); 7377 adaptor.addChild(root_0, stream_member_name.nextTree()); 7378 adaptor.addChild(root_0, stream_nonvoid_type_descriptor.nextTree()); 7379 } 7380 7381 7382 retval.tree = root_0; 7383 7384 } 7385 7386 retval.stop = input.LT(-1); 7387 7388 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 7389 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 7390 7391 } 7392 catch (RecognitionException re) { 7393 reportError(re); 7394 recover(input,re); 7395 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 7396 } 7397 finally { 7398 // do for sure before leaving 7399 } 7400 return retval; 7401 } 7402 // $ANTLR end "fully_qualified_field" 7403 7404 7405 public static class label_return extends ParserRuleReturnScope { 7406 CommonTree tree; 7407 @Override 7408 public CommonTree getTree() { return tree; } 7409 }; 7410 7411 7412 // $ANTLR start "label" 7413 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:718:1: label : COLON simple_name -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) ; 7414 public final smaliParser.label_return label() throws RecognitionException { 7415 smaliParser.label_return retval = new smaliParser.label_return(); 7416 retval.start = input.LT(1); 7417 7418 CommonTree root_0 = null; 7419 7420 Token COLON176=null; 7421 ParserRuleReturnScope simple_name177 =null; 7422 7423 CommonTree COLON176_tree=null; 7424 RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); 7425 RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name"); 7426 7427 try { 7428 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:719:3: ( COLON simple_name -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) ) 7429 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:719:5: COLON simple_name 7430 { 7431 COLON176=(Token)match(input,COLON,FOLLOW_COLON_in_label3061); 7432 stream_COLON.add(COLON176); 7433 7434 pushFollow(FOLLOW_simple_name_in_label3063); 7435 simple_name177=simple_name(); 7436 state._fsp--; 7437 7438 stream_simple_name.add(simple_name177.getTree()); 7439 // AST REWRITE 7440 // elements: simple_name 7441 // token labels: 7442 // rule labels: retval 7443 // token list labels: 7444 // rule list labels: 7445 // wildcard labels: 7446 retval.tree = root_0; 7447 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 7448 7449 root_0 = (CommonTree)adaptor.nil(); 7450 // 719:23: -> ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) 7451 { 7452 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:719:26: ^( I_LABEL[$COLON, \"I_LABEL\"] simple_name ) 7453 { 7454 CommonTree root_1 = (CommonTree)adaptor.nil(); 7455 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_LABEL, COLON176, "I_LABEL"), root_1); 7456 adaptor.addChild(root_1, stream_simple_name.nextTree()); 7457 adaptor.addChild(root_0, root_1); 7458 } 7459 7460 } 7461 7462 7463 retval.tree = root_0; 7464 7465 } 7466 7467 retval.stop = input.LT(-1); 7468 7469 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 7470 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 7471 7472 } 7473 catch (RecognitionException re) { 7474 reportError(re); 7475 recover(input,re); 7476 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 7477 } 7478 finally { 7479 // do for sure before leaving 7480 } 7481 return retval; 7482 } 7483 // $ANTLR end "label" 7484 7485 7486 public static class label_ref_return extends ParserRuleReturnScope { 7487 CommonTree tree; 7488 @Override 7489 public CommonTree getTree() { return tree; } 7490 }; 7491 7492 7493 // $ANTLR start "label_ref" 7494 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:721:1: label_ref : COLON simple_name -> simple_name ; 7495 public final smaliParser.label_ref_return label_ref() throws RecognitionException { 7496 smaliParser.label_ref_return retval = new smaliParser.label_ref_return(); 7497 retval.start = input.LT(1); 7498 7499 CommonTree root_0 = null; 7500 7501 Token COLON178=null; 7502 ParserRuleReturnScope simple_name179 =null; 7503 7504 CommonTree COLON178_tree=null; 7505 RewriteRuleTokenStream stream_COLON=new RewriteRuleTokenStream(adaptor,"token COLON"); 7506 RewriteRuleSubtreeStream stream_simple_name=new RewriteRuleSubtreeStream(adaptor,"rule simple_name"); 7507 7508 try { 7509 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:722:3: ( COLON simple_name -> simple_name ) 7510 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:722:5: COLON simple_name 7511 { 7512 COLON178=(Token)match(input,COLON,FOLLOW_COLON_in_label_ref3082); 7513 stream_COLON.add(COLON178); 7514 7515 pushFollow(FOLLOW_simple_name_in_label_ref3084); 7516 simple_name179=simple_name(); 7517 state._fsp--; 7518 7519 stream_simple_name.add(simple_name179.getTree()); 7520 // AST REWRITE 7521 // elements: simple_name 7522 // token labels: 7523 // rule labels: retval 7524 // token list labels: 7525 // rule list labels: 7526 // wildcard labels: 7527 retval.tree = root_0; 7528 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 7529 7530 root_0 = (CommonTree)adaptor.nil(); 7531 // 722:23: -> simple_name 7532 { 7533 adaptor.addChild(root_0, stream_simple_name.nextTree()); 7534 } 7535 7536 7537 retval.tree = root_0; 7538 7539 } 7540 7541 retval.stop = input.LT(-1); 7542 7543 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 7544 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 7545 7546 } 7547 catch (RecognitionException re) { 7548 reportError(re); 7549 recover(input,re); 7550 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 7551 } 7552 finally { 7553 // do for sure before leaving 7554 } 7555 return retval; 7556 } 7557 // $ANTLR end "label_ref" 7558 7559 7560 public static class register_list_return extends ParserRuleReturnScope { 7561 CommonTree tree; 7562 @Override 7563 public CommonTree getTree() { return tree; } 7564 }; 7565 7566 7567 // $ANTLR start "register_list" 7568 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:724:1: register_list : ( REGISTER ( COMMA REGISTER )* -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) | -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) ); 7569 public final smaliParser.register_list_return register_list() throws RecognitionException { 7570 smaliParser.register_list_return retval = new smaliParser.register_list_return(); 7571 retval.start = input.LT(1); 7572 7573 CommonTree root_0 = null; 7574 7575 Token REGISTER180=null; 7576 Token COMMA181=null; 7577 Token REGISTER182=null; 7578 7579 CommonTree REGISTER180_tree=null; 7580 CommonTree COMMA181_tree=null; 7581 CommonTree REGISTER182_tree=null; 7582 RewriteRuleTokenStream stream_COMMA=new RewriteRuleTokenStream(adaptor,"token COMMA"); 7583 RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); 7584 7585 try { 7586 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:3: ( REGISTER ( COMMA REGISTER )* -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) | -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) ) 7587 int alt28=2; 7588 int LA28_0 = input.LA(1); 7589 if ( (LA28_0==REGISTER) ) { 7590 alt28=1; 7591 } 7592 else if ( (LA28_0==CLOSE_BRACE) ) { 7593 alt28=2; 7594 } 7595 7596 else { 7597 NoViableAltException nvae = 7598 new NoViableAltException("", 28, 0, input); 7599 throw nvae; 7600 } 7601 7602 switch (alt28) { 7603 case 1 : 7604 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:5: REGISTER ( COMMA REGISTER )* 7605 { 7606 REGISTER180=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_list3098); 7607 stream_REGISTER.add(REGISTER180); 7608 7609 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:14: ( COMMA REGISTER )* 7610 loop27: 7611 while (true) { 7612 int alt27=2; 7613 int LA27_0 = input.LA(1); 7614 if ( (LA27_0==COMMA) ) { 7615 alt27=1; 7616 } 7617 7618 switch (alt27) { 7619 case 1 : 7620 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:15: COMMA REGISTER 7621 { 7622 COMMA181=(Token)match(input,COMMA,FOLLOW_COMMA_in_register_list3101); 7623 stream_COMMA.add(COMMA181); 7624 7625 REGISTER182=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_list3103); 7626 stream_REGISTER.add(REGISTER182); 7627 7628 } 7629 break; 7630 7631 default : 7632 break loop27; 7633 } 7634 } 7635 7636 // AST REWRITE 7637 // elements: REGISTER 7638 // token labels: 7639 // rule labels: retval 7640 // token list labels: 7641 // rule list labels: 7642 // wildcard labels: 7643 retval.tree = root_0; 7644 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 7645 7646 root_0 = (CommonTree)adaptor.nil(); 7647 // 725:32: -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) 7648 { 7649 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:35: ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ( REGISTER )* ) 7650 { 7651 CommonTree root_1 = (CommonTree)adaptor.nil(); 7652 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTER_LIST, (retval.start), "I_REGISTER_LIST"), root_1); 7653 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:725:80: ( REGISTER )* 7654 while ( stream_REGISTER.hasNext() ) { 7655 adaptor.addChild(root_1, stream_REGISTER.nextNode()); 7656 } 7657 stream_REGISTER.reset(); 7658 7659 adaptor.addChild(root_0, root_1); 7660 } 7661 7662 } 7663 7664 7665 retval.tree = root_0; 7666 7667 } 7668 break; 7669 case 2 : 7670 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:726:5: 7671 { 7672 // AST REWRITE 7673 // elements: 7674 // token labels: 7675 // rule labels: retval 7676 // token list labels: 7677 // rule list labels: 7678 // wildcard labels: 7679 retval.tree = root_0; 7680 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 7681 7682 root_0 = (CommonTree)adaptor.nil(); 7683 // 726:5: -> ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) 7684 { 7685 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:726:7: ^( I_REGISTER_LIST[$start, \"I_REGISTER_LIST\"] ) 7686 { 7687 CommonTree root_1 = (CommonTree)adaptor.nil(); 7688 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTER_LIST, (retval.start), "I_REGISTER_LIST"), root_1); 7689 adaptor.addChild(root_0, root_1); 7690 } 7691 7692 } 7693 7694 7695 retval.tree = root_0; 7696 7697 } 7698 break; 7699 7700 } 7701 retval.stop = input.LT(-1); 7702 7703 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 7704 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 7705 7706 } 7707 catch (RecognitionException re) { 7708 reportError(re); 7709 recover(input,re); 7710 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 7711 } 7712 finally { 7713 // do for sure before leaving 7714 } 7715 return retval; 7716 } 7717 // $ANTLR end "register_list" 7718 7719 7720 public static class register_range_return extends ParserRuleReturnScope { 7721 CommonTree tree; 7722 @Override 7723 public CommonTree getTree() { return tree; } 7724 }; 7725 7726 7727 // $ANTLR start "register_range" 7728 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:728:1: register_range : (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) ; 7729 public final smaliParser.register_range_return register_range() throws RecognitionException { 7730 smaliParser.register_range_return retval = new smaliParser.register_range_return(); 7731 retval.start = input.LT(1); 7732 7733 CommonTree root_0 = null; 7734 7735 Token startreg=null; 7736 Token endreg=null; 7737 Token DOTDOT183=null; 7738 7739 CommonTree startreg_tree=null; 7740 CommonTree endreg_tree=null; 7741 CommonTree DOTDOT183_tree=null; 7742 RewriteRuleTokenStream stream_DOTDOT=new RewriteRuleTokenStream(adaptor,"token DOTDOT"); 7743 RewriteRuleTokenStream stream_REGISTER=new RewriteRuleTokenStream(adaptor,"token REGISTER"); 7744 7745 try { 7746 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:3: ( (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) ) 7747 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:5: (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? 7748 { 7749 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:5: (startreg= REGISTER ( DOTDOT endreg= REGISTER )? )? 7750 int alt30=2; 7751 int LA30_0 = input.LA(1); 7752 if ( (LA30_0==REGISTER) ) { 7753 alt30=1; 7754 } 7755 switch (alt30) { 7756 case 1 : 7757 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:6: startreg= REGISTER ( DOTDOT endreg= REGISTER )? 7758 { 7759 startreg=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_range3138); 7760 stream_REGISTER.add(startreg); 7761 7762 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:24: ( DOTDOT endreg= REGISTER )? 7763 int alt29=2; 7764 int LA29_0 = input.LA(1); 7765 if ( (LA29_0==DOTDOT) ) { 7766 alt29=1; 7767 } 7768 switch (alt29) { 7769 case 1 : 7770 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:25: DOTDOT endreg= REGISTER 7771 { 7772 DOTDOT183=(Token)match(input,DOTDOT,FOLLOW_DOTDOT_in_register_range3141); 7773 stream_DOTDOT.add(DOTDOT183); 7774 7775 endreg=(Token)match(input,REGISTER,FOLLOW_REGISTER_in_register_range3145); 7776 stream_REGISTER.add(endreg); 7777 7778 } 7779 break; 7780 7781 } 7782 7783 } 7784 break; 7785 7786 } 7787 7788 // AST REWRITE 7789 // elements: endreg, startreg 7790 // token labels: endreg, startreg 7791 // rule labels: retval 7792 // token list labels: 7793 // rule list labels: 7794 // wildcard labels: 7795 retval.tree = root_0; 7796 RewriteRuleTokenStream stream_endreg=new RewriteRuleTokenStream(adaptor,"token endreg",endreg); 7797 RewriteRuleTokenStream stream_startreg=new RewriteRuleTokenStream(adaptor,"token startreg",startreg); 7798 RewriteRuleSubtreeStream stream_retval=new RewriteRuleSubtreeStream(adaptor,"rule retval",retval!=null?retval.getTree():null); 7799 7800 root_0 = (CommonTree)adaptor.nil(); 7801 // 729:52: -> ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) 7802 { 7803 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:55: ^( I_REGISTER_RANGE[$start, \"I_REGISTER_RANGE\"] ( $startreg)? ( $endreg)? ) 7804 { 7805 CommonTree root_1 = (CommonTree)adaptor.nil(); 7806 root_1 = (CommonTree)adaptor.becomeRoot((CommonTree)adaptor.create(I_REGISTER_RANGE, (retval.start), "I_REGISTER_RANGE"), root_1); 7807 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:103: ( $startreg)? 7808 if ( stream_startreg.hasNext() ) { 7809 adaptor.addChild(root_1, stream_startreg.nextNode()); 7810 } 7811 stream_startreg.reset(); 7812 7813 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:729:114: ( $endreg)? 7814 if ( stream_endreg.hasNext() ) { 7815 adaptor.addChild(root_1, stream_endreg.nextNode()); 7816 } 7817 stream_endreg.reset(); 7818 7819 adaptor.addChild(root_0, root_1); 7820 } 7821 7822 } 7823 7824 7825 retval.tree = root_0; 7826 7827 } 7828 7829 retval.stop = input.LT(-1); 7830 7831 retval.tree = (CommonTree)adaptor.rulePostProcessing(root_0); 7832 adaptor.setTokenBoundaries(retval.tree, retval.start, retval.stop); 7833 7834 } 7835 catch (RecognitionException re) { 7836 reportError(re); 7837 recover(input,re); 7838 retval.tree = (CommonTree)adaptor.errorNode(input, retval.start, input.LT(-1), re); 7839 } 7840 finally { 7841 // do for sure before leaving 7842 } 7843 return retval; 7844 } 7845 // $ANTLR end "register_range" 7846 7847 7848 public static class verification_error_reference_return extends ParserRuleReturnScope { 7849 CommonTree tree; 7850 @Override 7851 public CommonTree getTree() { return tree; } 7852 }; 7853 7854 7855 // $ANTLR start "verification_error_reference" 7856 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:731:1: verification_error_reference : ( CLASS_DESCRIPTOR | fully_qualified_field | fully_qualified_method ); 7857 public final smaliParser.verification_error_reference_return verification_error_reference() throws RecognitionException { 7858 smaliParser.verification_error_reference_return retval = new smaliParser.verification_error_reference_return(); 7859 retval.start = input.LT(1); 7860 7861 CommonTree root_0 = null; 7862 7863 Token CLASS_DESCRIPTOR184=null; 7864 ParserRuleReturnScope fully_qualified_field185 =null; 7865 ParserRuleReturnScope fully_qualified_method186 =null; 7866 7867 CommonTree CLASS_DESCRIPTOR184_tree=null; 7868 7869 try { 7870 // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliParser.g:732:3: ( CLASS_DESCRIPTOR | fully_qualified_field | fully_qualified_method ) 7871 int alt31=3; 7872 int LA31_0 = input.LA(1); 7873 if ( (LA31_0==CLASS_DESCRIPTOR) ) { 7874 int LA31_1 = input.LA(2); 7875 if ( (LA31_1==ANNOTATION_DIRECTIVE||LA31_1==ARRAY_DATA_DIRECTIVE||(LA31_1 >= CATCHALL_DIRECTIVE && LA31_1 <= CATCH_DIRECTIVE)||LA31_1==COLON||(LA31_1 >= END_LOCAL_DIRECTIVE && LA31_1 <= END_METHOD_DIRECTIVE)||LA31_1==EPILOGUE_DIRECTIVE||(LA31_1 >= INSTRUCTION_FORMAT10t && LA31_1 <= INSTRUCTION_FORMAT51l)||(LA31_1 >= LINE_DIRECTIVE && LA31_1 <= LOCAL_DIRECTIVE)||(LA31_1 >= PACKED_SWITCH_DIRECTIVE && LA31_1 <= PARAMETER_DIRECTIVE)||LA31_1==PROLOGUE_DIRECTIVE||(LA31_1 >= REGISTERS_DIRECTIVE && LA31_1 <= RESTART_LOCAL_DIRECTIVE)||(LA31_1 >= SOURCE_DIRECTIVE && LA31_1 <= SPARSE_SWITCH_DIRECTIVE)) ) { 7876 alt31=1; 7877 } 7878 else if ( (LA31_1==ARROW) ) { 7879 switch ( input.LA(3) ) { 7880 case SIMPLE_NAME: 7881 { 7882 int LA31_5 = input.LA(4); 7883 if ( (LA31_5==COLON) ) { 7884 alt31=2; 7885 } 7886 else if ( (LA31_5==OPEN_PAREN) ) { 7887 alt31=3; 7888 } 7889 7890 else { 7891 int nvaeMark = input.mark(); 7892 try { 7893 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 7894 input.consume(); 7895 } 7896 NoViableAltException nvae = 7897 new NoViableAltException("", 31, 5, input); 7898 throw nvae; 7899 } finally { 7900 input.rewind(nvaeMark); 7901 } 7902 } 7903 7904 } 7905 break; 7906 case ACCESS_SPEC: 7907 { 7908 int LA31_6 = input.LA(4); 7909 if ( (LA31_6==COLON) ) { 7910 alt31=2; 7911 } 7912 else if ( (LA31_6==OPEN_PAREN) ) { 7913 alt31=3; 7914 } 7915 7916 else { 7917 int nvaeMark = input.mark(); 7918 try { 7919 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 7920 input.consume(); 7921 } 7922 NoViableAltException nvae = 7923 new NoViableAltException("", 31, 6, input); 7924 throw nvae; 7925 } finally { 7926 input.rewind(nvaeMark); 7927 } 7928 } 7929 7930 } 7931 break; 7932 case VERIFICATION_ERROR_TYPE: 7933 { 7934 int LA31_7 = input.LA(4); 7935 if ( (LA31_7==COLON) ) { 7936 alt31=2; 7937 } 7938 else if ( (LA31_7==OPEN_PAREN) ) { 7939 alt31=3; 7940 } 7941 7942 else { 7943 int nvaeMark = input.mark(); 7944 try { 7945 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 7946 input.consume(); 7947 } 7948 NoViableAltException nvae = 7949 new NoViableAltException("", 31, 7, input); 7950 throw nvae; 7951 } finally { 7952 input.rewind(nvaeMark); 7953 } 7954 } 7955 7956 } 7957 break; 7958 case POSITIVE_INTEGER_LITERAL: 7959 { 7960 int LA31_8 = input.LA(4); 7961 if ( (LA31_8==COLON) ) { 7962 alt31=2; 7963 } 7964 else if ( (LA31_8==OPEN_PAREN) ) { 7965 alt31=3; 7966 } 7967 7968 else { 7969 int nvaeMark = input.mark(); 7970 try { 7971 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 7972 input.consume(); 7973 } 7974 NoViableAltException nvae = 7975 new NoViableAltException("", 31, 8, input); 7976 throw nvae; 7977 } finally { 7978 input.rewind(nvaeMark); 7979 } 7980 } 7981 7982 } 7983 break; 7984 case NEGATIVE_INTEGER_LITERAL: 7985 { 7986 int LA31_9 = input.LA(4); 7987 if ( (LA31_9==COLON) ) { 7988 alt31=2; 7989 } 7990 else if ( (LA31_9==OPEN_PAREN) ) { 7991 alt31=3; 7992 } 7993 7994 else { 7995 int nvaeMark = input.mark(); 7996 try { 7997 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 7998 input.consume(); 7999 } 8000 NoViableAltException nvae = 8001 new NoViableAltException("", 31, 9, input); 8002 throw nvae; 8003 } finally { 8004 input.rewind(nvaeMark); 8005 } 8006 } 8007 8008 } 8009 break; 8010 case FLOAT_LITERAL_OR_ID: 8011 { 8012 int LA31_10 = input.LA(4); 8013 if ( (LA31_10==COLON) ) { 8014 alt31=2; 8015 } 8016 else if ( (LA31_10==OPEN_PAREN) ) { 8017 alt31=3; 8018 } 8019 8020 else { 8021 int nvaeMark = input.mark(); 8022 try { 8023 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8024 input.consume(); 8025 } 8026 NoViableAltException nvae = 8027 new NoViableAltException("", 31, 10, input); 8028 throw nvae; 8029 } finally { 8030 input.rewind(nvaeMark); 8031 } 8032 } 8033 8034 } 8035 break; 8036 case DOUBLE_LITERAL_OR_ID: 8037 { 8038 int LA31_11 = input.LA(4); 8039 if ( (LA31_11==COLON) ) { 8040 alt31=2; 8041 } 8042 else if ( (LA31_11==OPEN_PAREN) ) { 8043 alt31=3; 8044 } 8045 8046 else { 8047 int nvaeMark = input.mark(); 8048 try { 8049 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8050 input.consume(); 8051 } 8052 NoViableAltException nvae = 8053 new NoViableAltException("", 31, 11, input); 8054 throw nvae; 8055 } finally { 8056 input.rewind(nvaeMark); 8057 } 8058 } 8059 8060 } 8061 break; 8062 case BOOL_LITERAL: 8063 { 8064 int LA31_12 = input.LA(4); 8065 if ( (LA31_12==COLON) ) { 8066 alt31=2; 8067 } 8068 else if ( (LA31_12==OPEN_PAREN) ) { 8069 alt31=3; 8070 } 8071 8072 else { 8073 int nvaeMark = input.mark(); 8074 try { 8075 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8076 input.consume(); 8077 } 8078 NoViableAltException nvae = 8079 new NoViableAltException("", 31, 12, input); 8080 throw nvae; 8081 } finally { 8082 input.rewind(nvaeMark); 8083 } 8084 } 8085 8086 } 8087 break; 8088 case NULL_LITERAL: 8089 { 8090 int LA31_13 = input.LA(4); 8091 if ( (LA31_13==COLON) ) { 8092 alt31=2; 8093 } 8094 else if ( (LA31_13==OPEN_PAREN) ) { 8095 alt31=3; 8096 } 8097 8098 else { 8099 int nvaeMark = input.mark(); 8100 try { 8101 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8102 input.consume(); 8103 } 8104 NoViableAltException nvae = 8105 new NoViableAltException("", 31, 13, input); 8106 throw nvae; 8107 } finally { 8108 input.rewind(nvaeMark); 8109 } 8110 } 8111 8112 } 8113 break; 8114 case REGISTER: 8115 { 8116 int LA31_14 = input.LA(4); 8117 if ( (LA31_14==COLON) ) { 8118 alt31=2; 8119 } 8120 else if ( (LA31_14==OPEN_PAREN) ) { 8121 alt31=3; 8122 } 8123 8124 else { 8125 int nvaeMark = input.mark(); 8126 try { 8127 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8128 input.consume(); 8129 } 8130 NoViableAltException nvae = 8131 new NoViableAltException("", 31, 14, input); 8132 throw nvae; 8133 } finally { 8134 input.rewind(nvaeMark); 8135 } 8136 } 8137 8138 } 8139 break; 8140 case PARAM_LIST_OR_ID: 8141 { 8142 int LA31_15 = input.LA(4); 8143 if ( (LA31_15==COLON) ) { 8144 alt31=2; 8145 } 8146 else if ( (LA31_15==OPEN_PAREN) ) { 8147 alt31=3; 8148 } 8149 8150 else { 8151 int nvaeMark = input.mark(); 8152 try { 8153 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8154 input.consume(); 8155 } 8156 NoViableAltException nvae = 8157 new NoViableAltException("", 31, 15, input); 8158 throw nvae; 8159 } finally { 8160 input.rewind(nvaeMark); 8161 } 8162 } 8163 8164 } 8165 break; 8166 case PRIMITIVE_TYPE: 8167 { 8168 int LA31_16 = input.LA(4); 8169 if ( (LA31_16==COLON) ) { 8170 alt31=2; 8171 } 8172 else if ( (LA31_16==OPEN_PAREN) ) { 8173 alt31=3; 8174 } 8175 8176 else { 8177 int nvaeMark = input.mark(); 8178 try { 8179 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8180 input.consume(); 8181 } 8182 NoViableAltException nvae = 8183 new NoViableAltException("", 31, 16, input); 8184 throw nvae; 8185 } finally { 8186 input.rewind(nvaeMark); 8187 } 8188 } 8189 8190 } 8191 break; 8192 case VOID_TYPE: 8193 { 8194 int LA31_17 = input.LA(4); 8195 if ( (LA31_17==COLON) ) { 8196 alt31=2; 8197 } 8198 else if ( (LA31_17==OPEN_PAREN) ) { 8199 alt31=3; 8200 } 8201 8202 else { 8203 int nvaeMark = input.mark(); 8204 try { 8205 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8206 input.consume(); 8207 } 8208 NoViableAltException nvae = 8209 new NoViableAltException("", 31, 17, input); 8210 throw nvae; 8211 } finally { 8212 input.rewind(nvaeMark); 8213 } 8214 } 8215 8216 } 8217 break; 8218 case ANNOTATION_VISIBILITY: 8219 { 8220 int LA31_18 = input.LA(4); 8221 if ( (LA31_18==COLON) ) { 8222 alt31=2; 8223 } 8224 else if ( (LA31_18==OPEN_PAREN) ) { 8225 alt31=3; 8226 } 8227 8228 else { 8229 int nvaeMark = input.mark(); 8230 try { 8231 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8232 input.consume(); 8233 } 8234 NoViableAltException nvae = 8235 new NoViableAltException("", 31, 18, input); 8236 throw nvae; 8237 } finally { 8238 input.rewind(nvaeMark); 8239 } 8240 } 8241 8242 } 8243 break; 8244 case INSTRUCTION_FORMAT10t: 8245 { 8246 int LA31_19 = input.LA(4); 8247 if ( (LA31_19==COLON) ) { 8248 alt31=2; 8249 } 8250 else if ( (LA31_19==OPEN_PAREN) ) { 8251 alt31=3; 8252 } 8253 8254 else { 8255 int nvaeMark = input.mark(); 8256 try { 8257 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8258 input.consume(); 8259 } 8260 NoViableAltException nvae = 8261 new NoViableAltException("", 31, 19, input); 8262 throw nvae; 8263 } finally { 8264 input.rewind(nvaeMark); 8265 } 8266 } 8267 8268 } 8269 break; 8270 case INSTRUCTION_FORMAT10x: 8271 { 8272 int LA31_20 = input.LA(4); 8273 if ( (LA31_20==COLON) ) { 8274 alt31=2; 8275 } 8276 else if ( (LA31_20==OPEN_PAREN) ) { 8277 alt31=3; 8278 } 8279 8280 else { 8281 int nvaeMark = input.mark(); 8282 try { 8283 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8284 input.consume(); 8285 } 8286 NoViableAltException nvae = 8287 new NoViableAltException("", 31, 20, input); 8288 throw nvae; 8289 } finally { 8290 input.rewind(nvaeMark); 8291 } 8292 } 8293 8294 } 8295 break; 8296 case INSTRUCTION_FORMAT10x_ODEX: 8297 { 8298 int LA31_21 = input.LA(4); 8299 if ( (LA31_21==COLON) ) { 8300 alt31=2; 8301 } 8302 else if ( (LA31_21==OPEN_PAREN) ) { 8303 alt31=3; 8304 } 8305 8306 else { 8307 int nvaeMark = input.mark(); 8308 try { 8309 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8310 input.consume(); 8311 } 8312 NoViableAltException nvae = 8313 new NoViableAltException("", 31, 21, input); 8314 throw nvae; 8315 } finally { 8316 input.rewind(nvaeMark); 8317 } 8318 } 8319 8320 } 8321 break; 8322 case INSTRUCTION_FORMAT11x: 8323 { 8324 int LA31_22 = input.LA(4); 8325 if ( (LA31_22==COLON) ) { 8326 alt31=2; 8327 } 8328 else if ( (LA31_22==OPEN_PAREN) ) { 8329 alt31=3; 8330 } 8331 8332 else { 8333 int nvaeMark = input.mark(); 8334 try { 8335 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8336 input.consume(); 8337 } 8338 NoViableAltException nvae = 8339 new NoViableAltException("", 31, 22, input); 8340 throw nvae; 8341 } finally { 8342 input.rewind(nvaeMark); 8343 } 8344 } 8345 8346 } 8347 break; 8348 case INSTRUCTION_FORMAT12x_OR_ID: 8349 { 8350 int LA31_23 = input.LA(4); 8351 if ( (LA31_23==COLON) ) { 8352 alt31=2; 8353 } 8354 else if ( (LA31_23==OPEN_PAREN) ) { 8355 alt31=3; 8356 } 8357 8358 else { 8359 int nvaeMark = input.mark(); 8360 try { 8361 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8362 input.consume(); 8363 } 8364 NoViableAltException nvae = 8365 new NoViableAltException("", 31, 23, input); 8366 throw nvae; 8367 } finally { 8368 input.rewind(nvaeMark); 8369 } 8370 } 8371 8372 } 8373 break; 8374 case INSTRUCTION_FORMAT21c_FIELD: 8375 { 8376 int LA31_24 = input.LA(4); 8377 if ( (LA31_24==COLON) ) { 8378 alt31=2; 8379 } 8380 else if ( (LA31_24==OPEN_PAREN) ) { 8381 alt31=3; 8382 } 8383 8384 else { 8385 int nvaeMark = input.mark(); 8386 try { 8387 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8388 input.consume(); 8389 } 8390 NoViableAltException nvae = 8391 new NoViableAltException("", 31, 24, input); 8392 throw nvae; 8393 } finally { 8394 input.rewind(nvaeMark); 8395 } 8396 } 8397 8398 } 8399 break; 8400 case INSTRUCTION_FORMAT21c_FIELD_ODEX: 8401 { 8402 int LA31_25 = input.LA(4); 8403 if ( (LA31_25==COLON) ) { 8404 alt31=2; 8405 } 8406 else if ( (LA31_25==OPEN_PAREN) ) { 8407 alt31=3; 8408 } 8409 8410 else { 8411 int nvaeMark = input.mark(); 8412 try { 8413 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8414 input.consume(); 8415 } 8416 NoViableAltException nvae = 8417 new NoViableAltException("", 31, 25, input); 8418 throw nvae; 8419 } finally { 8420 input.rewind(nvaeMark); 8421 } 8422 } 8423 8424 } 8425 break; 8426 case INSTRUCTION_FORMAT21c_STRING: 8427 { 8428 int LA31_26 = input.LA(4); 8429 if ( (LA31_26==COLON) ) { 8430 alt31=2; 8431 } 8432 else if ( (LA31_26==OPEN_PAREN) ) { 8433 alt31=3; 8434 } 8435 8436 else { 8437 int nvaeMark = input.mark(); 8438 try { 8439 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8440 input.consume(); 8441 } 8442 NoViableAltException nvae = 8443 new NoViableAltException("", 31, 26, input); 8444 throw nvae; 8445 } finally { 8446 input.rewind(nvaeMark); 8447 } 8448 } 8449 8450 } 8451 break; 8452 case INSTRUCTION_FORMAT21c_TYPE: 8453 { 8454 int LA31_27 = input.LA(4); 8455 if ( (LA31_27==COLON) ) { 8456 alt31=2; 8457 } 8458 else if ( (LA31_27==OPEN_PAREN) ) { 8459 alt31=3; 8460 } 8461 8462 else { 8463 int nvaeMark = input.mark(); 8464 try { 8465 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8466 input.consume(); 8467 } 8468 NoViableAltException nvae = 8469 new NoViableAltException("", 31, 27, input); 8470 throw nvae; 8471 } finally { 8472 input.rewind(nvaeMark); 8473 } 8474 } 8475 8476 } 8477 break; 8478 case INSTRUCTION_FORMAT21t: 8479 { 8480 int LA31_28 = input.LA(4); 8481 if ( (LA31_28==COLON) ) { 8482 alt31=2; 8483 } 8484 else if ( (LA31_28==OPEN_PAREN) ) { 8485 alt31=3; 8486 } 8487 8488 else { 8489 int nvaeMark = input.mark(); 8490 try { 8491 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8492 input.consume(); 8493 } 8494 NoViableAltException nvae = 8495 new NoViableAltException("", 31, 28, input); 8496 throw nvae; 8497 } finally { 8498 input.rewind(nvaeMark); 8499 } 8500 } 8501 8502 } 8503 break; 8504 case INSTRUCTION_FORMAT22c_FIELD: 8505 { 8506 int LA31_29 = input.LA(4); 8507 if ( (LA31_29==COLON) ) { 8508 alt31=2; 8509 } 8510 else if ( (LA31_29==OPEN_PAREN) ) { 8511 alt31=3; 8512 } 8513 8514 else { 8515 int nvaeMark = input.mark(); 8516 try { 8517 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8518 input.consume(); 8519 } 8520 NoViableAltException nvae = 8521 new NoViableAltException("", 31, 29, input); 8522 throw nvae; 8523 } finally { 8524 input.rewind(nvaeMark); 8525 } 8526 } 8527 8528 } 8529 break; 8530 case INSTRUCTION_FORMAT22c_FIELD_ODEX: 8531 { 8532 int LA31_30 = input.LA(4); 8533 if ( (LA31_30==COLON) ) { 8534 alt31=2; 8535 } 8536 else if ( (LA31_30==OPEN_PAREN) ) { 8537 alt31=3; 8538 } 8539 8540 else { 8541 int nvaeMark = input.mark(); 8542 try { 8543 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8544 input.consume(); 8545 } 8546 NoViableAltException nvae = 8547 new NoViableAltException("", 31, 30, input); 8548 throw nvae; 8549 } finally { 8550 input.rewind(nvaeMark); 8551 } 8552 } 8553 8554 } 8555 break; 8556 case INSTRUCTION_FORMAT22c_TYPE: 8557 { 8558 int LA31_31 = input.LA(4); 8559 if ( (LA31_31==COLON) ) { 8560 alt31=2; 8561 } 8562 else if ( (LA31_31==OPEN_PAREN) ) { 8563 alt31=3; 8564 } 8565 8566 else { 8567 int nvaeMark = input.mark(); 8568 try { 8569 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8570 input.consume(); 8571 } 8572 NoViableAltException nvae = 8573 new NoViableAltException("", 31, 31, input); 8574 throw nvae; 8575 } finally { 8576 input.rewind(nvaeMark); 8577 } 8578 } 8579 8580 } 8581 break; 8582 case INSTRUCTION_FORMAT22cs_FIELD: 8583 { 8584 int LA31_32 = input.LA(4); 8585 if ( (LA31_32==COLON) ) { 8586 alt31=2; 8587 } 8588 else if ( (LA31_32==OPEN_PAREN) ) { 8589 alt31=3; 8590 } 8591 8592 else { 8593 int nvaeMark = input.mark(); 8594 try { 8595 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8596 input.consume(); 8597 } 8598 NoViableAltException nvae = 8599 new NoViableAltException("", 31, 32, input); 8600 throw nvae; 8601 } finally { 8602 input.rewind(nvaeMark); 8603 } 8604 } 8605 8606 } 8607 break; 8608 case INSTRUCTION_FORMAT22s_OR_ID: 8609 { 8610 int LA31_33 = input.LA(4); 8611 if ( (LA31_33==COLON) ) { 8612 alt31=2; 8613 } 8614 else if ( (LA31_33==OPEN_PAREN) ) { 8615 alt31=3; 8616 } 8617 8618 else { 8619 int nvaeMark = input.mark(); 8620 try { 8621 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8622 input.consume(); 8623 } 8624 NoViableAltException nvae = 8625 new NoViableAltException("", 31, 33, input); 8626 throw nvae; 8627 } finally { 8628 input.rewind(nvaeMark); 8629 } 8630 } 8631 8632 } 8633 break; 8634 case INSTRUCTION_FORMAT22t: 8635 { 8636 int LA31_34 = input.LA(4); 8637 if ( (LA31_34==COLON) ) { 8638 alt31=2; 8639 } 8640 else if ( (LA31_34==OPEN_PAREN) ) { 8641 alt31=3; 8642 } 8643 8644 else { 8645 int nvaeMark = input.mark(); 8646 try { 8647 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8648 input.consume(); 8649 } 8650 NoViableAltException nvae = 8651 new NoViableAltException("", 31, 34, input); 8652 throw nvae; 8653 } finally { 8654 input.rewind(nvaeMark); 8655 } 8656 } 8657 8658 } 8659 break; 8660 case INSTRUCTION_FORMAT23x: 8661 { 8662 int LA31_35 = input.LA(4); 8663 if ( (LA31_35==COLON) ) { 8664 alt31=2; 8665 } 8666 else if ( (LA31_35==OPEN_PAREN) ) { 8667 alt31=3; 8668 } 8669 8670 else { 8671 int nvaeMark = input.mark(); 8672 try { 8673 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8674 input.consume(); 8675 } 8676 NoViableAltException nvae = 8677 new NoViableAltException("", 31, 35, input); 8678 throw nvae; 8679 } finally { 8680 input.rewind(nvaeMark); 8681 } 8682 } 8683 8684 } 8685 break; 8686 case INSTRUCTION_FORMAT31i_OR_ID: 8687 { 8688 int LA31_36 = input.LA(4); 8689 if ( (LA31_36==COLON) ) { 8690 alt31=2; 8691 } 8692 else if ( (LA31_36==OPEN_PAREN) ) { 8693 alt31=3; 8694 } 8695 8696 else { 8697 int nvaeMark = input.mark(); 8698 try { 8699 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8700 input.consume(); 8701 } 8702 NoViableAltException nvae = 8703 new NoViableAltException("", 31, 36, input); 8704 throw nvae; 8705 } finally { 8706 input.rewind(nvaeMark); 8707 } 8708 } 8709 8710 } 8711 break; 8712 case INSTRUCTION_FORMAT31t: 8713 { 8714 int LA31_37 = input.LA(4); 8715 if ( (LA31_37==COLON) ) { 8716 alt31=2; 8717 } 8718 else if ( (LA31_37==OPEN_PAREN) ) { 8719 alt31=3; 8720 } 8721 8722 else { 8723 int nvaeMark = input.mark(); 8724 try { 8725 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8726 input.consume(); 8727 } 8728 NoViableAltException nvae = 8729 new NoViableAltException("", 31, 37, input); 8730 throw nvae; 8731 } finally { 8732 input.rewind(nvaeMark); 8733 } 8734 } 8735 8736 } 8737 break; 8738 case INSTRUCTION_FORMAT35c_METHOD: 8739 { 8740 int LA31_38 = input.LA(4); 8741 if ( (LA31_38==COLON) ) { 8742 alt31=2; 8743 } 8744 else if ( (LA31_38==OPEN_PAREN) ) { 8745 alt31=3; 8746 } 8747 8748 else { 8749 int nvaeMark = input.mark(); 8750 try { 8751 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8752 input.consume(); 8753 } 8754 NoViableAltException nvae = 8755 new NoViableAltException("", 31, 38, input); 8756 throw nvae; 8757 } finally { 8758 input.rewind(nvaeMark); 8759 } 8760 } 8761 8762 } 8763 break; 8764 case INSTRUCTION_FORMAT35c_METHOD_ODEX: 8765 { 8766 int LA31_39 = input.LA(4); 8767 if ( (LA31_39==COLON) ) { 8768 alt31=2; 8769 } 8770 else if ( (LA31_39==OPEN_PAREN) ) { 8771 alt31=3; 8772 } 8773 8774 else { 8775 int nvaeMark = input.mark(); 8776 try { 8777 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8778 input.consume(); 8779 } 8780 NoViableAltException nvae = 8781 new NoViableAltException("", 31, 39, input); 8782 throw nvae; 8783 } finally { 8784 input.rewind(nvaeMark); 8785 } 8786 } 8787 8788 } 8789 break; 8790 case INSTRUCTION_FORMAT35c_TYPE: 8791 { 8792 int LA31_40 = input.LA(4); 8793 if ( (LA31_40==COLON) ) { 8794 alt31=2; 8795 } 8796 else if ( (LA31_40==OPEN_PAREN) ) { 8797 alt31=3; 8798 } 8799 8800 else { 8801 int nvaeMark = input.mark(); 8802 try { 8803 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8804 input.consume(); 8805 } 8806 NoViableAltException nvae = 8807 new NoViableAltException("", 31, 40, input); 8808 throw nvae; 8809 } finally { 8810 input.rewind(nvaeMark); 8811 } 8812 } 8813 8814 } 8815 break; 8816 case INSTRUCTION_FORMAT35mi_METHOD: 8817 { 8818 int LA31_41 = input.LA(4); 8819 if ( (LA31_41==COLON) ) { 8820 alt31=2; 8821 } 8822 else if ( (LA31_41==OPEN_PAREN) ) { 8823 alt31=3; 8824 } 8825 8826 else { 8827 int nvaeMark = input.mark(); 8828 try { 8829 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8830 input.consume(); 8831 } 8832 NoViableAltException nvae = 8833 new NoViableAltException("", 31, 41, input); 8834 throw nvae; 8835 } finally { 8836 input.rewind(nvaeMark); 8837 } 8838 } 8839 8840 } 8841 break; 8842 case INSTRUCTION_FORMAT35ms_METHOD: 8843 { 8844 int LA31_42 = input.LA(4); 8845 if ( (LA31_42==COLON) ) { 8846 alt31=2; 8847 } 8848 else if ( (LA31_42==OPEN_PAREN) ) { 8849 alt31=3; 8850 } 8851 8852 else { 8853 int nvaeMark = input.mark(); 8854 try { 8855 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8856 input.consume(); 8857 } 8858 NoViableAltException nvae = 8859 new NoViableAltException("", 31, 42, input); 8860 throw nvae; 8861 } finally { 8862 input.rewind(nvaeMark); 8863 } 8864 } 8865 8866 } 8867 break; 8868 case INSTRUCTION_FORMAT51l: 8869 { 8870 int LA31_43 = input.LA(4); 8871 if ( (LA31_43==COLON) ) { 8872 alt31=2; 8873 } 8874 else if ( (LA31_43==OPEN_PAREN) ) { 8875 alt31=3; 8876 } 8877 8878 else { 8879 int nvaeMark = input.mark(); 8880 try { 8881 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8882 input.consume(); 8883 } 8884 NoViableAltException nvae = 8885 new NoViableAltException("", 31, 43, input); 8886 throw nvae; 8887 } finally { 8888 input.rewind(nvaeMark); 8889 } 8890 } 8891 8892 } 8893 break; 8894 case MEMBER_NAME: 8895 { 8896 int LA31_44 = input.LA(4); 8897 if ( (LA31_44==COLON) ) { 8898 alt31=2; 8899 } 8900 else if ( (LA31_44==OPEN_PAREN) ) { 8901 alt31=3; 8902 } 8903 8904 else { 8905 int nvaeMark = input.mark(); 8906 try { 8907 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8908 input.consume(); 8909 } 8910 NoViableAltException nvae = 8911 new NoViableAltException("", 31, 44, input); 8912 throw nvae; 8913 } finally { 8914 input.rewind(nvaeMark); 8915 } 8916 } 8917 8918 } 8919 break; 8920 default: 8921 int nvaeMark = input.mark(); 8922 try { 8923 for (int nvaeConsume = 0; nvaeConsume < 3 - 1; nvaeConsume++) { 8924 input.consume(); 8925 } 8926 NoViableAltException nvae = 8927 new NoViableAltException("", 31, 4, input); 8928 throw nvae; 8929 } finally { 8930 input.rewind(nvaeMark); 8931 } 8932 } 8933 } 8934 8935 else { 8936 int nvaeMark = input.mark(); 8937 try { 8938 input.consume(); 8939 NoViableAltException nvae = 8940 new NoViableAltException("", 31, 1, input); 8941 throw nvae; 8942 } finally { 8943 input.rewind(nvaeMark); 8944 } 8945 } 8946 8947 } 8948 else if ( (LA31_0==ARRAY_DESCRIPTOR) ) { 8949 int LA31_2 = input.LA(2); 8950 if ( (LA31_2==ARROW) ) { 8951 switch ( input.LA(3) ) { 8952 case SIMPLE_NAME: 8953 { 8954 int LA31_5 = input.LA(4); 8955 if ( (LA31_5==COLON) ) { 8956 alt31=2; 8957 } 8958 else if ( (LA31_5==OPEN_PAREN) ) { 8959 alt31=3; 8960 } 8961 8962 else { 8963 int nvaeMark = input.mark(); 8964 try { 8965 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8966 input.consume(); 8967 } 8968 NoViableAltException nvae = 8969 new NoViableAltException("", 31, 5, input); 8970 throw nvae; 8971 } finally { 8972 input.rewind(nvaeMark); 8973 } 8974 } 8975 8976 } 8977 break; 8978 case ACCESS_SPEC: 8979 { 8980 int LA31_6 = input.LA(4); 8981 if ( (LA31_6==COLON) ) { 8982 alt31=2; 8983 } 8984 else if ( (LA31_6==OPEN_PAREN) ) { 8985 alt31=3; 8986 } 8987 8988 else { 8989 int nvaeMark = input.mark(); 8990 try { 8991 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 8992 input.consume(); 8993 } 8994 NoViableAltException nvae = 8995 new NoViableAltException("", 31, 6, input); 8996 throw nvae; 8997 } finally { 8998 input.rewind(nvaeMark); 8999 } 9000 } 9001 9002 } 9003 break; 9004 case VERIFICATION_ERROR_TYPE: 9005 { 9006 int LA31_7 = input.LA(4); 9007 if ( (LA31_7==COLON) ) { 9008 alt31=2; 9009 } 9010 else if ( (LA31_7==OPEN_PAREN) ) { 9011 alt31=3; 9012 } 9013 9014 else { 9015 int nvaeMark = input.mark(); 9016 try { 9017 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9018 input.consume(); 9019 } 9020 NoViableAltException nvae = 9021 new NoViableAltException("", 31, 7, input); 9022 throw nvae; 9023 } finally { 9024 input.rewind(nvaeMark); 9025 } 9026 } 9027 9028 } 9029 break; 9030 case POSITIVE_INTEGER_LITERAL: 9031 { 9032 int LA31_8 = input.LA(4); 9033 if ( (LA31_8==COLON) ) { 9034 alt31=2; 9035 } 9036 else if ( (LA31_8==OPEN_PAREN) ) { 9037 alt31=3; 9038 } 9039 9040 else { 9041 int nvaeMark = input.mark(); 9042 try { 9043 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9044 input.consume(); 9045 } 9046 NoViableAltException nvae = 9047 new NoViableAltException("", 31, 8, input); 9048 throw nvae; 9049 } finally { 9050 input.rewind(nvaeMark); 9051 } 9052 } 9053 9054 } 9055 break; 9056 case NEGATIVE_INTEGER_LITERAL: 9057 { 9058 int LA31_9 = input.LA(4); 9059 if ( (LA31_9==COLON) ) { 9060 alt31=2; 9061 } 9062 else if ( (LA31_9==OPEN_PAREN) ) { 9063 alt31=3; 9064 } 9065 9066 else { 9067 int nvaeMark = input.mark(); 9068 try { 9069 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9070 input.consume(); 9071 } 9072 NoViableAltException nvae = 9073 new NoViableAltException("", 31, 9, input); 9074 throw nvae; 9075 } finally { 9076 input.rewind(nvaeMark); 9077 } 9078 } 9079 9080 } 9081 break; 9082 case FLOAT_LITERAL_OR_ID: 9083 { 9084 int LA31_10 = input.LA(4); 9085 if ( (LA31_10==COLON) ) { 9086 alt31=2; 9087 } 9088 else if ( (LA31_10==OPEN_PAREN) ) { 9089 alt31=3; 9090 } 9091 9092 else { 9093 int nvaeMark = input.mark(); 9094 try { 9095 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9096 input.consume(); 9097 } 9098 NoViableAltException nvae = 9099 new NoViableAltException("", 31, 10, input); 9100 throw nvae; 9101 } finally { 9102 input.rewind(nvaeMark); 9103 } 9104 } 9105 9106 } 9107 break; 9108 case DOUBLE_LITERAL_OR_ID: 9109 { 9110 int LA31_11 = input.LA(4); 9111 if ( (LA31_11==COLON) ) { 9112 alt31=2; 9113 } 9114 else if ( (LA31_11==OPEN_PAREN) ) { 9115 alt31=3; 9116 } 9117 9118 else { 9119 int nvaeMark = input.mark(); 9120 try { 9121 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9122 input.consume(); 9123 } 9124 NoViableAltException nvae = 9125 new NoViableAltException("", 31, 11, input); 9126 throw nvae; 9127 } finally { 9128 input.rewind(nvaeMark); 9129 } 9130 } 9131 9132 } 9133 break; 9134 case BOOL_LITERAL: 9135 { 9136 int LA31_12 = input.LA(4); 9137 if ( (LA31_12==COLON) ) { 9138 alt31=2; 9139 } 9140 else if ( (LA31_12==OPEN_PAREN) ) { 9141 alt31=3; 9142 } 9143 9144 else { 9145 int nvaeMark = input.mark(); 9146 try { 9147 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9148 input.consume(); 9149 } 9150 NoViableAltException nvae = 9151 new NoViableAltException("", 31, 12, input); 9152 throw nvae; 9153 } finally { 9154 input.rewind(nvaeMark); 9155 } 9156 } 9157 9158 } 9159 break; 9160 case NULL_LITERAL: 9161 { 9162 int LA31_13 = input.LA(4); 9163 if ( (LA31_13==COLON) ) { 9164 alt31=2; 9165 } 9166 else if ( (LA31_13==OPEN_PAREN) ) { 9167 alt31=3; 9168 } 9169 9170 else { 9171 int nvaeMark = input.mark(); 9172 try { 9173 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9174 input.consume(); 9175 } 9176 NoViableAltException nvae = 9177 new NoViableAltException("", 31, 13, input); 9178 throw nvae; 9179 } finally { 9180 input.rewind(nvaeMark); 9181 } 9182 } 9183 9184 } 9185 break; 9186 case REGISTER: 9187 { 9188 int LA31_14 = input.LA(4); 9189 if ( (LA31_14==COLON) ) { 9190 alt31=2; 9191 } 9192 else if ( (LA31_14==OPEN_PAREN) ) { 9193 alt31=3; 9194 } 9195 9196 else { 9197 int nvaeMark = input.mark(); 9198 try { 9199 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9200 input.consume(); 9201 } 9202 NoViableAltException nvae = 9203 new NoViableAltException("", 31, 14, input); 9204 throw nvae; 9205 } finally { 9206 input.rewind(nvaeMark); 9207 } 9208 } 9209 9210 } 9211 break; 9212 case PARAM_LIST_OR_ID: 9213 { 9214 int LA31_15 = input.LA(4); 9215 if ( (LA31_15==COLON) ) { 9216 alt31=2; 9217 } 9218 else if ( (LA31_15==OPEN_PAREN) ) { 9219 alt31=3; 9220 } 9221 9222 else { 9223 int nvaeMark = input.mark(); 9224 try { 9225 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9226 input.consume(); 9227 } 9228 NoViableAltException nvae = 9229 new NoViableAltException("", 31, 15, input); 9230 throw nvae; 9231 } finally { 9232 input.rewind(nvaeMark); 9233 } 9234 } 9235 9236 } 9237 break; 9238 case PRIMITIVE_TYPE: 9239 { 9240 int LA31_16 = input.LA(4); 9241 if ( (LA31_16==COLON) ) { 9242 alt31=2; 9243 } 9244 else if ( (LA31_16==OPEN_PAREN) ) { 9245 alt31=3; 9246 } 9247 9248 else { 9249 int nvaeMark = input.mark(); 9250 try { 9251 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9252 input.consume(); 9253 } 9254 NoViableAltException nvae = 9255 new NoViableAltException("", 31, 16, input); 9256 throw nvae; 9257 } finally { 9258 input.rewind(nvaeMark); 9259 } 9260 } 9261 9262 } 9263 break; 9264 case VOID_TYPE: 9265 { 9266 int LA31_17 = input.LA(4); 9267 if ( (LA31_17==COLON) ) { 9268 alt31=2; 9269 } 9270 else if ( (LA31_17==OPEN_PAREN) ) { 9271 alt31=3; 9272 } 9273 9274 else { 9275 int nvaeMark = input.mark(); 9276 try { 9277 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9278 input.consume(); 9279 } 9280 NoViableAltException nvae = 9281 new NoViableAltException("", 31, 17, input); 9282 throw nvae; 9283 } finally { 9284 input.rewind(nvaeMark); 9285 } 9286 } 9287 9288 } 9289 break; 9290 case ANNOTATION_VISIBILITY: 9291 { 9292 int LA31_18 = input.LA(4); 9293 if ( (LA31_18==COLON) ) { 9294 alt31=2; 9295 } 9296 else if ( (LA31_18==OPEN_PAREN) ) { 9297 alt31=3; 9298 } 9299 9300 else { 9301 int nvaeMark = input.mark(); 9302 try { 9303 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9304 input.consume(); 9305 } 9306 NoViableAltException nvae = 9307 new NoViableAltException("", 31, 18, input); 9308 throw nvae; 9309 } finally { 9310 input.rewind(nvaeMark); 9311 } 9312 } 9313 9314 } 9315 break; 9316 case INSTRUCTION_FORMAT10t: 9317 { 9318 int LA31_19 = input.LA(4); 9319 if ( (LA31_19==COLON) ) { 9320 alt31=2; 9321 } 9322 else if ( (LA31_19==OPEN_PAREN) ) { 9323 alt31=3; 9324 } 9325 9326 else { 9327 int nvaeMark = input.mark(); 9328 try { 9329 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9330 input.consume(); 9331 } 9332 NoViableAltException nvae = 9333 new NoViableAltException("", 31, 19, input); 9334 throw nvae; 9335 } finally { 9336 input.rewind(nvaeMark); 9337 } 9338 } 9339 9340 } 9341 break; 9342 case INSTRUCTION_FORMAT10x: 9343 { 9344 int LA31_20 = input.LA(4); 9345 if ( (LA31_20==COLON) ) { 9346 alt31=2; 9347 } 9348 else if ( (LA31_20==OPEN_PAREN) ) { 9349 alt31=3; 9350 } 9351 9352 else { 9353 int nvaeMark = input.mark(); 9354 try { 9355 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9356 input.consume(); 9357 } 9358 NoViableAltException nvae = 9359 new NoViableAltException("", 31, 20, input); 9360 throw nvae; 9361 } finally { 9362 input.rewind(nvaeMark); 9363 } 9364 } 9365 9366 } 9367 break; 9368 case INSTRUCTION_FORMAT10x_ODEX: 9369 { 9370 int LA31_21 = input.LA(4); 9371 if ( (LA31_21==COLON) ) { 9372 alt31=2; 9373 } 9374 else if ( (LA31_21==OPEN_PAREN) ) { 9375 alt31=3; 9376 } 9377 9378 else { 9379 int nvaeMark = input.mark(); 9380 try { 9381 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9382 input.consume(); 9383 } 9384 NoViableAltException nvae = 9385 new NoViableAltException("", 31, 21, input); 9386 throw nvae; 9387 } finally { 9388 input.rewind(nvaeMark); 9389 } 9390 } 9391 9392 } 9393 break; 9394 case INSTRUCTION_FORMAT11x: 9395 { 9396 int LA31_22 = input.LA(4); 9397 if ( (LA31_22==COLON) ) { 9398 alt31=2; 9399 } 9400 else if ( (LA31_22==OPEN_PAREN) ) { 9401 alt31=3; 9402 } 9403 9404 else { 9405 int nvaeMark = input.mark(); 9406 try { 9407 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9408 input.consume(); 9409 } 9410 NoViableAltException nvae = 9411 new NoViableAltException("", 31, 22, input); 9412 throw nvae; 9413 } finally { 9414 input.rewind(nvaeMark); 9415 } 9416 } 9417 9418 } 9419 break; 9420 case INSTRUCTION_FORMAT12x_OR_ID: 9421 { 9422 int LA31_23 = input.LA(4); 9423 if ( (LA31_23==COLON) ) { 9424 alt31=2; 9425 } 9426 else if ( (LA31_23==OPEN_PAREN) ) { 9427 alt31=3; 9428 } 9429 9430 else { 9431 int nvaeMark = input.mark(); 9432 try { 9433 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9434 input.consume(); 9435 } 9436 NoViableAltException nvae = 9437 new NoViableAltException("", 31, 23, input); 9438 throw nvae; 9439 } finally { 9440 input.rewind(nvaeMark); 9441 } 9442 } 9443 9444 } 9445 break; 9446 case INSTRUCTION_FORMAT21c_FIELD: 9447 { 9448 int LA31_24 = input.LA(4); 9449 if ( (LA31_24==COLON) ) { 9450 alt31=2; 9451 } 9452 else if ( (LA31_24==OPEN_PAREN) ) { 9453 alt31=3; 9454 } 9455 9456 else { 9457 int nvaeMark = input.mark(); 9458 try { 9459 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9460 input.consume(); 9461 } 9462 NoViableAltException nvae = 9463 new NoViableAltException("", 31, 24, input); 9464 throw nvae; 9465 } finally { 9466 input.rewind(nvaeMark); 9467 } 9468 } 9469 9470 } 9471 break; 9472 case INSTRUCTION_FORMAT21c_FIELD_ODEX: 9473 { 9474 int LA31_25 = input.LA(4); 9475 if ( (LA31_25==COLON) ) { 9476 alt31=2; 9477 } 9478 else if ( (LA31_25==OPEN_PAREN) ) { 9479 alt31=3; 9480 } 9481 9482 else { 9483 int nvaeMark = input.mark(); 9484 try { 9485 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9486 input.consume(); 9487 } 9488 NoViableAltException nvae = 9489 new NoViableAltException("", 31, 25, input); 9490 throw nvae; 9491 } finally { 9492 input.rewind(nvaeMark); 9493 } 9494 } 9495 9496 } 9497 break; 9498 case INSTRUCTION_FORMAT21c_STRING: 9499 { 9500 int LA31_26 = input.LA(4); 9501 if ( (LA31_26==COLON) ) { 9502 alt31=2; 9503 } 9504 else if ( (LA31_26==OPEN_PAREN) ) { 9505 alt31=3; 9506 } 9507 9508 else { 9509 int nvaeMark = input.mark(); 9510 try { 9511 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9512 input.consume(); 9513 } 9514 NoViableAltException nvae = 9515 new NoViableAltException("", 31, 26, input); 9516 throw nvae; 9517 } finally { 9518 input.rewind(nvaeMark); 9519 } 9520 } 9521 9522 } 9523 break; 9524 case INSTRUCTION_FORMAT21c_TYPE: 9525 { 9526 int LA31_27 = input.LA(4); 9527 if ( (LA31_27==COLON) ) { 9528 alt31=2; 9529 } 9530 else if ( (LA31_27==OPEN_PAREN) ) { 9531 alt31=3; 9532 } 9533 9534 else { 9535 int nvaeMark = input.mark(); 9536 try { 9537 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9538 input.consume(); 9539 } 9540 NoViableAltException nvae = 9541 new NoViableAltException("", 31, 27, input); 9542 throw nvae; 9543 } finally { 9544 input.rewind(nvaeMark); 9545 } 9546 } 9547 9548 } 9549 break; 9550 case INSTRUCTION_FORMAT21t: 9551 { 9552 int LA31_28 = input.LA(4); 9553 if ( (LA31_28==COLON) ) { 9554 alt31=2; 9555 } 9556 else if ( (LA31_28==OPEN_PAREN) ) { 9557 alt31=3; 9558 } 9559 9560 else { 9561 int nvaeMark = input.mark(); 9562 try { 9563 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9564 input.consume(); 9565 } 9566 NoViableAltException nvae = 9567 new NoViableAltException("", 31, 28, input); 9568 throw nvae; 9569 } finally { 9570 input.rewind(nvaeMark); 9571 } 9572 } 9573 9574 } 9575 break; 9576 case INSTRUCTION_FORMAT22c_FIELD: 9577 { 9578 int LA31_29 = input.LA(4); 9579 if ( (LA31_29==COLON) ) { 9580 alt31=2; 9581 } 9582 else if ( (LA31_29==OPEN_PAREN) ) { 9583 alt31=3; 9584 } 9585 9586 else { 9587 int nvaeMark = input.mark(); 9588 try { 9589 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9590 input.consume(); 9591 } 9592 NoViableAltException nvae = 9593 new NoViableAltException("", 31, 29, input); 9594 throw nvae; 9595 } finally { 9596 input.rewind(nvaeMark); 9597 } 9598 } 9599 9600 } 9601 break; 9602 case INSTRUCTION_FORMAT22c_FIELD_ODEX: 9603 { 9604 int LA31_30 = input.LA(4); 9605 if ( (LA31_30==COLON) ) { 9606 alt31=2; 9607 } 9608 else if ( (LA31_30==OPEN_PAREN) ) { 9609 alt31=3; 9610 } 9611 9612 else { 9613 int nvaeMark = input.mark(); 9614 try { 9615 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9616 input.consume(); 9617 } 9618 NoViableAltException nvae = 9619 new NoViableAltException("", 31, 30, input); 9620 throw nvae; 9621 } finally { 9622 input.rewind(nvaeMark); 9623 } 9624 } 9625 9626 } 9627 break; 9628 case INSTRUCTION_FORMAT22c_TYPE: 9629 { 9630 int LA31_31 = input.LA(4); 9631 if ( (LA31_31==COLON) ) { 9632 alt31=2; 9633 } 9634 else if ( (LA31_31==OPEN_PAREN) ) { 9635 alt31=3; 9636 } 9637 9638 else { 9639 int nvaeMark = input.mark(); 9640 try { 9641 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9642 input.consume(); 9643 } 9644 NoViableAltException nvae = 9645 new NoViableAltException("", 31, 31, input); 9646 throw nvae; 9647 } finally { 9648 input.rewind(nvaeMark); 9649 } 9650 } 9651 9652 } 9653 break; 9654 case INSTRUCTION_FORMAT22cs_FIELD: 9655 { 9656 int LA31_32 = input.LA(4); 9657 if ( (LA31_32==COLON) ) { 9658 alt31=2; 9659 } 9660 else if ( (LA31_32==OPEN_PAREN) ) { 9661 alt31=3; 9662 } 9663 9664 else { 9665 int nvaeMark = input.mark(); 9666 try { 9667 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9668 input.consume(); 9669 } 9670 NoViableAltException nvae = 9671 new NoViableAltException("", 31, 32, input); 9672 throw nvae; 9673 } finally { 9674 input.rewind(nvaeMark); 9675 } 9676 } 9677 9678 } 9679 break; 9680 case INSTRUCTION_FORMAT22s_OR_ID: 9681 { 9682 int LA31_33 = input.LA(4); 9683 if ( (LA31_33==COLON) ) { 9684 alt31=2; 9685 } 9686 else if ( (LA31_33==OPEN_PAREN) ) { 9687 alt31=3; 9688 } 9689 9690 else { 9691 int nvaeMark = input.mark(); 9692 try { 9693 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9694 input.consume(); 9695 } 9696 NoViableAltException nvae = 9697 new NoViableAltException("", 31, 33, input); 9698 throw nvae; 9699 } finally { 9700 input.rewind(nvaeMark); 9701 } 9702 } 9703 9704 } 9705 break; 9706 case INSTRUCTION_FORMAT22t: 9707 { 9708 int LA31_34 = input.LA(4); 9709 if ( (LA31_34==COLON) ) { 9710 alt31=2; 9711 } 9712 else if ( (LA31_34==OPEN_PAREN) ) { 9713 alt31=3; 9714 } 9715 9716 else { 9717 int nvaeMark = input.mark(); 9718 try { 9719 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9720 input.consume(); 9721 } 9722 NoViableAltException nvae = 9723 new NoViableAltException("", 31, 34, input); 9724 throw nvae; 9725 } finally { 9726 input.rewind(nvaeMark); 9727 } 9728 } 9729 9730 } 9731 break; 9732 case INSTRUCTION_FORMAT23x: 9733 { 9734 int LA31_35 = input.LA(4); 9735 if ( (LA31_35==COLON) ) { 9736 alt31=2; 9737 } 9738 else if ( (LA31_35==OPEN_PAREN) ) { 9739 alt31=3; 9740 } 9741 9742 else { 9743 int nvaeMark = input.mark(); 9744 try { 9745 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9746 input.consume(); 9747 } 9748 NoViableAltException nvae = 9749 new NoViableAltException("", 31, 35, input); 9750 throw nvae; 9751 } finally { 9752 input.rewind(nvaeMark); 9753 } 9754 } 9755 9756 } 9757 break; 9758 case INSTRUCTION_FORMAT31i_OR_ID: 9759 { 9760 int LA31_36 = input.LA(4); 9761 if ( (LA31_36==COLON) ) { 9762 alt31=2; 9763 } 9764 else if ( (LA31_36==OPEN_PAREN) ) { 9765 alt31=3; 9766 } 9767 9768 else { 9769 int nvaeMark = input.mark(); 9770 try { 9771 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9772 input.consume(); 9773 } 9774 NoViableAltException nvae = 9775 new NoViableAltException("", 31, 36, input); 9776 throw nvae; 9777 } finally { 9778 input.rewind(nvaeMark); 9779 } 9780 } 9781 9782 } 9783 break; 9784 case INSTRUCTION_FORMAT31t: 9785 { 9786 int LA31_37 = input.LA(4); 9787 if ( (LA31_37==COLON) ) { 9788 alt31=2; 9789 } 9790 else if ( (LA31_37==OPEN_PAREN) ) { 9791 alt31=3; 9792 } 9793 9794 else { 9795 int nvaeMark = input.mark(); 9796 try { 9797 for (int nvaeConsume = 0; nvaeConsume < 4 - 1; nvaeConsume++) { 9798 input.consume(); 9799 } 9800 NoViableAltException nvae = 9801 new NoViableAltException("", 31, 37, input); 9802 throw nvae; 9803 } finally { 9804 input.rewind(nvaeMark); 9805 } 9806 } 9807 9808 } 9809 break; 9810 case INSTRUCTION_FORMAT35c_METHOD: 9811 { 9812 int LA31_38 = input.LA(4); 9813 if ( (LA31_38==COLON) ) { 9814 alt31=2; 9815 } 9816 else if ( (LA31_38==OPEN_PAREN) ) { 9817 alt31=3;