Re: Iterative visiting of all source files

Eric Ludlam <[email protected]> Wed, 24 Dec 2014 11:14:33 -0500
Newsgroups gmane.emacs.semantic
Message-ID <[email protected]>
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

------------------------------------------------------------------------------
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