package net.sourceforge.phpdt.internal.compiler.ast;
-import net.sourceforge.phpdt.internal.compiler.ast.Block;
import net.sourceforge.phpdt.internal.compiler.parser.OutlineableWithChildren;
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;
import java.util.Hashtable;
import java.util.Enumeration;
public int bodyEnd = -1;
/** Tell if the method is a class constructor. */
public boolean isConstructor;
+
+ /** The parent object. */
private Object parent;
/** The outlineable children (those will be in the node array too. */
private ArrayList children = new ArrayList();
+ /** Tell if the method returns a reference. */
public boolean reference;
+ private Position position;
+
public MethodDeclaration(Object parent,
char[] name,
Hashtable arguments,
this.arguments = arguments;
this.parent = parent;
this.reference = reference;
+ position = new Position(sourceStart, sourceEnd);
}
/**
*/
public String toString(int tab) {
StringBuffer buff = new StringBuffer(tabString(tab));
+ buff.append(toStringHeader());
+ buff.append(toStringStatements(tab + 1));
+ return buff.toString();
+ }
+
+ public String toStringHeader() {
+ StringBuffer buff = new StringBuffer();
buff.append("function ");//$NON-NLS-1$
if (reference) {
buff.append('&');//$NON-NLS-1$
}
}
buff.append(")"); //$NON-NLS-1$
-
- buff.append(toStringStatements(tab + 1));
return buff.toString();
}
return PHPUiImages.DESC_FUN;
}
+ public void setParent(Object parent) {
+ this.parent = parent;
+ }
+
public Object getParent() {
return parent;
}
public int size() {
return children.size();
}
+
+ public String toString() {
+ return toStringHeader();
+ }
+
+ public Position getPosition() {
+ return position;
+ }
}