Mercurial > emacs
diff lisp/cedet/semantic/scope.el @ 104446:df08b7ab0ba0
lisp/cedet/semantic/analyze.el: Add local vars for autoloading.
(semantic-analyze-current-context): Autoload.
lisp/cedet/semantic/ctxt.el: Add local vars for autoloading.
Don't eval-when-compile semantic/db
(semantic-ctxt-current-mode): Autoload.
(semantic-up-context): Require semantic/find.
lisp/cedet/semantic/find.el (semantic-current-tag-parent)
(semantic-find-tags-by-scope-protection): Autoload.
lisp/cedet/semantic/format.el (semantic-format-tag-prototype)
(semantic-format-tag-summarize): Autoload.
lisp/cedet/semantic/idle.el: Declare external functions.
(semantic-idle-work-for-one-buffer, semantic-idle-work-core-handler):
Require semantic/db-mode.
(semantic-idle-work-core-handler): Synch to upstream.
(semantic-idle-scheduler-refresh-tags): Require semantic/decorate/mode.
(semantic-idle-summary-find-current-symbol-tag): Require semantic/db-find.
(semantic-idle-summary-current-symbol-info-context): Require
semantic/analyze.
(semantic-idle-summary-maybe-highlight, semantic-idle-tag-highlight):
Require pulse.
(semantic-idle-completion-list-default): Require semantic/complete.
lisp/cedet/semantic/lex-spp.el: Require semantic.
(semantic-lex-spp-analyzer-push-tokens-for-symbol): Synch to upstream.
(semantic-lex-spp-first-token-arg-list): Use split-string.
lisp/cedet/semantic/lex.el: Declare semantic-elapsed-time.
Add local vars for autoloading.
(semantic-lex-test): Require semantic.
(semantic-lex): Autoload.
(semantic-flex): Use semantic-lex-keyword-p to avoid compiler warning.
lisp/cedet/semantic/sb.el: Require semantic/sort.
Declare semanticdb-minor-mode-p.
(semantic-sb-fetch-tag-table): Require semantic/db-mode.
lisp/cedet/semantic/scope.el: eval-when-compile semantic/find.
Declare external functions.
(semantic-analyze-scope-nested-tags-default): Require semantic/analyze.
(semantic-analyze-show): Require semantic/analyze.
(semantic-calculate-scope): Require semantic/db-typecache.
lisp/cedet/semantic/sort.el: Add local vars for autoloading.
Declare semanticdb-find-tags-external-children-of-type.
(semantic-flatten-tags-table, semantic-tag-external-member-parent):
Autoload.
(semantic-tag-external-member-children-default): Require semantic/db-find.
lisp/cedet/semantic/symref.el: Require semantic.
Declare data-debug-new-buffer and data-debug-insert-object-slots.
(semantic-symref-data-debug-last-result): Require eieio-datadebug.
lisp/cedet/semantic/tag-file.el: Declare external functions.
(semantic-go-to-tag): Call semanticdb-table-child-p only if
semantic/db is loaded.
(semantic-dependency-tag-file): Require semantic/dep.
lisp/cedet/semantic/tag-ls.el: Require semantic.
Add local variables for autoloading.
(semantic-tag-prototype-p): Autoload.
lisp/cedet/semantic/tag-write.el: Require semantic.
lisp/cedet/semantic/tag.el: Update external function declarations and
requirements, removing autoloaded functions.
Add local vars for autoloading.
(semantic-tag-components): Autoload.
lisp/cedet/semantic/texi.el: Declare lookup-words.
eval-when-compile semantic/find.
lisp/cedet/semantic/util.el: Update file header.
lisp/cedet/semantic/analyze/complete.el: Add local variables for autoloading.
(semantic-analyze-possible-completions, semantic-analyze-type-constants):
Autoload.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Thu, 03 Sep 2009 03:58:13 +0000 |
parents | 52067a6bf088 |
children | ee7637f5d6de |
line wrap: on
line diff
--- a/lisp/cedet/semantic/scope.el Wed Sep 02 05:04:38 2009 +0000 +++ b/lisp/cedet/semantic/scope.el Thu Sep 03 03:58:13 2009 +0000 @@ -49,6 +49,13 @@ (require 'semantic/analyze/fcn) (require 'semantic/ctxt) +(eval-when-compile (require 'semantic/find)) ; For semantic-find-* macros + +(declare-function data-debug-show "eieio-datadebug") +(declare-function semantic-analyze-find-tag "semantic/analyze") +(declare-function semantic-analyze-princ-sequence "semantic/analyze") +(declare-function semanticdb-typecache-merge-streams "semantic/db-typecache") +(declare-function semanticdb-typecache-add-dependant "semantic/db-typecache") ;;; Code: @@ -175,6 +182,7 @@ (defun semantic-analyze-scoped-types-default (position) "Return a list of types currently in scope at POSITION. Use `semantic-ctxt-scoped-types' to find types." + (require 'semantic/db-typecache) (save-excursion (goto-char position) (let ((code-scoped-types nil)) @@ -221,6 +229,7 @@ be found. This only finds ONE immediate parent by name. All other parents returned are from nesting data types." + (require 'semantic/analyze) (save-excursion (if position (goto-char position)) (let* ((stack (reverse (semantic-find-tag-by-overlay (point)))) @@ -576,6 +585,7 @@ "Map all parents of TYPE to FCN. Return tags of all the types. Argument SCOPE specify additional tags that are in scope whose tags can be searched when needed, OR it may be a scope object." + (require 'semantic/analyze) (let* (;; PARENTS specifies only the superclasses and not ;; interfaces. Inheriting from an interfaces implies ;; you have a copy of all methods locally. I think. @@ -647,8 +657,9 @@ The class returned from the scope calculation is variable `semantic-scope-cache'." (interactive) - (if (not (and (featurep 'semanticdb) semanticdb-current-database)) + (if (not (and (featurep 'semantic/db) semanticdb-current-database)) nil ;; Don't do anything... + (require 'semantic/db-typecache) (if (not point) (setq point (point))) (when (interactive-p) (semantic-fetch-tags) @@ -714,6 +725,7 @@ (semanticdb-typecache-add-dependant scopecache) ;; Handy debug output. (when (interactive-p) + (require 'eieio-datadebug) (data-debug-show scopecache) ) ;; Return ourselves @@ -783,6 +795,7 @@ ;; (defmethod semantic-analyze-show ((context semantic-scope-cache)) "Insert CONTEXT into the current buffer in a nice way." + (require 'semantic-analyze) (semantic-analyze-princ-sequence (oref context scopetypes) "-> ScopeTypes: " ) (semantic-analyze-princ-sequence (oref context parents) "-> Parents: " ) (semantic-analyze-princ-sequence (oref context scope) "-> Scope: " )