X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/ConditionalExpression.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/ConditionalExpression.java index b2e39fb..121a158 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/ConditionalExpression.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/ConditionalExpression.java @@ -1,5 +1,8 @@ package net.sourceforge.phpdt.internal.compiler.ast; +import java.util.List; +import java.util.ArrayList; + /** * A ConditionalExpression is like that : booleanExpression ? trueValue : falseValue; * @author Matthieu Casanova @@ -8,9 +11,9 @@ public class ConditionalExpression extends OperatorExpression { public Expression condition, valueIfTrue, valueIfFalse; - public ConditionalExpression(Expression condition, - Expression valueIfTrue, - 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; @@ -26,4 +29,36 @@ public class ConditionalExpression extends OperatorExpression { buff.append(valueIfFalse.toStringExpression()); return buff.toString(); } + + /** + * Get the variables from outside (parameters, globals ...) + * @return the variables from outside + */ + public List getOutsideVariable() { + return new ArrayList(); + } + + /** + * get the modified variables. + * @return the variables from we change value + */ + public List getModifiedVariable() { + final ArrayList list = new ArrayList(); + list.addAll(condition.getModifiedVariable()); + list.addAll(valueIfTrue.getModifiedVariable()); + list.addAll(valueIfFalse.getModifiedVariable()); + return list; + } + + /** + * Get the variables used. + * @return the variables used + */ + public List getUsedVariable() { + final ArrayList list = new ArrayList(); + list.addAll(condition.getUsedVariable()); + list.addAll(valueIfTrue.getUsedVariable()); + list.addAll(valueIfFalse.getUsedVariable()); + return list; + } }