*******************************************************************************/
package net.sourceforge.phpeclipse.internal.compiler.ast;
-import net.sourceforge.phpdt.internal.compiler.IAbstractSyntaxTreeVisitor;
+import net.sourceforge.phpdt.internal.compiler.ASTVisitor;
import net.sourceforge.phpdt.internal.compiler.flow.FlowContext;
import net.sourceforge.phpdt.internal.compiler.flow.FlowInfo;
import net.sourceforge.phpdt.internal.compiler.lookup.BindingIds;
/**
* MessageSend code generation
*
- * @param currentScope org.eclipse.jdt.internal.compiler.lookup.BlockScope
- * @param codeStream org.eclipse.jdt.internal.compiler.codegen.CodeStream
+ * @param currentScope net.sourceforge.phpdt.internal.compiler.lookup.BlockScope
+ * @param codeStream net.sourceforge.phpdt.internal.compiler.codegen.CodeStream
* @param valueRequired boolean
*/
//public void generateCode(BlockScope currentScope, CodeStream codeStream, boolean valueRequired) {
// this.codegenBinding = currentScope.enclosingSourceType().getUpdatedMethodBinding(binding, (ReferenceBinding) this.qualifyingType);
// }
}
-
+public StringBuffer printExpression(int indent, StringBuffer output){
+
+ if (!receiver.isImplicitThis()) receiver.printExpression(0, output).append('.');
+ output.append(selector).append('(') ; //$NON-NLS-1$
+ if (arguments != null) {
+ for (int i = 0; i < arguments.length ; i ++) {
+ if (i > 0) output.append(", "); //$NON-NLS-1$
+ arguments[i].printExpression(0, output);
+ }
+ }
+ return output.append(')');
+}
public TypeBinding resolveType(BlockScope scope) {
// Answer the signature return type
// Base type promotion
return s;
}
-public void traverse(IAbstractSyntaxTreeVisitor visitor, BlockScope blockScope) {
+public void traverse(ASTVisitor visitor, BlockScope blockScope) {
if (visitor.visit(this, blockScope)) {
receiver.traverse(visitor, blockScope);
if (arguments != null) {