summaryrefslogtreecommitdiff
path: root/lisp/cedet/semantic/db-ebrowse.el
diff options
context:
space:
mode:
authorChong Yidong <cyd@stupidchicken.com>2009-08-30 21:16:39 +0000
committerChong Yidong <cyd@stupidchicken.com>2009-08-30 21:16:39 +0000
commitaa8724aeadb56751cb464fd5ebbf5f2e631fd3fa (patch)
treea3f4e2cd8ee9249f924d413e7c38e21a4a0bc204 /lisp/cedet/semantic/db-ebrowse.el
parentec0528188392b677b63aec579e5ef456e025b9b5 (diff)
downloademacs-aa8724aeadb56751cb464fd5ebbf5f2e631fd3fa.tar.gz
cedet/cedet.el (cedet-packages): Bump srecode version.
cedet/data-debug.el: Require `ring' for use of ring-length. cedet/semantic.el (semantic-repeat-parse-whole-stream): Check semantic-working-type before updating progress reporter. cedet/semantic/adebug.el: Fix file header. cedet/semantic/analyze.el: eval-when-compile semantic/find, for semantic-find-tags-by-name. Declare semanticdb-strip-find-results and semanticdb-find-tags-by-name. cedet/semantic/chart.el: Require semantic/find, semantic/db-mode, semantic/db-typecache, and semantic/scope. cedet/semantic/complete.el: Declare semantic-displayor-focus-abstract-child-p function (needed as the semantic-displayor-focus-abstract class is defined only after used). Move semantic-complete-inline-custom-type and semantic-complete-inline-analyzer-displayor-class variable definitions up, before they are used, to avoid compiler warning. Require semantic/decorate, semantic/tag-file, eieio-opt, and semantic/analyze/complete. cedet/semantic/ctxt.el: Require semantic/find. Don't eval-when-compile semantic/db (semantic-get-local-variables): Use Emacs' built-in progress reporter instead of working-status-forms. cedet/semantic/db-debug.el: Require data-debug, semantic/db-mode, and semantic/format. cedet/semantic/db-ebrowse.el: Require semantic/db-mode, semantic/find, semantic/sort, data-debug (semanticdb-create-database): Require semantic/dep for semantic-add-system-include. (semanticdb-table-ebrowse, semanticdb-project-database-ebrowse): Move class definitions near top of file, before they are used, to avoid compiler warnings. (semanticdb-ebrowse-add-tree-to-table): Use split-string.
Diffstat (limited to 'lisp/cedet/semantic/db-ebrowse.el')
-rw-r--r--lisp/cedet/semantic/db-ebrowse.el82
1 files changed, 45 insertions, 37 deletions
diff --git a/lisp/cedet/semantic/db-ebrowse.el b/lisp/cedet/semantic/db-ebrowse.el
index b38e6b0a1ca..96f8285e508 100644
--- a/lisp/cedet/semantic/db-ebrowse.el
+++ b/lisp/cedet/semantic/db-ebrowse.el
@@ -1,4 +1,4 @@
-;;; db-ebrowse.el --- Semanticdb backend using ebrowse.
+;;; semantic/db-ebrowse.el --- Semanticdb backend using ebrowse.
;;; Copyright (C) 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc.
@@ -56,6 +56,12 @@
(require 'eieio-opt)
)
(require 'semantic/db-file)
+(require 'semantic/db-mode)
+(require 'semantic/find)
+(require 'semantic/sort)
+(require 'data-debug)
+
+(declare-function semantic-add-system-include "semantic/dep")
(eval-and-compile
;; Hopefully, this will allow semanticdb-ebrowse to compile under
@@ -77,6 +83,41 @@ be searched."
:group 'semanticdb
:type 'string)
+;;; SEMANTIC Database related Code
+;;; Classes:
+(defclass semanticdb-table-ebrowse (semanticdb-table)
+ ((major-mode :initform c++-mode)
+ (ebrowse-tree :initform nil
+ :initarg :ebrowse-tree
+ :documentation
+ "The raw ebrowse tree for this file."
+ )
+ (global-extract :initform nil
+ :initarg :global-extract
+ :documentation
+ "Table of ebrowse tags specific to this file.
+This table is compisited from the ebrowse *Globals* section.")
+ )
+ "A table for returning search results from ebrowse.")
+
+(defclass semanticdb-project-database-ebrowse
+ (semanticdb-project-database)
+ ((new-table-class :initform semanticdb-table-ebrowse
+ :type class
+ :documentation
+ "New tables created for this database are of this class.")
+ (system-include-p :initform nil
+ :initarg :system-include
+ :documentation
+ "Flag indicating this database represents a system include directory.")
+ (ebrowse-struct :initform nil
+ :initarg :ebrowse-struct
+ )
+ )
+ "Semantic Database deriving tags using the EBROWSE tool.
+EBROWSE is a C/C++ parser for use with `ebrowse' Emacs program.")
+
+
(defun semanticdb-ebrowse-C-file-p (file)
"Is FILE a C or C++ file?"
(or (string-match semanticdb-ebrowse-file-match file)
@@ -187,40 +228,6 @@ warn instead."
(delete-file BFLB))
)))))
-;;; SEMANTIC Database related Code
-;;; Classes:
-(defclass semanticdb-table-ebrowse (semanticdb-table)
- ((major-mode :initform c++-mode)
- (ebrowse-tree :initform nil
- :initarg :ebrowse-tree
- :documentation
- "The raw ebrowse tree for this file."
- )
- (global-extract :initform nil
- :initarg :global-extract
- :documentation
- "Table of ebrowse tags specific to this file.
-This table is compisited from the ebrowse *Globals* section.")
- )
- "A table for returning search results from ebrowse.")
-
-(defclass semanticdb-project-database-ebrowse
- (semanticdb-project-database)
- ((new-table-class :initform semanticdb-table-ebrowse
- :type class
- :documentation
- "New tables created for this database are of this class.")
- (system-include-p :initform nil
- :initarg :system-include
- :documentation
- "Flag indicating this database represents a system include directory.")
- (ebrowse-struct :initform nil
- :initarg :ebrowse-struct
- )
- )
- "Semantic Database deriving tags using the EBROWSE tool.
-EBROWSE is a C/C++ parser for use with `ebrowse' Emacs program.")
-
;JAVE this just instantiates a default empty ebrowse struct?
; how would new instances wind up here?
; the ebrowse class isnt singleton, unlike the emacs lisp one
@@ -292,6 +299,7 @@ For instance: /home/<username>/.semanticdb/!usr!include!BROWSE"
If there is no database for DIRECTORY available, then
{not implemented yet} create one. Return nil if that is not possible."
;; MAKE SURE THAT THE FILE LOADED DOESN'T ALREADY EXIST.
+ (require 'semantic/dep)
(let ((dbs semanticdb-database-list)
(found nil))
(while (and (not found) dbs)
@@ -425,7 +433,7 @@ Optional argument BASECLASSES specifyies a baseclass to the tree being provided.
(semanticdb-create-table dbe fname)))
(class (ebrowse-ts-class tree))
(scope (ebrowse-cs-scope class))
- (ns (when scope (cedet-split-string scope ":" t)))
+ (ns (when scope (split-string scope ":" t)))
(nst nil)
(cls nil)
)
@@ -703,4 +711,4 @@ run the test again..")
(provide 'semantic/db-ebrowse)
-;;; semanticdb-ebrowse.el ends here
+;;; semantic/db-ebrowse.el ends here