|
If you maintain or use a tool that is not Emacs specific but is related to code development, you might be able to integrate the features into CEDET as well. Example tools include GNU Global tagging system, or CScope. There are several ways a tool might be used. Here are some examples. ParserA tool that can provide tagging information by parsing a file could be integrated in place of using CEDET's built in parsing infrastructure. See Add a Language page for a little more on this. Tag DatabaseSome tools parse many files at once, and create indices for fast symbol lookup. GNU Global is one such tool. Interpreted languages often implement a form of introspection, allowing the language interpreter to also by a symbol reference engine. Tools such as these can be used as a Semantic database back end. The database engine in Semantic uses the EIEIO object system to created a structured interface for managing tags. Creating a new semanticdb database object allows your tool to provide tags searching methods that will work transparently through the rest of the CEDET infrastructure. There are several examples of this, including semanticdb-ebrowse and semanticdb-global. Symbol ReferencesSemantic does not index files for symbol renference checking. It depends on external tools such as ID Utils or, at a more primitive level, grep for this. A good example of adding support is in semantic-symref-global.el. It usually involves an invocation method, and a method to parse a line of output. The other support file for GNU Global is cedet-global.el, which has basic invokation methods for semantic-symref, and the locate function (below.) It also handles version checking. File LocationSome EDE project types don't index the entire source tree, but depend on some basic guesses about how to find files. Adding support of a file indexing tool to locate files can make EDE's file lookup more robust, and faster. All the EDE external tool support is in ede-locate.el, though new types don't need to be done there.
|
  |
|
Copyright(C) 1997,98,99,2000,01,02,03,04,05,06,07,08,09,10,11 Eric M. Ludlam Verbatim copying and distribution is permitted in any medium, provided this notice is preserved. |