@instanceVariable = var
f = Foo.new("foo")
f. -----------> CTRL+SPACE
I suppose that after parsing this is editor aware that "f" is an instance of
class Foo. Thus code completion could provide methods of class Foo, and of
classes in inheritance tree up to Object?! (something like IRB does)
The situation for IRB and the editor is quite different; IRB is working on a
live executing program, so it's easy for it to know the actual type of f - and
the available methods on it. In the editor we need to rely on static analysis,
which is possible in some cases (such as the quoted example) and also not
possible in others.
The synopsis of this bug is "Provide Some Basic Code Completion for Methods",
and that is there today. If you try to get completion on f. today, you get to
see ALL methods Ruby knows about (unless the left hand side expression is known,
such as "self" or "super"). If you try to get method completion without a dot
operator, you get to see inherited methods.
I will work on dataflow to make this better for dotted operators, but that falls
outside the "Basic" category of code completion so I'm closing this as fixed.
Reassigning this issue to newly created 'ruby' component.
Changing target milestone of all resolved Ruby issues from TBD to 6.0 Beta 1 build.