I'd like to suggest
- prefer the current active then all open sources to going through the project sources by order. Editing zzz.c while waiting for the parser to catch up is annoying
- cache the info on disk, preferably compressed (already suggested, I know)
- parse sources even if they are not part of the current project as much as possible. A cache could help here...
What do you think?
-----------------------
/* Nothing past this point should fail if the code is working as intended */