logo       

Re: Manager class: msg#00048

lang.nemerle.devel

Subject: Re: Manager class

> What do you exactly mean with 'code duplication'? I know there's some
> stuff that have been moved to the Manager class, and I want to get rid
> of it (maybe having the compiler init directly in Manager). However,
> most of the things are not as in normal Manager, that's wh they remain
> in Engine. If you have any other suggestions, feel free to post it
> here, I'll try to do my best to improve the Completion Engine.
> However, what do you exactly need? Lexer or parser is not available
> through Completion Engine, but just type tree and method completion.
Seems that I was not crystal clear (happens a lot :)
I meant that you were able to make your own manager class working and it
seems that the initialization almost duplicates the code in the Manager
class. As Nazgul said he will refactor the code further to eliminate the
code duplication. However meantime I will copy your code for my parser
stuff because I simply cannot decipher exactly what is needed to make
that ManagerClass working... So no suggestions here, I have just lost in
the code :(

I just change completion engine to use ManagerClass's InitCompiler and
LoadExternalLibraries instead of performing operations copy pasted
from there.

I think the main objective is to make ManagerClass.Run method more
flexible (it should call a bunch of virtual methods for every step or
run a pipeline on small "compiler step" structures), so completion
engine could just specify what is desired (recreating the hierarchy
tree, parsing one file, or one method) and call Run from base class.

Also I wonder if Options.PersistentLibraries can be used by completion
engine - it avoids loading of libraries and creating hierarchy tree
for them in several compiler runs.


--
Kamil Skalski
http://nazgul.omega.pl



<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise