[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[news.eclipse.tools.jdt] Problem solved

Problem solved.

It was because some problem in my code.

Thanks.


Kevin Chen wrote:

> Hi,
> 
> I was instrumenting the source code file with some method call.
> 
> But I had some problems modifying the parameters of a MethodInvocation
> node.
> 
> Given the following code snippet on some ast,
> 
> SimpleName methodName = ast.newSimpleName("someMethodCall");
> MethodInvocation methodEntry = ast.newMethodInvocation();
> methodEntry.setName(methodName);
> List<Expression> arguments = (List<Expression>) methodEntry.arguments();
> StringLiteral currentObject = ast.newStringLiteral();
> currentObject.setLiteralValue("this");
> arguments.add(currentObject);
>                                 
> List<Expression> arguments2 = (List<Expression>) methodEntry.arguments();
> StringLiteral currentClass = ast.newStringLiteral();
> currentObject.setLiteralValue("someclass");
> arguments2.add(currentClass);
> 
> 
> as I expect, it should generate the statement
> 
> someMethodCall(this, someclass)
> 
> But instead it would produce
> 
> someMethodCall(someclass, "")
> 
> I was so frustrated that It could only reflect the last change you made to
> the arguments list.
> 
> My intention is to let someMethodCall have 5 StringLiteral parameters
> which I never achieved.
> 
> I doubt is there something wrong with my code.
> 
> You help would be much appreciated.
> 
> 
> 
> Kevin