From: Eric M. L. <er...@si...> - 2005-06-28 14:48:49
|
Howdy ho: Original problem: Clicking the parent of "fie" (which should be "fee") doesn't work. This is because a simple high-level search of "fee" fails because "fee" is in the "moose" namespace. The C++ compiler knows that "fee" is in "moose" because "moose" is in scope. You would not want to do a deep search because of this revised example: ------ namespace moose { class fee { int fi; }; class fie : public fee { int fi; }; } namespace meese { class fee { int fi; }; class fey : fee { int fi; }; } ------ If you did a deep search, and clicked on the parent of "fey", which is "fee", a deep search would return both versions of "fee", and if typical action occurs, the first would be used from the "moose" namespace, instead of the version of fee in "meese". In the above example, you would find that M-x semantic-analyze-current-context can return some of the right stuff, but only if the point is in the body of the method (that you would have to add.) The magic function semantic-ctxt-scoped-types also isn't quite good enough because it assumes that all namespaces in the local file are in scope! I suppose an ideal solution might be to fix the analyze-context function (or something like it) to put the active scopes into some sort of specialized order, then search them for your symbol. Or maybe, a deep search would suffice. *Sigh* Eric >>> <kla...@sd...> seems to think that: >Hi guys, > >In the mentioned posting (see link below) you give the following c++ example: > >------ > namespace moose { > > class fee { > int fi; > }; > > class fie : public fee { > int fi; > }; > > } > ------ > >Unfortunately i can not remember the original problem :-( Could you please >Shortly explain with this example what is the problem, and what should be >returned by `semantic-ctxt-scoped-types' when called for this example and >Why we should not perform a deep seach via semamnticdb?? > >Thanks a lot, >Klaus > >Eric M. Ludlam wrote: >> I Klaus, >> >> I certainly know what it is like to be busy. Here is a link into the >> archives: >> >> http://sourceforge.net/mailarchive/forum.php?thread_id=7471248&forum_id=1620 >> >> I just want to make sure I get the right things on my todo list for >> CEDET. >> >> Eric >> >>>>> <kla...@sd...> seems to think that: >>> Hi all, >>> >>> sorry for my silence - but unfortunately i'm currently quite busy >>> and had not found any time for this topic..... Eric, could you please >>> send me again this email which includes the example you mentioned?! >>> >>> Thanks, >>> Klaus >>> >>> >>> -----Urspr=FCngliche Nachricht----- >>> Von: Eric M. Ludlam [mailto:er...@si...] >>> Gesendet: Di 21.06.2005 15:54 >>> An: Daniel Debertin >>> Cc: air...@no...; Berndl, Klaus; = >>> ecb...@li... >>> Betreff: Re[2]: [CEDET-devel] [ECB-list] Parent classes aren't >>> jump-able =20 Hi, >>> >>> I'm trying to reconcile all the email I've gotten since I posted >>> 1.0pre2, and I don't remember where this conversation ended. Were >>> changes in semantic-go-to-tag needed? Klaus, did you need assistance >>> getting ECB to work with the C++ namespace example I had given? >>> >>> Thanks >>> Eric >>> >>>>>> Daniel Debertin <air...@no...> seems to think that: >>>> [ Following up to my own post .. sorry for the spam ] >>>> >>>> Daniel Debertin <air...@no...> writes: >>>> >>>>> (defun type-list-find-type (type-list type-name) [ ... ] >>>> >>>> It occurs to me that semantic-deep-find-tags-by-name would work >>>> here. We've already narrowed the context to the set of types that >>>> are in-scope at point in the current buffer, so the fact that it >>>> flattens the tag-tree doesn't matter ... right? >>>> >>>> TIA, >>>> >>>> Dan >>>> -- >>>> Dan Debertin |=20 >>>> ai...@no... |=20 >>>> www.nodewarrior.org |=20 >>>> >>> >>> --=20 >>> Eric Ludlam: za...@gn..., = >>> er...@si... Home: http://www.ludlam.net >>> Siege: www.siege-engine.com Emacs: http://cedet.sourceforge.net >>> GNU: www.gnu.org > |