Hi Justin,
That seems like a fine idea. It should be easy to add a keybinding to
semantic-symref-list.el to open every node, and to also make that some
sort of default. If someone would like to tackle that project, that
would be spiffy.
As a bit of background, the symref list system has two parts in CEDET.
The core bit is a system for querying for symbol references from a range
of different kinds of tools, with find/grep being a baseline. The
purpose is to provide a simple caching system for doing searches in more
complex applications. The list mode you refer to is a baseline example
of such an application. I'm not aware of any other symref apps built on
top if this system.
If you just want a flat list of hits, you can use rgrep, gnu/global, or
idutils with their Emacs interface directly.
The purpose of the symref system is, as I mention above, a base library
for some other tool. My long term goal is to use it for a refactoring
system, with a classic "change the name of my function" type feature. I
won't get to that for a while though.
Eric
On 03/05/2010 04:17 PM, Justin Delegard wrote:
> Hello,
>
> I recently discovered the usefulness of CEDET, but I'm wondering if
> there's a way to change the results of a semantic-symref call. Instead
> of a collapsed list of functions, is it possible to have all of the
> lists be uncollapsed right away? Or even better merging all the
> function lists into one, rather than each function having its own list?
>
> eg instead of
>
> /path/to/tcp.c
>
> [+] static int tcp_unacked_stream (const class uint32_t _srcp,const class uint32_t _dstp,unsigned short sport,unsigned short dport,int client,int max,int af,class scatter_t ptr)
>
> [+] static class uint32_t tcp_known (const void _srcp,const void _dstp,unsigned short sport,unsigned short dport,int type)
>
> [+] int ip_compare (class ip_addr_t src,class ip_addr_t dst)
>
> [+] void tcp_bpf_recv (struct pkt_context pktc,int proto)
>
> /path/to/tcp-inline.c
>
> [+] void tcp_inline_recv (struct pkt_context pktc,int proto)
>
> /path/to/tcp.h
>
> [+] extern int ip_compare (class ip_addr_t,class ip_addr_t)
>
> /path/to/tcpout.c
>
> [+] void tcp_send_resets (struct pkt_context pktc,int params,const class uint32_t _srcp,int sport,const class uint32_t _dstp,int dport,int af)
>
>
> have it be
>
> /path/to/tcp.c
>
> [-] static int tcp_unacked_stream (const class uint32_t _srcp,const class uint32_t _dstp,unsigned short sport,unsigned short dport,int client,int max,int af,class scatter_t ptr)
>
> if (ip_compare(src, dst)< 0)
>
> [-] static class uint32_t tcp_known (const void _srcp,const void _dstp,unsigned short sport,unsigned short dport,int type)
>
> if (ip_compare(isrc, idst)< 0)
>
> [-] int ip_compare (class ip_addr_t src,class ip_addr_t dst)
>
> ip_compare(ip_addr_t src, ip_addr_t dst)
>
> [-] void tcp_bpf_recv (struct pkt_context pktc,int proto)
>
> ip_comp = ip_compare(src,dst);
>
> /path/to/tcp-inline.c
>
> [-] void tcp_inline_recv (struct pkt_context pktc,int proto)
>
> ip_comp = ip_compare(src,dst);
>
> /path/to/tcp.h
>
> [-] extern int ip_compare (class ip_addr_t,class ip_addr_t)
>
> extern int ip_compare(ip_addr_t, ip_addr_t);
>
> /path/to/tcpout.c
>
> [-] void tcp_send_resets (struct pkt_context pktc,int params,const class uint32_t _srcp,int sport,const class uint32_t _dstp,int dport,int af)
>
> if ((ta = (ip_compare(src,dst)< 0) ?
>
>
>
> Thanks!!
> Justin
>
> ------------------------------------------------------------------------------
> Download Intel® Parallel Studio Eval
> Try the new software tools for yourself. Speed compiling, find bugs
> proactively, and fine-tune applications for parallel performance.
> See why Intel Parallel Studio got high marks during beta.
> http://p.sf.net/sfu/intel-sw-dev
> _______________________________________________
> cedet-semantic mailing list
> cedet-semantic@...
> https://lists.sourceforge.net/lists/listinfo/cedet-semantic
>
|