Improve content assist - phase 2
Improve content assist processor to provide better/more relevant suggestions
Use cases for proposing:
-
fields/functions of structured types after a variable/constant/function call etc. + "." -
union, record, set -
component -
class -
function without parameters -
function with parameters -
function parameters
-
-
component operations, e.g. MyComp.create/done/stop etc. -
port operations, e.g. MyPort.start/stop/send/receive etc. -
timer operations, e.g. MyTimer.start/stop/read/running/timeout -
all/any timer/component/port operations -
testcases after 'execute(' -
verdicts after 'setverdict(' -
in doc comments, 'deprecated' after '@status' -
encoding related proposals -
encoding types -
encoding attributes -
attribute keyword -
attribute modifier -
extension attribute keywords -
extension attribute prototype settings -
extension attribute printing settings -
extension attribute encode/decode type -
extension attribute encode/decode option
-
-
after class 'extends' propose potential base classes considering the following: - don't propose the class itself
- don't propose classes that are already listed in the 'extends' list
- if a non-trait class is already listed, only propose trait classes
- don't propose final classes that cannot be extended
-
modifier keywords starts with "@" -
class definition: type class @abstract/@final/@trait -
class function definition: function @final/@abstract/@deterministic -
module function definition: function @control/@deterministic -
function parameter: function (@modifier)? fname(..., @lazy/@fuzzy
-
Edited by Adam Knapp