Examples of TwiddleOperator


Examples of org.eclipse.jdt.internal.debug.eval.ast.instructions.TwiddleOperator

        case '-': // unary minus
          push(new UnaryMinusOperator(expressionUnBoxedTypeId,
              fCounter));
          break;
        case '~': // twiddle
          push(new TwiddleOperator(expressionUnBoxedTypeId, fCounter));
          break;
        case '!': // not
          push(new NotOperator(expressionUnBoxedTypeId, fCounter));
          break;
        default:
          setHasError(true);
          addErrorMessage(EvaluationEngineMessages.ASTInstructionCompiler_unrecognized_prefix_operator____16
              + opToken);
          return false;
        }

        unBoxing(typeBinding);
        operand.accept(this);
        storeInstruction(); // un-boxing

      } else {
        // plus plus and minus minus operators

        push(new AssignmentOperator(Instruction.T_Object,
            Instruction.T_Object, fCounter));

        operand.accept(this);

        boxing(typeBinding, null);

        switch (char1) {
        case '+':
          push(new PlusOperator(expressionUnBoxedTypeId,
              expressionUnBoxedTypeId, expressionUnBoxedTypeId,
              fCounter));
          break;
        case '-':
          push(new MinusOperator(expressionUnBoxedTypeId,
              expressionUnBoxedTypeId, expressionUnBoxedTypeId,
              fCounter));
          break;
        default:
          setHasError(true);
          addErrorMessage(EvaluationEngineMessages.ASTInstructionCompiler_unrecognized_prefix_operator____16
              + opToken);
          return false;
        }

        unBoxing(typeBinding);
        push(new Dup());
        storeInstruction(); // dupe
        storeInstruction(); // un-boxing
        push(new PushInt(1));
        storeInstruction(); // push 1

        storeInstruction(); // operator
        storeInstruction(); // boxing

      }

      return false;
    }

    switch (char0) {
    case '+': // plus plus or unary plus
      switch (char1) {
      case '\0': // unary plus
        push(new UnaryPlusOperator(expressionTypeId, fCounter));
        break;
      case '+': // plus plus
        push(new PrefixPlusPlusOperator(expressionTypeId, fCounter));
        break;
      default:
        unrecognized = true;
        break;
      }
      break;
    case '-': // minus minus or unary minus
      switch (char1) {
      case '\0': // unary minus
        push(new UnaryMinusOperator(expressionTypeId, fCounter));
        break;
      case '-': // minus minus
        push(new PrefixMinusMinusOperator(expressionTypeId, fCounter));
        break;
      default:
        unrecognized = true;
        break;
      }
      break;
    case '~': // twiddle
      push(new TwiddleOperator(expressionTypeId, fCounter));
      break;
    case '!': // not
      push(new NotOperator(expressionTypeId, fCounter));
      break;
    default:
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.