X-Git-Url: http://git.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/ArrayDeclarator.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/ArrayDeclarator.java index 3f3e474..8d2930a 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/ArrayDeclarator.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/ArrayDeclarator.java @@ -6,17 +6,17 @@ import java.util.ArrayList; /** * @author Matthieu Casanova */ -public class ArrayDeclarator extends AbstractSuffixExpression { +public class ArrayDeclarator extends AbstractVariable { - public Expression prefix; - public Expression vars; + public AbstractVariable prefix; + public Expression var; - public ArrayDeclarator(final Expression prefix, + public ArrayDeclarator(final AbstractVariable prefix, final Expression vars, final int sourceEnd) { super(prefix.sourceStart, sourceEnd); this.prefix = prefix; - this.vars = vars; + this.var = vars; } /** @@ -26,19 +26,27 @@ public class ArrayDeclarator extends AbstractSuffixExpression { public String toStringExpression() { final StringBuffer buff = new StringBuffer(prefix.toStringExpression()); buff.append('['); - if (vars != null) { - buff.append(vars.toStringExpression()); + if (var != null) { + buff.append(var.toStringExpression()); } buff.append(']'); return buff.toString(); } - /** + /** + * Return the name of the variable. + * @return the name of the functionName variable + */ + public String getName() { + return prefix.getName(); + } + + /** * Get the variables from outside (parameters, globals ...) * @return the variables from outside */ public List getOutsideVariable() { - return new ArrayList(); + return new ArrayList(1); } /** @@ -46,9 +54,10 @@ public class ArrayDeclarator extends AbstractSuffixExpression { * @return the variables from we change value */ public List getModifiedVariable() { - final ArrayList list = new ArrayList(); - list.addAll(prefix.getModifiedVariable()); - list.addAll(vars.getModifiedVariable()); + final List list = prefix.getModifiedVariable(); + if (var != null) { + list.addAll(var.getModifiedVariable()); + } return list; } @@ -57,9 +66,10 @@ public class ArrayDeclarator extends AbstractSuffixExpression { * @return the variables used */ public List getUsedVariable() { - final ArrayList list = new ArrayList(); - list.addAll(prefix.getUsedVariable()); - list.addAll(vars.getUsedVariable()); + final List list = prefix.getUsedVariable(); + if (var != null) { + list.addAll(var.getUsedVariable()); + } return list; } }