Ctrl-Space in the body of a team class that inherits from another team, completion proposes
to create a role declaration overriding any inherited role from the super team (
1.3.1(c).).
So selecting this proposal:

will create this declaration:
@Overrideprotected classSubscriber { }
playedBy,
completion will also generate an "import base ..." declaration
(
2.1.2(d)), if needed.
3.) and callin (
4.) method bindings.
3.5).
After pressing Ctrl-space, selection of the desired binding happens in three steps:
| |
| a) Select a base method |
|
| b) Change the role method name if desired. |
|
| c) Select the binding kind. |
|
Two additional kinds of callouts can be generated, by typing "get" or "set" before invoking completion:
after typing get |
Create a callout to field getter. |
after typing set |
Create a callout to field setter. |
When binding to a base method/field, whose signature contains other base types for which a bound role exists in the current team,
completion lets you select whether the role side of the binding should use base or role types.
If role types are selected, they will be conform to the corresponding base type by implicitly using lifting (
2.3) or lowering (
2.2).
If a callin or callout binding has been typed up-to and including the "<-" or "->" token, completion can be used to expand the right hand side specifying the base method or field. For callin bindings you may optionally first type the callin modifier (before, replace or after). Otherwise you will be prompted for the desired callin modifier.
In this case the proposed modifier is inferred to match the bound base method:
| regular method | Default is before (also after is legal).
|
callin method | Default is replace
|
Normally, after "->" (as well as for "<-") completion will try to expand a base method, if for a callout one of the modifiers get or set has been typed, a field is searched instead.
callin modifier, to match the binding's callin modifier.
base. (
4.3) and tsuper. (
1.3.1(f)) completion offers only those methods that are actually legal in this context,
which in both cases implies the same name and signature as the surrounding role (callin) method.
3.1(j),
3.5(h))
Content assist in the
form of
templates exists for a few specific OT/J language constructs like within (Expression).