Function: semantic--analyze-refs-find-child-in-find-results

semantic--analyze-refs-find-child-in-find-results is a byte-compiled function defined in refs.el.gz.

Signature

(semantic--analyze-refs-find-child-in-find-results FIND-RESULTS NAME CLASS)

Documentation

Find in FIND-RESULT a tag NAME which is a child of a tag in FIND-RESULTS.

CLASS is the class of the tag that ought to be returned.

Source Code

;; Defined in /usr/src/emacs/lisp/cedet/semantic/analyze/refs.el.gz
(defun semantic--analyze-refs-find-child-in-find-results (find-results name class)
  "Find in FIND-RESULT a tag NAME which is a child of a tag in FIND-RESULTS.
CLASS is the class of the tag that ought to be returned."
  (let ((ans nil)
	(subans nil))
    ;; Loop over each segment of the find results.
    (dolist (FDB find-results)
      (setq subans nil)
      ;; Loop over each tag in the find results.
      (dolist (T (cdr FDB))
	;; For each tag, get the children.
	(let* ((chil (semantic-tag-type-members T))
	       (match (semantic-find-tags-by-name name chil)))
	  ;; Go over the matches, looking for matching tag class.
	  (dolist (M match)
	    (when (semantic-tag-of-class-p M class)
	      (push M subans)))))
      ;; Store current matches into a new find results.
      (when subans
	(push (cons (car FDB) subans) ans))
      )
    ans))