package net.sourceforge.phpdt.internal.compiler.ast; import net.sourceforge.phpdt.internal.compiler.parser.Outlineable; import net.sourceforge.phpdt.internal.ui.PHPUiImages; import org.eclipse.jface.resource.ImageDescriptor; /** * A Field declaration. * This is a variable declaration for a php class * In fact it's an array of VariableDeclaration, since a field could contains * several vars : * var $toto,$tata; * @author Matthieu Casanova */ public class FieldDeclaration extends Statement implements Outlineable { /** The variables. */ public VariableDeclaration[] vars; private Object parent; /** * Create a new field. * @param vars the array of variables. * @param sourceStart the starting offset * @param sourceEnd the ending offset */ public FieldDeclaration(VariableDeclaration[] vars, int sourceStart, int sourceEnd, Object parent) { super(sourceStart, sourceEnd); this.vars = vars; this.parent = parent; } /** * Return the object into String. * @param tab how many tabs (not used here * @return a String */ public String toString(int tab) { final StringBuffer buff = new StringBuffer(tabString(tab)); buff.append("var ");//$NON-NLS-1$ for (int i = 0; i < vars.length; i++) { VariableDeclaration var = vars[i]; if (i != 0) { buff.append(',');//$NON-NLS-1$ } buff.append(var.toStringExpression()); } return buff.toString(); } /** * Get the image of a variable. * @return the image that represents a php variable */ public ImageDescriptor getImage() { return PHPUiImages.DESC_VAR; } public Object getParent() { return parent; } }