Re: Iterative visiting of all source files
rjd <[email protected]> Wed, 24 Dec 2014 18:51:56 +0000 (UTC)
| Newsgroups | gmane.emacs.semantic |
|---|---|
| Message-ID | <[email protected]> |
Eric Ludlam <eric <at> siege-engine.com> writes: > > On 12/24/2014 08:17 AM, rjd wrote: > > Thank you Eric, > > > > but now I ask: does this mean that Jan's version of parsing - iteratively - > > all files is just an alternatively correct way to parse all files? > > The -debug-idle stuff is just what happens already in idle time. If > you have a buffer up and wander off to get lunch or something, that is > what will happen, and it happens to go in and parse lots of nearby files > as you were asking. > > > Does not seem to be using (semantic-debug-idle-work-function) [as you can > > see in the original post]. > > > > 1. If I wanted intellisense like things, I guess I could recurse all the > > source files (cpp/h) and run this function on it. Similar to original post. > > I also do not use EDE for the same reasons as Jan. > > For languages like C / C++, you don't need to pre-parse anything. It > will go find what it needs when you ask. Parsing lots of files is > useful if you want to jump to definitions not in header files. > > > 2. If I do write a custom lisp to parse all files from root project then I > > guess I do not need to use GNUTags? Since the DB is fully formed... > > I think that is accurate. There are differences, such as that Global > will also track uses of symbols which Semantic does not, so the symref > stuff truly benefits from Global or other full taggers. It is also > very fast, and for particularly large projects, will be faster as a > first pass search for Semantic than Semantic's own tables. > > Eric > > Thanks Eric. How would you feel about a feature that did parse all files and store the db in memory? That way when I do "someSymbol." I get all the tags beloning to someSymbol in random access time. Is this not what intellisense does? I do not know if it stores it in memory, but at the minute I cannot see why this would be a bad idea. The only issue that comes to mind is if something changes - if I add a member to a class as long as semantic can append to the database in real-time I think it would be fine... Cheers. ------------------------------------------------------------------------------ Dive into the World of Parallel Programming! The Go Parallel Website, sponsored by Intel and developed in partnership with Slashdot Media, is your hub for all things parallel software development, from weekly thought leadership blogs to news, videos, case studies, tutorials and more. Take a look and join the conversation now. http://goparallel.sourceforge.net