changed how special variables are detected
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpdt / internal / compiler / ast / BinaryExpression.java
1 package net.sourceforge.phpdt.internal.compiler.ast;
2
3 import java.util.List;
4 import java.util.ArrayList;
5
6 /**
7  * @author Matthieu Casanova
8  */
9 public class BinaryExpression extends OperatorExpression {
10
11   /** The two expressions. */
12   public Expression left,right;
13
14   public BinaryExpression(final Expression left,
15                           final Expression right,
16                           final int operator) {
17     super(operator, left.sourceStart, right.sourceEnd);
18     this.left = left;
19     this.right = right;
20   }
21
22   public String toStringExpression() {
23     final StringBuffer buff = new StringBuffer(left.toStringExpression());
24     buff.append(operatorToString());
25     buff.append(right.toStringExpression());
26     return buff.toString();
27   }
28
29   /**
30    * Get the variables from outside (parameters, globals ...)
31    * @return the variables from outside
32    */
33   public List getOutsideVariable() {
34     return new ArrayList();
35   }
36
37   /**
38    * get the modified variables.
39    * @return the variables from we change value
40    */
41   public List getModifiedVariable() {
42     final ArrayList list = new ArrayList();
43     list.addAll(left.getModifiedVariable());
44     list.addAll(right.getModifiedVariable());
45     return list;
46   }
47
48   /**
49    * Get the variables used.
50    * @return the variables used
51    */
52   public List getUsedVariable() {
53     final ArrayList list = new ArrayList();
54     list.addAll(left.getUsedVariable());
55     list.addAll(right.getUsedVariable());
56     return list;
57   }
58
59 }