X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/VarAssignation.java b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/VarAssignation.java index e54de47..17879e5 100644 --- a/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/VarAssignation.java +++ b/net.sourceforge.phpeclipse/src/net/sourceforge/phpdt/internal/compiler/ast/VarAssignation.java @@ -1,5 +1,10 @@ package net.sourceforge.phpdt.internal.compiler.ast; +import net.sourceforge.phpeclipse.PHPeclipsePlugin; + +import java.util.List; +import java.util.ArrayList; + /** * A Variable assignation. * $varname = initializer @@ -21,7 +26,7 @@ public class VarAssignation extends Expression { public static final int LSHIFT_EQUAL = 11; public static final int RSIGNEDSHIFT_EQUAL = 12; - public char[] variableName; + public Expression variableName; public Expression initializer; public int operator; @@ -33,7 +38,7 @@ public class VarAssignation extends Expression { * @param sourceStart the sourceStart * @param sourceEnd the sourceEnd */ - public VarAssignation(final char[] variableName, + public VarAssignation(final Expression variableName, final Expression initializer, final int operator, final int sourceStart, @@ -46,7 +51,7 @@ public class VarAssignation extends Expression { /** * Return the operator as String. - * @return the operator + * @return the operator */ public final String operatorToString() { switch (operator) { @@ -71,7 +76,7 @@ public class VarAssignation extends Expression { case REM_EQUAL: return "%="; //$NON-NLS-1$ case TILDE_EQUAL: - return " ="; //$NON-NLS-1$ + return "~="; //$NON-NLS-1$ case LSHIFT_EQUAL: return "<<="; //$NON-NLS-1$ case RSIGNEDSHIFT_EQUAL: @@ -85,12 +90,37 @@ public class VarAssignation extends Expression { * @return the expression */ public String toStringExpression() { - final StringBuffer buff = new StringBuffer("$"); - buff.append(variableName); + final String varName = variableName.toStringExpression(); + final String init = initializer.toStringExpression(); + final String operatorString = operatorToString(); + final StringBuffer buff = new StringBuffer(varName.length() + operatorString.length() + init.length() + 2); + buff.append(varName); buff.append(" ");//$NON-NLS-1$ - buff.append(operatorToString()); + buff.append(operatorString); buff.append(" ");//$NON-NLS-1$ - buff.append(initializer.toStringExpression()); + buff.append(init); 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) { + variableName.getUsedVariable(list); + initializer.getModifiedVariable(list); + } + + /** + * Get the variables used. + */ + public void getUsedVariable(final List list) { + initializer.getUsedVariable(list); + } }