package net.sourceforge.phpdt.internal.compiler.ast;
-import net.sourceforge.phpdt.internal.compiler.ast.Expression;
-import net.sourceforge.phpdt.internal.compiler.ast.AbstractVariableDeclaration;
import net.sourceforge.phpdt.internal.compiler.parser.Outlineable;
import net.sourceforge.phpdt.internal.ui.PHPUiImages;
import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.text.Position;
/**
* A variable declaration.
private Object parent;
private boolean reference;
-
+ private Position position;
/**
* Create a variable.
* @param initialization the initialization
super(name, sourceStart, initialization.sourceEnd);
this.initialization = initialization;
this.parent = parent;
+ position = new Position(sourceStart, sourceEnd);
+ }
+
+ /**
+ * Create a variable.
+ * @param name the name of the variable
+ * @param sourceStart the start point
+ */
+ public VariableDeclaration(Object parent,
+ char[] name,
+ int sourceStart,
+ int sourceEnd) {
+ super(name, sourceStart, sourceEnd);
+ this.parent = parent;
}
public void setReference(boolean reference) {
super(name, sourceStart, initialization.sourceEnd);
this.initialization = initialization;
}
+
+ /**
+ * Create a variable.
+ * @param name the name of the variable
+ * @param sourceStart the start point
+ */
+ public VariableDeclaration(char[] name,
+ int sourceStart) {
+ super(name, sourceStart, sourceStart + name.length);
+ }
+
/**
* Return the variable into String.
* @return a String
public String toStringExpression() {
final StringBuffer buff;
if (reference) {
- buff = new StringBuffer('&');
+ buff = new StringBuffer("&$"); //$NON-NLS-1$
} else {
- buff = new StringBuffer();
+ buff = new StringBuffer("$");//$NON-NLS-1$
}
buff.append(name);
if (initialization != null) {
return parent;
}
- /**
- * Get the image of a variable.
- * @return the image that represents a php variable
- */
- public ImageDescriptor getImage() {
- return PHPUiImages.DESC_VAR;
- }
+ public String toString() {
+ return toStringExpression();
+ }
+
+ /**
+ * Get the image of a variable.
+ * @return the image that represents a php variable
+ */
+ public ImageDescriptor getImage() {
+ return PHPUiImages.DESC_VAR;
+ }
+
+ public Position getPosition() {
+ return position;
+ }
}