From: Eric M. Ludlam <eric@si...> - 2005-01-29 04:38:31
Ok, so why did I post an opinion request when I went and checked
stuff in anyway? I really didn't think I'd have the time to hack it
Anyway, I solved the system database/speed problem, and it seems to
work great! Here are some change-logs.
(semanticdb-dump-all-table-summary): New debugging command.
(semanticdb-file-table-object): When loading a table, make sure
we grab system databases too.
(semanticdb-find-throttle-custom-list): New variable
(semanticdb-find-default-throttle): New user option.
(semanticdb-find-throttle-active-p): New predicate
Only recurse if recursion is enabled.
Add throttling code.
Re-enable old system database loading.
Use new commnds to get system databases if available, then
resort to a normal load.
(semanticdb-find-test-translate-path): Update from Jan's input.
(semanticdb-find-default-throttle): Specifiy an Emacs Lisp value.
(semanticdb-load-system-caches): Don't load backup files.
(semanticdb-load-system-database): Force tag parsing at load
time since this is no longer guaranteed.
The big difference now is that if you create a C system database,
those symbols are used for smart completion and such. Performance is
good for simple examples, and best of all, if the user has no system
databases, it will be the same as before.
New options for getting tags from unload files permits full access to
all tags too if no systemdb's are available. This is the part that
could be agonizingly slow. By leaving this option off, you can
request specific headers you want to have completion done for, and
leave the others alone. Now that is pretty nifty.
Eric Ludlam: zappo@..., eric@...
Home: http://www.ludlam.net Siege: http://www.siege-engine.com
Emacs: http://cedet.sourceforge.net GNU: http://www.gnu.org