package net.sourceforge.phpdt.internal.compiler.ast;
+import java.util.List;
+
/**
- * This variable declaration do not extend AbstractVariableDeclaration because
- * it could take Expression as key
+ * a variable declaration in an array().
+ * it could take Expression as key.
* @author Matthieu Casanova
*/
public class ArrayVariableDeclaration extends Expression {
- public Expression key,value;
+ /** the array key. */
+ public Expression key;
+
+ /** the array value. */
+ public Expression value;
- public ArrayVariableDeclaration(Expression key,Expression value) {
+ /**
+ * Create a new array variable declaration.
+ * @param key the key
+ * @param value the value
+ */
+ public ArrayVariableDeclaration(final Expression key, final Expression value) {
super(key.sourceStart, value.sourceEnd);
this.key = key;
this.value = value;
}
/**
+ * Create a new array variable declaration.
+ * @param key the key
+ * @param sourceEnd the end position
+ */
+ public ArrayVariableDeclaration(final Expression key, final int sourceEnd) {
+ super(key.sourceStart, sourceEnd);
+ this.key = key;
+ }
+
+ /**
* Return the expression as String.
* @return the expression
*/
}
return buff.toString();
}
+
+
+ /**
+ * Get the variables from outside (parameters, globals ...)
+ */
+ public void getOutsideVariable(final List list) {
+ }
+
+ /**
+ * get the modified variables.
+ */
+ public void getModifiedVariable(final List list) {
+ key.getModifiedVariable(list);
+ if (value != null) {
+ value.getModifiedVariable(list);
+ }
+ }
+
+ /**
+ * Get the variables used.
+ */
+ public void getUsedVariable(final List list) {
+ key.getUsedVariable(list);
+ if (value != null) {
+ value.getUsedVariable(list);
+ }
+ }
}