Function: semanticdb-ebrowse-strip-trees
semanticdb-ebrowse-strip-trees is a byte-compiled function defined in
db-ebrowse.el.gz.
Signature
(semanticdb-ebrowse-strip-trees ARG &rest ARGS)
Implementations
(semanticdb-ebrowse-strip-trees (DBE semanticdb-project-database-ebrowse) DATA) in `semantic/db-ebrowse.el'.
For the ebrowse database DBE, strip all tables from DATA.
Source Code
;; Defined in /usr/src/emacs/lisp/cedet/semantic/db-ebrowse.el.gz
(cl-defmethod semanticdb-ebrowse-strip-trees ((dbe semanticdb-project-database-ebrowse)
data)
"For the ebrowse database DBE, strip all tables from DATA."
;JAVE what it actually seems to do is split the original tree in "tables" associated with files
; im not sure it actually works:
; the filename slot sometimes gets to be nil,
; apparently for classes which definition can't be found, yet needs to be included in the tree
; like library baseclasses
; a file can define several classes
(let ((T (car (cdr data))));1st comes a header, then the tree
(while T
(let* ((tree (car T))
;;(class (ebrowse-ts-class tree)); root class of tree
;; Something funny going on with this file thing...
;; (filename (or (ebrowse-cs-source-file class)
;; (ebrowse-cs-file class)))
)
(cond
((ebrowse-globals-tree-p tree)
;; We have the globals tree.. save this special.
(semanticdb-ebrowse-add-globals-to-table dbe tree)
)
(t
;; ebrowse will collect all the info from multiple files
;; into one tree. Semantic wants all the bits to be tied
;; into different files. We need to do a full dissociation
;; into semantic parsable tables.
(semanticdb-ebrowse-add-tree-to-table dbe tree)
))
(setq T (cdr T))))
))