Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Performs reference variants filtering based on expected type. If say an int is expected, only the variables/fields/methods of int type will be suggested.
  • If there is a one-element array of expected type (like the one created automatically to communicate with inner classes), and its name is say ref, then ref[0] is completed.
  • After new suggests all the classes descending from the expected type, inserts parentheses, if the selected class is abstract, will generate anonymous class body and suggest methods to implement.
  • After throw new suggests only the runtime exceptions merged with those explicitly declared in throws-clause.
  • In Javadoc throws tag suggests exceptions from method's throws-clause.
  • After catch suggests the exceptions that are thrown inside try.
  • After instanceof suggests inheritors of the checked expression type.
  • When Class<? extends X> is expected, suggests Class<Y> for all Y inheriting from X.
  • Completes generic parameters where missing: List<String> l = new ArrayList<|>();
  • Inserts explicit method type parameters where necessary: collect(Collections.emptyLis|) where collect expects List<String>
  • Suggests to cast to expected type after opening parenthesis: String s = (|
  • When calling a method or constructor with matching signature (e.g. a super method or a delegate), fills all the parameters immediately.
  • Suggests expression live templates whose result type can be determined from the their text and enabled 'Smart completion' template context
  • Analyzes dataflow in search for typecasts and *instanceof*s and suggests to cast expressions to expected type where possible.
  • Keywords: class, this (possibly qualified), true, false, null
  • Second:
    • Iterates over the visible methods/fields to check if their return value contains members of expected type, resulting in chained calls like getModule().getProject(). Prefix matching is done on both the first and the second member in chain (so you may get this result from both getMo| and getPro|).
    • Converts between arrays and lists when you have one in context and need another.
    • Adds array member access when you have an array of expected type: int a = | will result in int a = intArray[|].

...