public final void insn_format21c_type() throws RecognitionException { CommonTree INSTRUCTION_FORMAT21c_TYPE123=null; CommonTree REGISTER124=null; TreeRuleReturnScope nonvoid_type_descriptor125 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:842:3: ( ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:843:5: ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) { match(input,I_STATEMENT_FORMAT21c_TYPE,FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2289); match(input, Token.DOWN, null); INSTRUCTION_FORMAT21c_TYPE123=(CommonTree)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2291); REGISTER124=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type2293); pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2295); nonvoid_type_descriptor125=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_TYPE123!=null?INSTRUCTION_FORMAT21c_TYPE123.getText():null)); short regA = parseRegister_byte((REGISTER124!=null?REGISTER124.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA, dexBuilder.internTypeReference((nonvoid_type_descriptor125!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor125).type:null)))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format22c_type() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; CommonTree INSTRUCTION_FORMAT22c_TYPE141=null; TreeRuleReturnScope nonvoid_type_descriptor142 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:927:3: ( ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:928:5: ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) { match(input,I_STATEMENT_FORMAT22c_TYPE,FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2512); match(input, Token.DOWN, null); INSTRUCTION_FORMAT22c_TYPE141=(CommonTree)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2514); registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2518); registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2522); pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2524); nonvoid_type_descriptor142=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_TYPE141!=null?INSTRUCTION_FORMAT22c_TYPE141.getText():null)); byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null)); byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB, dexBuilder.internTypeReference((nonvoid_type_descriptor142!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor142).type:null)))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format21c_type() throws RecognitionException { CommonTree INSTRUCTION_FORMAT21c_TYPE125=null; CommonTree REGISTER126=null; TreeRuleReturnScope nonvoid_type_descriptor127 =null; try { // smaliTreeWalker.g:874:3: ( ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) ) // smaliTreeWalker.g:875:5: ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) { match(input,I_STATEMENT_FORMAT21c_TYPE,FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2358); match(input, Token.DOWN, null); INSTRUCTION_FORMAT21c_TYPE125=(CommonTree)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2360); REGISTER126=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type2362); pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2364); nonvoid_type_descriptor127=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_TYPE125!=null?INSTRUCTION_FORMAT21c_TYPE125.getText():null)); short regA = parseRegister_byte((REGISTER126!=null?REGISTER126.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA, dexBuilder.internTypeReference((nonvoid_type_descriptor127!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor127).type:null)))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format22c_type() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; CommonTree INSTRUCTION_FORMAT22c_TYPE149=null; TreeRuleReturnScope nonvoid_type_descriptor150 =null; try { // smaliTreeWalker.g:983:3: ( ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) ) // smaliTreeWalker.g:984:5: ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) { match(input,I_STATEMENT_FORMAT22c_TYPE,FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2639); match(input, Token.DOWN, null); INSTRUCTION_FORMAT22c_TYPE149=(CommonTree)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2641); registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2645); registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2649); pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2651); nonvoid_type_descriptor150=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_TYPE149!=null?INSTRUCTION_FORMAT22c_TYPE149.getText():null)); byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null)); byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB, dexBuilder.internTypeReference((nonvoid_type_descriptor150!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor150).type:null)))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format21c_type() throws RecognitionException { CommonTree INSTRUCTION_FORMAT21c_TYPE123=null; CommonTree REGISTER124=null; TreeRuleReturnScope nonvoid_type_descriptor125 =null; try { // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:842:3: ( ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) ) // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:843:5: ^( I_STATEMENT_FORMAT21c_TYPE INSTRUCTION_FORMAT21c_TYPE REGISTER nonvoid_type_descriptor ) { match(input,I_STATEMENT_FORMAT21c_TYPE,FOLLOW_I_STATEMENT_FORMAT21c_TYPE_in_insn_format21c_type2289); match(input, Token.DOWN, null); INSTRUCTION_FORMAT21c_TYPE123=(CommonTree)match(input,INSTRUCTION_FORMAT21c_TYPE,FOLLOW_INSTRUCTION_FORMAT21c_TYPE_in_insn_format21c_type2291); REGISTER124=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format21c_type2293); pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format21c_type2295); nonvoid_type_descriptor125=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT21c_TYPE123!=null?INSTRUCTION_FORMAT21c_TYPE123.getText():null)); short regA = parseRegister_byte((REGISTER124!=null?REGISTER124.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction21c(opcode, regA, dexBuilder.internTypeReference((nonvoid_type_descriptor125!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor125).type:null)))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format22c_type() throws RecognitionException { CommonTree registerA=null; CommonTree registerB=null; CommonTree INSTRUCTION_FORMAT22c_TYPE141=null; TreeRuleReturnScope nonvoid_type_descriptor142 =null; try { // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:927:3: ( ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) ) // /usr/local/google/home/bgruv/android/aosp-master/external/smali/smali/src/main/antlr3/smaliTreeWalker.g:928:5: ^( I_STATEMENT_FORMAT22c_TYPE INSTRUCTION_FORMAT22c_TYPE registerA= REGISTER registerB= REGISTER nonvoid_type_descriptor ) { match(input,I_STATEMENT_FORMAT22c_TYPE,FOLLOW_I_STATEMENT_FORMAT22c_TYPE_in_insn_format22c_type2512); match(input, Token.DOWN, null); INSTRUCTION_FORMAT22c_TYPE141=(CommonTree)match(input,INSTRUCTION_FORMAT22c_TYPE,FOLLOW_INSTRUCTION_FORMAT22c_TYPE_in_insn_format22c_type2514); registerA=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2518); registerB=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format22c_type2522); pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format22c_type2524); nonvoid_type_descriptor142=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT22c_TYPE141!=null?INSTRUCTION_FORMAT22c_TYPE141.getText():null)); byte regA = parseRegister_nibble((registerA!=null?registerA.getText():null)); byte regB = parseRegister_nibble((registerB!=null?registerB.getText():null)); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction22c(opcode, regA, regB, dexBuilder.internTypeReference((nonvoid_type_descriptor142!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor142).type:null)))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final ClassDef smali_file() throws RecognitionException { ClassDef classDef = null; TreeRuleReturnScope header1 =null; Set<Annotation> annotations2 =null; List<BuilderField> fields3 =null; List<BuilderMethod> methods4 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:160:3: ( ^( I_CLASS_DEF header methods fields annotations ) ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:160:5: ^( I_CLASS_DEF header methods fields annotations ) { match(input,I_CLASS_DEF,FOLLOW_I_CLASS_DEF_in_smali_file52); match(input, Token.DOWN, null); pushFollow(FOLLOW_header_in_smali_file54); header1=header(); state._fsp--; pushFollow(FOLLOW_methods_in_smali_file56); methods4=methods(); state._fsp--; pushFollow(FOLLOW_fields_in_smali_file58); fields3=fields(); state._fsp--; pushFollow(FOLLOW_annotations_in_smali_file60); annotations2=annotations(); state._fsp--; match(input, Token.UP, null); classDef = dexBuilder.internClassDef((header1!=null?((smaliTreeWalker.header_return)header1).classType:null), (header1!=null?((smaliTreeWalker.header_return)header1).accessFlags:0), (header1!=null?((smaliTreeWalker.header_return)header1).superType:null), (header1!=null?((smaliTreeWalker.header_return)header1).implementsList:null), (header1!=null?((smaliTreeWalker.header_return)header1).sourceSpec:null), annotations2, fields3, methods4); } } catch (Exception ex) { if (verboseErrors) { ex.printStackTrace(System.err); } reportError(new SemanticException(input, ex)); } finally { // do for sure before leaving } return classDef; }
public final smaliTreeWalker.header_return header() throws RecognitionException { smaliTreeWalker.header_return retval = new smaliTreeWalker.header_return(); retval.start = input.LT(1); TreeRuleReturnScope class_spec5 =null; String super_spec6 =null; List<String> implements_list7 =null; String source_spec8 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:174:3: ( class_spec ( super_spec )? implements_list source_spec ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:174:3: class_spec ( super_spec )? implements_list source_spec { pushFollow(FOLLOW_class_spec_in_header85); class_spec5=class_spec(); state._fsp--; // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:174:14: ( super_spec )? int alt1=2; int LA1_0 = input.LA(1); if ( (LA1_0==I_SUPER) ) { alt1=1; } switch (alt1) { case 1 : // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:174:14: super_spec { pushFollow(FOLLOW_super_spec_in_header87); super_spec6=super_spec(); state._fsp--; } break; } pushFollow(FOLLOW_implements_list_in_header90); implements_list7=implements_list(); state._fsp--; pushFollow(FOLLOW_source_spec_in_header92); source_spec8=source_spec(); state._fsp--; classType = (class_spec5!=null?((smaliTreeWalker.class_spec_return)class_spec5).type:null); retval.classType = classType; retval.accessFlags = (class_spec5!=null?((smaliTreeWalker.class_spec_return)class_spec5).accessFlags:0); retval.superType = super_spec6; retval.implementsList = implements_list7; retval.sourceSpec = source_spec8; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } return retval; }
public final smaliTreeWalker.method_name_and_prototype_return method_name_and_prototype() throws RecognitionException { smaliTreeWalker.method_name_and_prototype_return retval = new smaliTreeWalker.method_name_and_prototype_return(); retval.start = input.LT(1); CommonTree SIMPLE_NAME74=null; TreeRuleReturnScope method_prototype75 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:475:3: ( SIMPLE_NAME method_prototype ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:475:5: SIMPLE_NAME method_prototype { SIMPLE_NAME74=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_method_name_and_prototype1120); pushFollow(FOLLOW_method_prototype_in_method_name_and_prototype1122); method_prototype75=method_prototype(); state._fsp--; retval.name = (SIMPLE_NAME74!=null?SIMPLE_NAME74.getText():null); retval.parameters = Lists.newArrayList(); int paramRegister = 0; for (String type: (method_prototype75!=null?((smaliTreeWalker.method_prototype_return)method_prototype75).parameters:null)) { retval.parameters.add(new SmaliMethodParameter(paramRegister++, type)); char c = type.charAt(0); if (c == 'D' || c == 'J') { paramRegister++; } } retval.returnType = (method_prototype75!=null?((smaliTreeWalker.method_prototype_return)method_prototype75).returnType:null); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } return retval; }
public final List<String> field_type_list() throws RecognitionException { List<String> types = null; TreeRuleReturnScope nonvoid_type_descriptor76 =null; types = Lists.newArrayList(); try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:496:3: ( ( nonvoid_type_descriptor )* ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )* { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )* loop17: while (true) { int alt17=2; int LA17_0 = input.LA(1); if ( (LA17_0==ARRAY_DESCRIPTOR||LA17_0==CLASS_DESCRIPTOR||LA17_0==PRIMITIVE_TYPE) ) { alt17=1; } switch (alt17) { case 1 : // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:497:7: nonvoid_type_descriptor { pushFollow(FOLLOW_nonvoid_type_descriptor_in_field_type_list1156); nonvoid_type_descriptor76=nonvoid_type_descriptor(); state._fsp--; types.add((nonvoid_type_descriptor76!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor76).type:null)); } break; default : break loop17; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } return types; }
public final void catch_directive() throws RecognitionException { Label from =null; Label to =null; Label using =null; TreeRuleReturnScope nonvoid_type_descriptor85 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:537:3: ( ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref ) ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:537:5: ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref ) { match(input,I_CATCH,FOLLOW_I_CATCH_in_catch_directive1332); match(input, Token.DOWN, null); pushFollow(FOLLOW_nonvoid_type_descriptor_in_catch_directive1334); nonvoid_type_descriptor85=nonvoid_type_descriptor(); state._fsp--; pushFollow(FOLLOW_label_ref_in_catch_directive1338); from=label_ref(); state._fsp--; pushFollow(FOLLOW_label_ref_in_catch_directive1342); to=label_ref(); state._fsp--; pushFollow(FOLLOW_label_ref_in_catch_directive1346); using=label_ref(); state._fsp--; match(input, Token.UP, null); method_stack.peek().methodBuilder.addCatch(dexBuilder.internTypeReference((nonvoid_type_descriptor85!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor85).type:null)), from, to, using); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format35c_method() throws RecognitionException { CommonTree INSTRUCTION_FORMAT35c_METHOD161=null; TreeRuleReturnScope register_list162 =null; ImmutableMethodReference fully_qualified_method163 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1040:3: ( ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_method ) ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1041:5: ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list fully_qualified_method ) { match(input,I_STATEMENT_FORMAT35c_METHOD,FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method2834); match(input, Token.DOWN, null); INSTRUCTION_FORMAT35c_METHOD161=(CommonTree)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method2836); pushFollow(FOLLOW_register_list_in_insn_format35c_method2838); register_list162=register_list(); state._fsp--; pushFollow(FOLLOW_fully_qualified_method_in_insn_format35c_method2840); fully_qualified_method163=fully_qualified_method(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_METHOD161!=null?INSTRUCTION_FORMAT35c_METHOD161.getText():null)); //this depends on the fact that register_list returns a byte[5] byte[] registers = (register_list162!=null?((smaliTreeWalker.register_list_return)register_list162).registers:null); byte registerCount = (register_list162!=null?((smaliTreeWalker.register_list_return)register_list162).registerCount:0); ImmutableMethodReference methodReference = fully_qualified_method163; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction35c(opcode, registerCount, registers[0], registers[1], registers[2], registers[3], registers[4], dexBuilder.internMethodReference(methodReference))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format35c_type() throws RecognitionException { CommonTree INSTRUCTION_FORMAT35c_TYPE164=null; TreeRuleReturnScope register_list165 =null; TreeRuleReturnScope nonvoid_type_descriptor166 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1056:3: ( ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1057:5: ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) { match(input,I_STATEMENT_FORMAT35c_TYPE,FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type2863); match(input, Token.DOWN, null); INSTRUCTION_FORMAT35c_TYPE164=(CommonTree)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type2865); pushFollow(FOLLOW_register_list_in_insn_format35c_type2867); register_list165=register_list(); state._fsp--; pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type2869); nonvoid_type_descriptor166=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_TYPE164!=null?INSTRUCTION_FORMAT35c_TYPE164.getText():null)); //this depends on the fact that register_list returns a byte[5] byte[] registers = (register_list165!=null?((smaliTreeWalker.register_list_return)register_list165).registers:null); byte registerCount = (register_list165!=null?((smaliTreeWalker.register_list_return)register_list165).registerCount:0); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction35c(opcode, registerCount, registers[0], registers[1], registers[2], registers[3], registers[4], dexBuilder.internTypeReference((nonvoid_type_descriptor166!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor166).type:null)))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format3rc_method() throws RecognitionException { CommonTree INSTRUCTION_FORMAT3rc_METHOD167=null; TreeRuleReturnScope register_range168 =null; ImmutableMethodReference fully_qualified_method169 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1070:3: ( ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_method ) ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1071:5: ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range fully_qualified_method ) { match(input,I_STATEMENT_FORMAT3rc_METHOD,FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method2892); match(input, Token.DOWN, null); INSTRUCTION_FORMAT3rc_METHOD167=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_METHOD,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method2894); pushFollow(FOLLOW_register_range_in_insn_format3rc_method2896); register_range168=register_range(); state._fsp--; pushFollow(FOLLOW_fully_qualified_method_in_insn_format3rc_method2898); fully_qualified_method169=fully_qualified_method(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_METHOD167!=null?INSTRUCTION_FORMAT3rc_METHOD167.getText():null)); int startRegister = (register_range168!=null?((smaliTreeWalker.register_range_return)register_range168).startRegister:0); int endRegister = (register_range168!=null?((smaliTreeWalker.register_range_return)register_range168).endRegister:0); int registerCount = endRegister-startRegister+1; ImmutableMethodReference methodReference = fully_qualified_method169; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction3rc(opcode, startRegister, registerCount, dexBuilder.internMethodReference(methodReference))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format3rc_type() throws RecognitionException { CommonTree INSTRUCTION_FORMAT3rc_TYPE170=null; TreeRuleReturnScope register_range171 =null; TreeRuleReturnScope nonvoid_type_descriptor172 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1086:3: ( ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) ) // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1087:5: ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) { match(input,I_STATEMENT_FORMAT3rc_TYPE,FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type2921); match(input, Token.DOWN, null); INSTRUCTION_FORMAT3rc_TYPE170=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_TYPE,FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type2923); pushFollow(FOLLOW_register_range_in_insn_format3rc_type2925); register_range171=register_range(); state._fsp--; pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type2927); nonvoid_type_descriptor172=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_TYPE170!=null?INSTRUCTION_FORMAT3rc_TYPE170.getText():null)); int startRegister = (register_range171!=null?((smaliTreeWalker.register_range_return)register_range171).startRegister:0); int endRegister = (register_range171!=null?((smaliTreeWalker.register_range_return)register_range171).endRegister:0); int registerCount = endRegister-startRegister+1; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction3rc(opcode, startRegister, registerCount, dexBuilder.internTypeReference((nonvoid_type_descriptor172!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor172).type:null)))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final String type_descriptor() throws RecognitionException { String type = null; TreeRuleReturnScope nonvoid_type_descriptor181 =null; try { // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1153:3: ( VOID_TYPE | nonvoid_type_descriptor ) int alt35=2; int LA35_0 = input.LA(1); if ( (LA35_0==VOID_TYPE) ) { alt35=1; } else if ( (LA35_0==ARRAY_DESCRIPTOR||LA35_0==CLASS_DESCRIPTOR||LA35_0==PRIMITIVE_TYPE) ) { alt35=2; } else { NoViableAltException nvae = new NoViableAltException("", 35, 0, input); throw nvae; } switch (alt35) { case 1 : // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1153:5: VOID_TYPE { match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_descriptor3122); type = "V"; } break; case 2 : // D:\\decomplier_tools\\smali\\smali\\smali\\src\\main\\antlr3\\smaliTreeWalker.g:1154:5: nonvoid_type_descriptor { pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_descriptor3130); nonvoid_type_descriptor181=nonvoid_type_descriptor(); state._fsp--; type = (nonvoid_type_descriptor181!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor181).type:null); } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } return type; }
public final ClassDef smali_file() throws RecognitionException { ClassDef classDef = null; TreeRuleReturnScope header1 =null; Set<Annotation> annotations2 =null; List<BuilderField> fields3 =null; List<BuilderMethod> methods4 =null; try { // smaliTreeWalker.g:160:3: ( ^( I_CLASS_DEF header methods fields annotations ) ) // smaliTreeWalker.g:160:5: ^( I_CLASS_DEF header methods fields annotations ) { match(input,I_CLASS_DEF,FOLLOW_I_CLASS_DEF_in_smali_file52); match(input, Token.DOWN, null); pushFollow(FOLLOW_header_in_smali_file54); header1=header(); state._fsp--; pushFollow(FOLLOW_methods_in_smali_file56); methods4=methods(); state._fsp--; pushFollow(FOLLOW_fields_in_smali_file58); fields3=fields(); state._fsp--; pushFollow(FOLLOW_annotations_in_smali_file60); annotations2=annotations(); state._fsp--; match(input, Token.UP, null); classDef = dexBuilder.internClassDef((header1!=null?((smaliTreeWalker.header_return)header1).classType:null), (header1!=null?((smaliTreeWalker.header_return)header1).accessFlags:0), (header1!=null?((smaliTreeWalker.header_return)header1).superType:null), (header1!=null?((smaliTreeWalker.header_return)header1).implementsList:null), (header1!=null?((smaliTreeWalker.header_return)header1).sourceSpec:null), annotations2, fields3, methods4); } } catch (Exception ex) { if (verboseErrors) { ex.printStackTrace(System.err); } reportError(new SemanticException(input, ex)); } finally { // do for sure before leaving } return classDef; }
public final smaliTreeWalker.header_return header() throws RecognitionException { smaliTreeWalker.header_return retval = new smaliTreeWalker.header_return(); retval.start = input.LT(1); TreeRuleReturnScope class_spec5 =null; String super_spec6 =null; List<String> implements_list7 =null; String source_spec8 =null; try { // smaliTreeWalker.g:174:3: ( class_spec ( super_spec )? implements_list source_spec ) // smaliTreeWalker.g:174:3: class_spec ( super_spec )? implements_list source_spec { pushFollow(FOLLOW_class_spec_in_header85); class_spec5=class_spec(); state._fsp--; // smaliTreeWalker.g:174:14: ( super_spec )? int alt1=2; int LA1_0 = input.LA(1); if ( (LA1_0==I_SUPER) ) { alt1=1; } switch (alt1) { case 1 : // smaliTreeWalker.g:174:14: super_spec { pushFollow(FOLLOW_super_spec_in_header87); super_spec6=super_spec(); state._fsp--; } break; } pushFollow(FOLLOW_implements_list_in_header90); implements_list7=implements_list(); state._fsp--; pushFollow(FOLLOW_source_spec_in_header92); source_spec8=source_spec(); state._fsp--; classType = (class_spec5!=null?((smaliTreeWalker.class_spec_return)class_spec5).type:null); retval.classType = classType; retval.accessFlags = (class_spec5!=null?((smaliTreeWalker.class_spec_return)class_spec5).accessFlags:0); retval.superType = super_spec6; retval.implementsList = implements_list7; retval.sourceSpec = source_spec8; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } return retval; }
public final smaliTreeWalker.method_name_and_prototype_return method_name_and_prototype() throws RecognitionException { smaliTreeWalker.method_name_and_prototype_return retval = new smaliTreeWalker.method_name_and_prototype_return(); retval.start = input.LT(1); CommonTree SIMPLE_NAME74=null; TreeRuleReturnScope method_prototype75 =null; try { // smaliTreeWalker.g:475:3: ( SIMPLE_NAME method_prototype ) // smaliTreeWalker.g:475:5: SIMPLE_NAME method_prototype { SIMPLE_NAME74=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_method_name_and_prototype1120); pushFollow(FOLLOW_method_prototype_in_method_name_and_prototype1122); method_prototype75=method_prototype(); state._fsp--; retval.name = (SIMPLE_NAME74!=null?SIMPLE_NAME74.getText():null); retval.parameters = Lists.newArrayList(); int paramRegister = 0; for (String type: (method_prototype75!=null?((smaliTreeWalker.method_prototype_return)method_prototype75).parameters:null)) { retval.parameters.add(new SmaliMethodParameter(paramRegister++, type)); char c = type.charAt(0); if (c == 'D' || c == 'J') { paramRegister++; } } retval.returnType = (method_prototype75!=null?((smaliTreeWalker.method_prototype_return)method_prototype75).returnType:null); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } return retval; }
public final List<String> method_type_list() throws RecognitionException { List<String> types = null; TreeRuleReturnScope nonvoid_type_descriptor76 =null; types = Lists.newArrayList(); try { // smaliTreeWalker.g:496:3: ( ( nonvoid_type_descriptor )* ) // smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )* { // smaliTreeWalker.g:496:5: ( nonvoid_type_descriptor )* loop17: while (true) { int alt17=2; int LA17_0 = input.LA(1); if ( (LA17_0==ARRAY_DESCRIPTOR||LA17_0==CLASS_DESCRIPTOR||LA17_0==PRIMITIVE_TYPE) ) { alt17=1; } switch (alt17) { case 1 : // smaliTreeWalker.g:497:7: nonvoid_type_descriptor { pushFollow(FOLLOW_nonvoid_type_descriptor_in_method_type_list1156); nonvoid_type_descriptor76=nonvoid_type_descriptor(); state._fsp--; types.add((nonvoid_type_descriptor76!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor76).type:null)); } break; default : break loop17; } } } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } return types; }
public final ImmutableMethodReference method_reference() throws RecognitionException { ImmutableMethodReference methodReference = null; CommonTree SIMPLE_NAME78=null; TreeRuleReturnScope reference_type_descriptor77 =null; TreeRuleReturnScope method_prototype79 =null; try { // smaliTreeWalker.g:505:3: ( ( reference_type_descriptor )? SIMPLE_NAME method_prototype ) // smaliTreeWalker.g:505:5: ( reference_type_descriptor )? SIMPLE_NAME method_prototype { // smaliTreeWalker.g:505:5: ( reference_type_descriptor )? int alt18=2; int LA18_0 = input.LA(1); if ( (LA18_0==ARRAY_DESCRIPTOR||LA18_0==CLASS_DESCRIPTOR) ) { alt18=1; } switch (alt18) { case 1 : // smaliTreeWalker.g:505:5: reference_type_descriptor { pushFollow(FOLLOW_reference_type_descriptor_in_method_reference1185); reference_type_descriptor77=reference_type_descriptor(); state._fsp--; } break; } SIMPLE_NAME78=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_method_reference1188); pushFollow(FOLLOW_method_prototype_in_method_reference1190); method_prototype79=method_prototype(); state._fsp--; String type; if ((reference_type_descriptor77!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor77).type:null) == null) { type = classType; } else { type = (reference_type_descriptor77!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor77).type:null); } methodReference = new ImmutableMethodReference(type, (SIMPLE_NAME78!=null?SIMPLE_NAME78.getText():null), (method_prototype79!=null?((smaliTreeWalker.method_prototype_return)method_prototype79).parameters:null), (method_prototype79!=null?((smaliTreeWalker.method_prototype_return)method_prototype79).returnType:null)); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } return methodReference; }
public final ImmutableFieldReference field_reference() throws RecognitionException { ImmutableFieldReference fieldReference = null; CommonTree SIMPLE_NAME81=null; TreeRuleReturnScope reference_type_descriptor80 =null; TreeRuleReturnScope nonvoid_type_descriptor82 =null; try { // smaliTreeWalker.g:518:3: ( ( reference_type_descriptor )? SIMPLE_NAME nonvoid_type_descriptor ) // smaliTreeWalker.g:518:5: ( reference_type_descriptor )? SIMPLE_NAME nonvoid_type_descriptor { // smaliTreeWalker.g:518:5: ( reference_type_descriptor )? int alt19=2; int LA19_0 = input.LA(1); if ( (LA19_0==ARRAY_DESCRIPTOR||LA19_0==CLASS_DESCRIPTOR) ) { alt19=1; } switch (alt19) { case 1 : // smaliTreeWalker.g:518:5: reference_type_descriptor { pushFollow(FOLLOW_reference_type_descriptor_in_field_reference1207); reference_type_descriptor80=reference_type_descriptor(); state._fsp--; } break; } SIMPLE_NAME81=(CommonTree)match(input,SIMPLE_NAME,FOLLOW_SIMPLE_NAME_in_field_reference1210); pushFollow(FOLLOW_nonvoid_type_descriptor_in_field_reference1212); nonvoid_type_descriptor82=nonvoid_type_descriptor(); state._fsp--; String type; if ((reference_type_descriptor80!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor80).type:null) == null) { type = classType; } else { type = (reference_type_descriptor80!=null?((smaliTreeWalker.reference_type_descriptor_return)reference_type_descriptor80).type:null); } fieldReference = new ImmutableFieldReference(type, (SIMPLE_NAME81!=null?SIMPLE_NAME81.getText():null), (nonvoid_type_descriptor82!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor82).type:null)); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } return fieldReference; }
public final void catch_directive() throws RecognitionException { Label from =null; Label to =null; Label using =null; TreeRuleReturnScope nonvoid_type_descriptor85 =null; try { // smaliTreeWalker.g:549:3: ( ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref ) ) // smaliTreeWalker.g:549:5: ^( I_CATCH nonvoid_type_descriptor from= label_ref to= label_ref using= label_ref ) { match(input,I_CATCH,FOLLOW_I_CATCH_in_catch_directive1334); match(input, Token.DOWN, null); pushFollow(FOLLOW_nonvoid_type_descriptor_in_catch_directive1336); nonvoid_type_descriptor85=nonvoid_type_descriptor(); state._fsp--; pushFollow(FOLLOW_label_ref_in_catch_directive1340); from=label_ref(); state._fsp--; pushFollow(FOLLOW_label_ref_in_catch_directive1344); to=label_ref(); state._fsp--; pushFollow(FOLLOW_label_ref_in_catch_directive1348); using=label_ref(); state._fsp--; match(input, Token.UP, null); method_stack.peek().methodBuilder.addCatch(dexBuilder.internTypeReference((nonvoid_type_descriptor85!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor85).type:null)), from, to, using); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format25x() throws RecognitionException { CommonTree INSTRUCTION_FORMAT25x159=null; CommonTree REGISTER160=null; TreeRuleReturnScope register_list4161 =null; try { // smaliTreeWalker.g:1054:3: ( ^( I_STATEMENT_FORMAT25x INSTRUCTION_FORMAT25x REGISTER register_list4 ) ) // smaliTreeWalker.g:1055:5: ^( I_STATEMENT_FORMAT25x INSTRUCTION_FORMAT25x REGISTER register_list4 ) { match(input,I_STATEMENT_FORMAT25x,FOLLOW_I_STATEMENT_FORMAT25x_in_insn_format25x2849); match(input, Token.DOWN, null); INSTRUCTION_FORMAT25x159=(CommonTree)match(input,INSTRUCTION_FORMAT25x,FOLLOW_INSTRUCTION_FORMAT25x_in_insn_format25x2851); REGISTER160=(CommonTree)match(input,REGISTER,FOLLOW_REGISTER_in_insn_format25x2853); pushFollow(FOLLOW_register_list4_in_insn_format25x2855); register_list4161=register_list4(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT25x159!=null?INSTRUCTION_FORMAT25x159.getText():null)); byte closureRegister = parseRegister_nibble((REGISTER160!=null?REGISTER160.getText():null)); //this depends on the fact that register_list4 returns a byte[4] byte[] registers = (register_list4161!=null?((smaliTreeWalker.register_list4_return)register_list4161).registers:null); int parameterRegisterCount = (register_list4161!=null?((smaliTreeWalker.register_list4_return)register_list4161).registerCount:0); // don't count closure register method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction25x(opcode, parameterRegisterCount, closureRegister, registers[0], registers[1], registers[2], registers[3])); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format35c_method() throws RecognitionException { CommonTree INSTRUCTION_FORMAT35c_METHOD174=null; TreeRuleReturnScope register_list175 =null; ImmutableMethodReference method_reference176 =null; try { // smaliTreeWalker.g:1125:3: ( ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) ) // smaliTreeWalker.g:1126:5: ^( I_STATEMENT_FORMAT35c_METHOD INSTRUCTION_FORMAT35c_METHOD register_list method_reference ) { match(input,I_STATEMENT_FORMAT35c_METHOD,FOLLOW_I_STATEMENT_FORMAT35c_METHOD_in_insn_format35c_method3025); match(input, Token.DOWN, null); INSTRUCTION_FORMAT35c_METHOD174=(CommonTree)match(input,INSTRUCTION_FORMAT35c_METHOD,FOLLOW_INSTRUCTION_FORMAT35c_METHOD_in_insn_format35c_method3027); pushFollow(FOLLOW_register_list_in_insn_format35c_method3029); register_list175=register_list(); state._fsp--; pushFollow(FOLLOW_method_reference_in_insn_format35c_method3031); method_reference176=method_reference(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_METHOD174!=null?INSTRUCTION_FORMAT35c_METHOD174.getText():null)); //this depends on the fact that register_list returns a byte[5] byte[] registers = (register_list175!=null?((smaliTreeWalker.register_list_return)register_list175).registers:null); byte registerCount = (register_list175!=null?((smaliTreeWalker.register_list_return)register_list175).registerCount:0); ImmutableMethodReference methodReference = method_reference176; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction35c(opcode, registerCount, registers[0], registers[1], registers[2], registers[3], registers[4], dexBuilder.internMethodReference(methodReference))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format35c_type() throws RecognitionException { CommonTree INSTRUCTION_FORMAT35c_TYPE177=null; TreeRuleReturnScope register_list178 =null; TreeRuleReturnScope nonvoid_type_descriptor179 =null; try { // smaliTreeWalker.g:1141:3: ( ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) ) // smaliTreeWalker.g:1142:5: ^( I_STATEMENT_FORMAT35c_TYPE INSTRUCTION_FORMAT35c_TYPE register_list nonvoid_type_descriptor ) { match(input,I_STATEMENT_FORMAT35c_TYPE,FOLLOW_I_STATEMENT_FORMAT35c_TYPE_in_insn_format35c_type3054); match(input, Token.DOWN, null); INSTRUCTION_FORMAT35c_TYPE177=(CommonTree)match(input,INSTRUCTION_FORMAT35c_TYPE,FOLLOW_INSTRUCTION_FORMAT35c_TYPE_in_insn_format35c_type3056); pushFollow(FOLLOW_register_list_in_insn_format35c_type3058); register_list178=register_list(); state._fsp--; pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format35c_type3060); nonvoid_type_descriptor179=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT35c_TYPE177!=null?INSTRUCTION_FORMAT35c_TYPE177.getText():null)); //this depends on the fact that register_list returns a byte[5] byte[] registers = (register_list178!=null?((smaliTreeWalker.register_list_return)register_list178).registers:null); byte registerCount = (register_list178!=null?((smaliTreeWalker.register_list_return)register_list178).registerCount:0); method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction35c(opcode, registerCount, registers[0], registers[1], registers[2], registers[3], registers[4], dexBuilder.internTypeReference((nonvoid_type_descriptor179!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor179).type:null)))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format3rc_method() throws RecognitionException { CommonTree INSTRUCTION_FORMAT3rc_METHOD180=null; TreeRuleReturnScope register_range181 =null; ImmutableMethodReference method_reference182 =null; try { // smaliTreeWalker.g:1155:3: ( ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) ) // smaliTreeWalker.g:1156:5: ^( I_STATEMENT_FORMAT3rc_METHOD INSTRUCTION_FORMAT3rc_METHOD register_range method_reference ) { match(input,I_STATEMENT_FORMAT3rc_METHOD,FOLLOW_I_STATEMENT_FORMAT3rc_METHOD_in_insn_format3rc_method3083); match(input, Token.DOWN, null); INSTRUCTION_FORMAT3rc_METHOD180=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_METHOD,FOLLOW_INSTRUCTION_FORMAT3rc_METHOD_in_insn_format3rc_method3085); pushFollow(FOLLOW_register_range_in_insn_format3rc_method3087); register_range181=register_range(); state._fsp--; pushFollow(FOLLOW_method_reference_in_insn_format3rc_method3089); method_reference182=method_reference(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_METHOD180!=null?INSTRUCTION_FORMAT3rc_METHOD180.getText():null)); int startRegister = (register_range181!=null?((smaliTreeWalker.register_range_return)register_range181).startRegister:0); int endRegister = (register_range181!=null?((smaliTreeWalker.register_range_return)register_range181).endRegister:0); int registerCount = endRegister-startRegister+1; ImmutableMethodReference methodReference = method_reference182; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction3rc(opcode, startRegister, registerCount, dexBuilder.internMethodReference(methodReference))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final void insn_format3rc_type() throws RecognitionException { CommonTree INSTRUCTION_FORMAT3rc_TYPE183=null; TreeRuleReturnScope register_range184 =null; TreeRuleReturnScope nonvoid_type_descriptor185 =null; try { // smaliTreeWalker.g:1171:3: ( ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) ) // smaliTreeWalker.g:1172:5: ^( I_STATEMENT_FORMAT3rc_TYPE INSTRUCTION_FORMAT3rc_TYPE register_range nonvoid_type_descriptor ) { match(input,I_STATEMENT_FORMAT3rc_TYPE,FOLLOW_I_STATEMENT_FORMAT3rc_TYPE_in_insn_format3rc_type3112); match(input, Token.DOWN, null); INSTRUCTION_FORMAT3rc_TYPE183=(CommonTree)match(input,INSTRUCTION_FORMAT3rc_TYPE,FOLLOW_INSTRUCTION_FORMAT3rc_TYPE_in_insn_format3rc_type3114); pushFollow(FOLLOW_register_range_in_insn_format3rc_type3116); register_range184=register_range(); state._fsp--; pushFollow(FOLLOW_nonvoid_type_descriptor_in_insn_format3rc_type3118); nonvoid_type_descriptor185=nonvoid_type_descriptor(); state._fsp--; match(input, Token.UP, null); Opcode opcode = opcodes.getOpcodeByName((INSTRUCTION_FORMAT3rc_TYPE183!=null?INSTRUCTION_FORMAT3rc_TYPE183.getText():null)); int startRegister = (register_range184!=null?((smaliTreeWalker.register_range_return)register_range184).startRegister:0); int endRegister = (register_range184!=null?((smaliTreeWalker.register_range_return)register_range184).endRegister:0); int registerCount = endRegister-startRegister+1; method_stack.peek().methodBuilder.addInstruction(new BuilderInstruction3rc(opcode, startRegister, registerCount, dexBuilder.internTypeReference((nonvoid_type_descriptor185!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor185).type:null)))); } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } }
public final String type_descriptor() throws RecognitionException { String type = null; TreeRuleReturnScope nonvoid_type_descriptor194 =null; try { // smaliTreeWalker.g:1238:3: ( VOID_TYPE | nonvoid_type_descriptor ) int alt38=2; int LA38_0 = input.LA(1); if ( (LA38_0==VOID_TYPE) ) { alt38=1; } else if ( (LA38_0==ARRAY_DESCRIPTOR||LA38_0==CLASS_DESCRIPTOR||LA38_0==PRIMITIVE_TYPE) ) { alt38=2; } else { NoViableAltException nvae = new NoViableAltException("", 38, 0, input); throw nvae; } switch (alt38) { case 1 : // smaliTreeWalker.g:1238:5: VOID_TYPE { match(input,VOID_TYPE,FOLLOW_VOID_TYPE_in_type_descriptor3313); type = "V"; } break; case 2 : // smaliTreeWalker.g:1239:5: nonvoid_type_descriptor { pushFollow(FOLLOW_nonvoid_type_descriptor_in_type_descriptor3321); nonvoid_type_descriptor194=nonvoid_type_descriptor(); state._fsp--; type = (nonvoid_type_descriptor194!=null?((smaliTreeWalker.nonvoid_type_descriptor_return)nonvoid_type_descriptor194).type:null); } break; } } catch (RecognitionException re) { reportError(re); recover(input,re); } finally { // do for sure before leaving } return type; }