[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[ease-dev] Shell autocompletion
|
Hi,
I just wanted to give you all a quick update on what I've been up to
this week.
As I mentioned last week I am mostly working on the JavaScript line
analysis and I still have some issues there. It is getting better but I
am not fully there yet.
What this analysis does is basically get the information on what I want
to auto-complete and based on that display the suggestions.
Internally I split the line of code down to a call-chain that I follow.
So if for example you define the variable 'foo' to be of type
'java.lang.String' and you type 'foo.' it boils down to getting all
public members and methods of foo.
This part is easy and already working.
It is also already possible to do something like 'foo.substring().co'
where the code is split into 'foo', 'substring (of java.lang.String)'
and all members and functions of class 'java.lang.String' (because the
return type of substring is again String). This is where the call chain
really comes to play. I first need to get the class of 'foo', then look
for the method 'substring', get it's return type and look in the class
definition for said return type to match agains "co".The whole
reflection part is already working, I only need to build the call-chain
better, because there are just so many scenarios (nested parantheses, etc).
I also add a description for auto-completion where you can get further
information on the different members/methods. This can be particularly
usefull for overloaded methods, because I display a list of all
overloads for the method of this name.
I just pushed my changes to a new branch (shell_autocompletion) so feel
free to have a look to it.
Best regards,
Martin