Package cn.wensiqun.asmsupport.utils

Examples of cn.wensiqun.asmsupport.utils.Stack


    public Method(MethodEntity me, IClassContext context, SuperMethodBody methodBody, int mode) {
        super();
        this.me = me;
        this.context = context;
        this.throwExceptions = new ThrowExceptionContainer();
        this.stack = new Stack();
        this.locals = new LocalVariables();
        this.mode = mode;

        CollectionUtils.addAll(throwExceptions, me.getExceptions());
       
View Full Code Here


    public void executing() {
      insnHelper.nop();
        insnHelper.mark(start);
        insnHelper.nop();
        //boolean endMarked = false;
        Stack stack = insnHelper.getMv().getStack();
        for(Executeable exe : getExecuteQueue()){
            if(exe.equals(implicitCatchThrowableStore)){
                insnHelper.mark(end);
                stack.push(AClass.THROWABLE_ACLASS.getType());
            }
            exe.execute();
        }
        try{
          end.getOffset();
View Full Code Here

       
        mv.visitLabel(trueLbl);
        mv.visitInsn(Opcodes.ICONST_1);
        mv.visitLabel(falseLbl);
       
        Stack stack = block.getMethod().getStack();
        stack.pop();
        stack.push(Type.BOOLEAN_TYPE);
        stack.printState();
    }
View Full Code Here

        mv.visitJumpInsn(Opcodes.GOTO, trueLbl);
        mv.visitLabel(falseLbl);
        mv.visitInsn(Opcodes.ICONST_0);
        mv.visitLabel(trueLbl);
       
        Stack stack = block.getMethod().getStack();
        stack.pop();
        stack.pop();
        stack.push(Type.BOOLEAN_TYPE);
       
    }
View Full Code Here

  }

  @Override
    public void executing() {
        insnHelper.mark(catchLbl);
        Stack stack = insnHelper.getMv().getStack();
        stack.push(exception.getType());
        insnHelper.nop();
       
        for(Executeable exe : getExecuteQueue()){
            if(exe.equals(implicitCatchThrowableStore)){
                stack.push(AClass.THROWABLE_ACLASS.getType());
            }
            exe.execute();
        }
       
        if(finallyBlock == null){
View Full Code Here

        mv.visitJumpInsn(Opcodes.GOTO, falseLbl);
        mv.visitLabel(trueLbl);
        mv.visitInsn(Opcodes.ICONST_1);
        mv.visitLabel(falseLbl);
       
        Stack stack = block.getMethod().getStack();
        stack.pop();
        stack.pop();
        stack.push(Type.BOOLEAN_TYPE);
    }
View Full Code Here

TOP

Related Classes of cn.wensiqun.asmsupport.utils.Stack

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.