home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.lang.c++
- Path: sparky!uunet!spool.mu.edu!umn.edu!csus.edu!netcom.com!erc
- From: erc@netcom.com (Eric Smith)
- Subject: Re: WANTED: A SOURCE CODE based C++ class browser for MS Windows.
- Message-ID: <1992Nov10.133726.15124@netcom.com>
- Keywords: c++ browser
- Organization: Netcom - Online Communication Services (408 241-9760 guest)
- References: <1992Nov9.203226.26681@is.morgan.com>
- Date: Tue, 10 Nov 1992 13:37:26 GMT
- Lines: 55
-
- In article <1992Nov9.203226.26681@is.morgan.com> jlieb@is.morgan.com (Jerry Liebelson) writes:
- >Does anyone know a good C++ class browser for MS Windows that will
- >browse source code in multiple header and source directories? I don't
- >want to buy another compiler, just need the browser. Such a class
- >browser should do the following:
- >
- > 1. Let you specify a list of include and source directories and
- >optional preprocessor #defines and see something like a FileManager-like
- >class hierarchy tree.
- > 2. Then by clicking on any class, selectively list all/some/none inherited
- >methods and data by indicating how far up the inheritance tree to show.
- > 3. In addition, selectively show any combination of
- >public/private/protected and virtual/const/static functions and data.
- > 4. By clicking any particular method or data, see its complete declaration
- >and definition.
- >
- >When I purchased Borland's C++ with App Frameworks, I was rather shocked
- >that the builtin class browser only worked on executables. I like what
- >Borland has done but honestly, any good OO development environment, C++
- >or otherwise, should have a class hierarchy browser for use with source code.
- >After all, code comes before executable!
- >
- >
- >--
- >Jerry Liebelson
- >jlieb@is.morgan.com
- >Compuserve: 73477,2740
- >
-
-
- I would like to know too, because I am going to be implementing one soon
- and would like to compare it with others. I would also like to know what
- features people most want, etc.
-
- The feature most important to me is speed of accessing symbols, etc. For
- example, if I select foo, I want to be able to instantly pop up the
- definition of foo, and to go there and select bar and pop up its definition.
- Any delays in accessing definitions would in my opinion make it a much
- lower quality browser, so that is my top priority, even if it means mine
- will require more memory than some others.
-
- A C++ class browser is a lot more complicated to implement than it sounds,
- but I already have most of the work done, effectively, because I have
- been working on other programs which share a lot of the same functionality.
- The main complexity is in parsing/indexing the C++ code such that it can be
- located instantly when needed. It needs to keep track of the type and scope
- of every name it sees, and be able to retrieve that information fast. Macros
- complicate it too by making it keep track of the names seen before and after
- preprocessing, and still be able to locate the original source code instantly
- whenever a name is selected.
-
- But the complicated parts mentioned above are the parts I have effectively
- already done, so the rest is just a matter of getting enough time to
- implement it, because I'm working on a couple of other programs first, which
- also share a lot of the same functionality.
-