Good news people! I have finished Stage 1 of the code completion redesign. After fixing the crashes, hangs and unexpected exceptions ( :mrgreen: ), I managed to optimize most of the Codecompletion plugin. You'll notice a significant speed-up related to previous versions - specially when saving files.
I'll commit as soon as I finish recompiling latest SVN :eek: and test.
Benchmarks welcome
Post-Edit notes:
1) Warning! I may have possibly caused one or two unicode bugs since my C::B version is ANSI (i needed to debug some strings and unicode had a bug in there). But I can't wait anymore to commit, i'm sure any unicode-related bugs can be fixed in very little time.
2) Tested - ANSI version works like charm!
I also removed redundant categories from the symbols (i.e. classes, defines, others) if they contain no tokens. I'll commit now
3) Oops, I forgot to mention... the Load/Save progress dialog of the codecompletion cache has been wiped out. Anyway i really hope you don't miss it, because:
Done parsing project Code::Blocks ANSI (wx2.6) (485 total parsed files, 14999 tokens in 0.813 seconds).<- and that's unoptimized
4) Hit my first bug
Apparently, when loading the cache, the class browser isn't updated. This is bad!
I need some help with this guys. Probably an event not triggered or something. In any case, i'll still commit. I'm sure we can spare the cache for now. Sorry :?