2015-01-12 21 views
0

還有就是我的JCA文件的語法:獲取集合中的所有方法的指導下分別

methodBody:stackMethod localMethod descriptorMethod * instructionMethod *;

stackMethod:'.stack'NUMBER';' ;

localMethod:'.locals'NUMBER';' ;

descriptorMethod:'.descriptor'typeJCA';' qualifiedNumber';';

instructionMethod: ('L'NUMBER':')? op =指令+ ;

指令: qualifiedID('L'?NUMBER)*';' '。'qualifiedID'{'(('L'NUMBER)| NUMBER)*';' '}' ;

我希望得到所有方法的指令(instructionMethod *)separateley。隨着聽衆或觀衆

例:

@Override 
public void enterInstructionMethod(InstructionMethodContext ctx) { 
    //Print all instruction+ (one by one in a loop or any way) 
} 

感謝。

回答

0

這沒關係,我發現了一個解決方案(簡單解決方案)

首先,你要聽 @覆蓋 公共無效enterInstruction(InstructionContext CTX){

} 

其次你要聽到

@Override public void exitMethodBody(MethodBodyContext ctx){ //她會有觸發器說:嗨,instruc你剛纔讀到的是我的 //和所有退出法相同想法 }

謝謝。

相關問題