/plugins/PHPParser/tags/v1_0_2/src/net/sourceforge/phpdt/internal/compiler/ast/ConditionalExpression.java
# · Java · 69 lines · 42 code · 8 blank · 19 comment · 0 complexity · 27dcdf8aba2e052d5ba7477daca1ee9f MD5 · raw file
- package net.sourceforge.phpdt.internal.compiler.ast;
- import java.util.List;
- /**
- * A ConditionalExpression is like that : booleanExpression ? trueValue : falseValue;.
- * @author Matthieu Casanova
- */
- public final class ConditionalExpression extends OperatorExpression {
- private final Expression condition;
- private final Expression valueIfTrue;
- private final Expression valueIfFalse;
- public ConditionalExpression(final Expression condition,
- final Expression valueIfTrue,
- final Expression valueIfFalse) {
- super(-1, condition.sourceStart, valueIfFalse.sourceEnd);
- this.condition = condition;
- this.valueIfTrue = valueIfTrue;
- this.valueIfFalse = valueIfFalse;
- }
- public String toStringExpression() {
- final String conditionString = condition.toStringExpression();
- final String valueIfTrueString = valueIfTrue.toStringExpression();
- final String valueIfFalse = this.valueIfFalse.toStringExpression();
- final StringBuffer buff = new StringBuffer(8 +
- conditionString.length() +
- valueIfTrueString.length() +
- valueIfFalse.length());
- buff.append("(");
- buff.append(conditionString);
- buff.append(") ? ");
- buff.append(valueIfTrueString);
- buff.append(" : ");
- buff.append(valueIfFalse);
- return buff.toString();
- }
- /**
- * Get the variables from outside (parameters, globals ...)
- *
- * @param list the list where we will put variables
- */
- public void getOutsideVariable(final List list) {}
- /**
- * get the modified variables.
- *
- * @param list the list where we will put variables
- */
- public void getModifiedVariable(final List list) {
- condition.getModifiedVariable(list);
- valueIfTrue.getModifiedVariable(list);
- valueIfFalse.getModifiedVariable(list);
- }
- /**
- * Get the variables used.
- *
- * @param list the list where we will put variables
- */
- public void getUsedVariable(final List list) {
- condition.getUsedVariable(list);
- valueIfTrue.getUsedVariable(list);
- valueIfFalse.getUsedVariable(list);
- }
- }