Package cn.wensiqun.asmsupport.block

Examples of cn.wensiqun.asmsupport.block.ProgramBlock


      throw new NullPointerException();
    }else if(!ProgramBlock.class.equals(parameterTypes[0])){
        throw new ASMSupportException("first argument type must be ProgramBlock")
    }
   
    ProgramBlock executeBlock = (ProgramBlock) arguments[0];
   
    executeBlock.tiggerTryCatchPrepare();
    try {
      //触发一次性任务的监听器
      List<NewOperatorListener> foundOneTimeListeners = null;
      for(NewOperatorListener linstener : oneTimeListeners){
        linstener.setExecuteBlock(executeBlock);
View Full Code Here


  @Override
  protected void beforeNew() {
    //如果在catch中有return 需要创建一个隐式的finally语句块内的内容
    if(getOperatorClass().equals(Return.class)){
      ProgramBlock cloneFinally = finallyBlock.getCopy();
        cloneFinally.setExecuteBlock(getExecuteBlock());

        //对于隐式的finally语句块中不监听
        OperatorFactory.removeMultiTimeListener(this);
        cloneFinally.generateInsn();
        OperatorFactory.addMultiTimeListener(this);
       
    }
  }
View Full Code Here

TOP

Related Classes of cn.wensiqun.asmsupport.block.ProgramBlock

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.