Community
Participate
Working Groups
For Juno Release, Code Recommenders will deliver a pure jdt-based call chain completion as described here: http://code-recommenders.blogspot.com/2010/12/how-do-i-get-instance-of.html A preliminary version has been delivered by Gary Fritz, Andreas Kaluza, and Marko Martin. We are refining the implementation for Juno now.
feedback based on the code review: * limit call chain depth in the graph that is built * preferences for: maximum depth, timeout for searching and number of proposed entries * static methods of super types should be included as entry points * generated templates need to include the variable types * completion should overwrite highlighted text when invoked on a selection
Status update: Done: > * limit call chain depth in the graph that is built > * static methods of super types should be included as entry points Todo: > * preferences for: maximum depth, timeout for searching and number of proposed > entries > * generated templates need to include the variable types > * completion should overwrite highlighted text when invoked on a selection
I added several exclusion filters, e.g., to java.lang.String and java.lang.Object to improve performance (better don't try to resolve any call chains for these types). I also added a toString-filter that simply cuts off graph traversal for toString() methods. Furthermore, I limited the number of proposals to ~20. I think it doesn't make sense to offer more than a this number of proposals. We should consider other filtering criteria that leverage usage data instead. Having said all this, I propose to skip the preference page for now. The proposal completion issues (namely parameter completion) are hard to address. This requires deep research on the Eclipse JDT APIs. I`ll close this bug and open another plan item for supporting parameter guessing.