Examples of EnumStackEltType


Examples of net.sf.joafip.store.entity.proxy.EnumStackEltType

  public StackElement pop(final StackElement pointer, final EnumType type)
      throws EnhanceException {
    if (pointer == null) {
      throw new EnhanceException(EMPTY_STACK);
    }
    EnumStackEltType stackEltType = pointer.getType();
    if (!stackEltType.equals(type.getLowType())) {
      throw new EnhanceException("type mismatch " + stackEltType
          + " in the stack for " + type.getLowType() + " expected");
    }
    StackElement newPointer = pointer.getPrevious();
    if (type.getCategory() == 2) {
      if (newPointer == null) {
        throw new EnhanceException(EMPTY_STACK);
      }
      stackEltType = newPointer.getType();
      if (!stackEltType.equals(type.getHighType())) {
        throw new EnhanceException("type mismatch " + stackEltType
            + " in the stack for " + type.getHighType()
            + " expected");
      }
      newPointer = newPointer.getPrevious();
View Full Code Here

Examples of net.sf.joafip.store.entity.proxy.EnumStackEltType

    // Pop the top value from the operand stack.
    //
    // The pop instruction must not be used unless value is a value of a
    // category 1 computational type
    //
    final EnumStackEltType type = currentStackElement.getType();
    if (type.getCategory() == 2) {
      throw new IllegalArgumentException("can not pop type of category 2");
    }
    return pop(currentStackElement);
  }
View Full Code Here

Examples of net.sf.joafip.store.entity.proxy.EnumStackEltType

    // ..., value => ..., value, value
    // Duplicate the top value on the operand stack and push the duplicated
    // value onto the operand stack.
    // The dup instruction must not be used unless value is a value of a
    // category 1 computational type
    final EnumStackEltType type = currentStackElement.getType();
    if (type.getCategory() == 2) {
      throw new IllegalArgumentException("can not dup type of category 2");
    }
    final StackElement pointer = push(currentStackElement, type);
    if (currentStackElement.isThisReference()) {
      pointer.setIsThisRef();
View Full Code Here

Examples of net.sf.joafip.store.entity.proxy.EnumStackEltType

    // ..., value2, value1 => ..., value1, value2, value1
    // Duplicate the top value on the operand stack and insert the
    // duplicated value two values down in the operand stack.
    // The dup_x1 instruction must not be used unless both value1 and value2
    // are values of a category 1 computational type
    final EnumStackEltType type1 = currentStackElement.getType();
    if (type1.getCategory() == 2) {
      throw new IllegalArgumentException(
          "can not dupX1 type of category 2");
    }
    final StackElement value2 = pop(currentStackElement);
    final EnumStackEltType type2 = value2.getType();
    if (type2.getCategory() == 2) {
      throw new IllegalArgumentException(
          "can not dupX1 type of category 2");
    }
    StackElement pointer = pop(value2);
    pointer = push(pointer, type1);
View Full Code Here

Examples of net.sf.joafip.store.entity.proxy.EnumStackEltType

    //
    // Duplicate the top value on the operand stack and insert the
    // duplicated value two or three values down in the operand stack.
    //
    // value2h value2l value1 => value1 value2h value2l value1
    final EnumStackEltType type1 = currentStackElement.getType();
    if (type1.getCategory() == 2) {
      throw new IllegalArgumentException(
          "can not dup X2 type of category 2");
    }
    final StackElement value2 = pop(currentStackElement);
    final StackElement value3 = pop(value2);
View Full Code Here

Examples of net.sf.joafip.store.entity.proxy.EnumStackEltType

    // where value is a value of a category 2 computational type (§3.11.1).
    //
    // Duplicate the top one or two values on the operand stack and push the
    // duplicated value or values back onto the operand stack in the
    // original order.
    final EnumStackEltType type1 = currentStackElement.getType();
    final StackElement value2 = pop(currentStackElement);
    StackElement pointer = pop(value2);
    pointer = push(pointer, value2.getType());
    if (value2.isThisReference()) {
      pointer.setIsThisRef();
View Full Code Here

Examples of net.sf.joafip.store.entity.proxy.EnumStackEltType

    // is a value of a category 1 computational type (§3.11.1).
    //
    // Duplicate the top one or two values on the operand stack and insert
    // the duplicated values, in the original order, one value beneath the
    // original value or values in the operand stack.
    final EnumStackEltType type1 = currentStackElement.getType();
    final StackElement value2 = pop(currentStackElement);
    final StackElement value3 = pop(value2);
    StackElement pointer = pop(value3);
    pointer = push(pointer, value2.getType());
    if (value2.isThisReference()) {
View Full Code Here

Examples of net.sf.joafip.store.entity.proxy.EnumStackEltType

    // where value1 and value2 are both values of a category 2 computational
    // type (§3.11.1).
    //
    // Duplicate the top one or two values on the operand stack and insert
    // the duplicated values, in the original order, into the operand stack.
    final EnumStackEltType type1 = currentStackElement.getType();
    final StackElement value2 = pop(currentStackElement);
    final StackElement value3 = pop(value2);
    final StackElement value4 = pop(value3);
    StackElement pointer = pop(value4);
    pointer = push(pointer, value2.getType());
View Full Code Here

Examples of net.sf.joafip.store.entity.proxy.EnumStackEltType

    // ..., value2, value1 ..., value1, value2
    //
    // Swap the top two values on the operand stack.
    // The swap instruction must not be used unless value1 and value2 are
    // both values of a category 1 computational type
    final EnumStackEltType type1 = currentStackElement.getType();
    if (type1.getCategory() == 2) {
      throw new IllegalArgumentException(
          "can not dup X2 type of category 2");
    }
    final StackElement value2 = pop(currentStackElement);
    final EnumStackEltType type2 = value2.getType();
    if (type2.getCategory() == 2) {
      throw new IllegalArgumentException(
          "can not dup X2 type of category 2");
    }
    StackElement pointer = pop(value2);
    pointer = push(pointer, type1);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.