(semantic-find-tags-included (or tags (semanticdb-get-tags table)))
(semantic-find-tags-by-class class (or tags (semanticdb-get-tags table)))))
+(declare-function semantic-find-tags-external-children-of-type
+ "semantic/find" (type &optional table))
+
(cl-defmethod semanticdb-find-tags-external-children-of-type-method ((table semanticdb-abstract-table) parent &optional tags)
"In TABLE, find all occurrences of tags whose parent is the PARENT type.
Optional argument TAGS is a list of tags to search.
(require 'semantic/find)
(semantic-find-tags-external-children-of-type parent (or tags (semanticdb-get-tags table))))
+(declare-function semantic-find-tags-subclasses-of-type
+ "semantic/find" (type &optional table))
+
(cl-defmethod semanticdb-find-tags-subclasses-of-type-method ((table semanticdb-abstract-table) parent &optional tags)
"In TABLE, find all occurrences of tags whose parent is the PARENT type.
Optional argument TAGS is a list of tags to search.
A value of nil means that the current major mode is the only one.")
(make-variable-buffer-local 'semantic-equivalent-major-modes)
+(declare-function semanticdb-file-stream "semantic/db" (file))
+
;; These semanticdb calls will throw warnings in the byte compiler.
;; Doing the right thing to make them available at compile time
;; really messes up the compilation sequence.
(semantic-alias-obsolete 'semantic-file-token-stream
'semantic-file-tag-table "23.2")
+(declare-function semanticdb-abstract-table-child-p "semantic/db" (obj) t)
+(declare-function semanticdb-refresh-table "semantic/db")
+(declare-function semanticdb-get-tags "semantic/db" (arg &rest args) t)
+(declare-function semanticdb-find-results-p "semantic/db-find" (resultp))
+
(defun semantic-something-to-tag-table (something)
"Convert SOMETHING into a semantic tag table.
Something can be a tag with a valid BUFFER property, a tag table, a
(defvar semantic-read-symbol-history nil
"History for a symbol read.")
+(declare-function semantic-brute-find-tag-by-function
+ "semantic/find"
+ (function streamorbuffer
+ &optional search-parts search-includes))
+
(defun semantic-read-symbol (prompt &optional default stream filter)
"Read a symbol name from the user for the current buffer.
PROMPT is the prompt to use.
(setq stream
(if filter
(semantic--find-tags-by-function filter stream)
+ (require 'semantic/find)
(semantic-brute-find-tag-standard stream)))
(if (and default (string-match ":" prompt))
(setq prompt
;; Symbol completion
+(declare-function semanticdb-fast-strip-find-results
+ "semantic/db-find" (results))
+(declare-function semanticdb-deep-find-tags-for-completion
+ "semantic/db-find" (prefix &optional path find-file-match))
+
(defun semantic-find-tag-for-completion (prefix)
"Find all tags with name starting with PREFIX.
This uses `semanticdb' when available."