Community
Participate
Working Groups
I20021119 new project test --- simple interface: --- package test; public interface Test { void doStuff(); } --- simple class: --- package test; public class TestClass { public TestClass() { super(); } } --- now the following situation: --- public TestClass() { super(); Test test = new Test(<cursor>) // important: closing ")" inserted // automatically by typing "(" } code assist creats anonymous implementation if invoked on cursor postion, but the result will be: public TestClass() { Test test = new Test() { /* (non-Javadoc) * @see test.Test#doStuff() */ public void doStuff() {} }<cursor>) } You see the additional ")" after the cursor? Its wrong! IMHO the code assist doesn't recognize that there was already a closing ")" and so an additional was inserted.
Code assist engine doesn't look at right of the cursor because it doesn't know if tokens at right are related to the completion. foo(new X(<cursor>) In the previous example there is no way to know if the right parenthesis is related to 'foo' or 'new X('.
Currently code assist engine doesn't look at right. Defering.
Reopen
Cannot be reproduced with 3.3. Fixed in a previous build.