+++ /dev/null
-package net.sourceforge.phpdt.internal.compiler.ast;
-
-/**
- * Any expression that have an operator.
- * @author Matthieu Casanova
- */
-public abstract class OperatorExpression
- extends Expression
- implements OperatorIds {
-
- public int operator;
-
- public OperatorExpression(int operator, int sourceStart, int sourceEnd) {
- super(sourceStart, sourceEnd);
- this.operator = operator;
- }
-
- public String operatorToString() {
- switch (operator) {
- case EQUAL_EQUAL :
- return "=="; //$NON-NLS-1$
- case LESS_EQUAL :
- return "<="; //$NON-NLS-1$
- case GREATER_EQUAL :
- return ">="; //$NON-NLS-1$
- case NOT_EQUAL :
- return "!="; //$NON-NLS-1$
- case LEFT_SHIFT :
- return "<<"; //$NON-NLS-1$
- case RIGHT_SHIFT :
- return ">>"; //$NON-NLS-1$
- case UNSIGNED_RIGHT_SHIFT :
- return ">>>"; //$NON-NLS-1$
- case OR_OR :
- return "||"; //$NON-NLS-1$
- case AND_AND :
- return "&&"; //$NON-NLS-1$
- case PLUS :
- return "+"; //$NON-NLS-1$
- case MINUS :
- return "-"; //$NON-NLS-1$
- case NOT :
- return "!"; //$NON-NLS-1$
- case REMAINDER :
- return "%"; //$NON-NLS-1$
- case XOR :
- return "^"; //$NON-NLS-1$
- case AND :
- return "&"; //$NON-NLS-1$
- case MULTIPLY :
- return "*"; //$NON-NLS-1$
- case OR :
- return "|"; //$NON-NLS-1$
- case TWIDDLE :
- return "~"; //$NON-NLS-1$
- case DIVIDE :
- return "/"; //$NON-NLS-1$
- case GREATER :
- return ">"; //$NON-NLS-1$
- case LESS :
- return "<"; //$NON-NLS-1$
- case ORL :
- return "OR"; //$NON-NLS-1$
- case ANDL :
- return "AND"; //$NON-NLS-1$
- case DOT :
- return "."; //$NON-NLS-1$
- case DIF :
- return "<>"; //$NON-NLS-1$
- case BANG_EQUAL_EQUAL :
- return "!=="; //$NON-NLS-1$
- case EQUAL_EQUAL_EQUAL :
- return "==="; //$NON-NLS-1$
- case AT :
- return "@"; //$NON-NLS-1$
- };
- return "unknown operator"; //$NON-NLS-1$
- }
-
- public String toStringExpression(){
- //subclass redefine toStringExpressionNoParenthesis()
- return "(" + toStringExpressionNoParenthesis() + ")"; //$NON-NLS-2$ //$NON-NLS-1$
- }
-
- public abstract String toStringExpressionNoParenthesis();
-}