Mercurial > emacs
diff lisp/cedet/semantic/idle.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 | 2bf481006ba4 |
children | 273e528a9f9b |
line wrap: on
line diff
--- a/lisp/cedet/semantic/idle.el Wed Sep 02 05:04:38 2009 +0000 +++ b/lisp/cedet/semantic/idle.el Thu Sep 03 03:58:13 2009 +0000 @@ -46,8 +46,17 @@ ;; For the semantic-find-tags-by-name macro. (eval-when-compile (require 'semantic/find)) +(declare-function eldoc-message "eldoc") +(declare-function semantic-analyze-interesting-tag "semantic/analyze") +(declare-function semantic-complete-analyze-inline-idle "semantic/complete") +(declare-function semanticdb-deep-find-tags-by-name "semantic/db-find") +(declare-function semanticdb-minor-mode-p "semantic/db-mode") +(declare-function semanticdb-save-all-db-idle "semantic/db") (declare-function semanticdb-typecache-refresh-for-buffer "semantic/db-typecache") -(declare-function eldoc-message "eldoc") +(declare-function semantic-decorate-flush-pending-decorations + "semantic/decorate/mode") +(declare-function pulse-momentary-highlight-region "pulse") +(declare-function pulse-momentary-highlight-overlay "pulse") ;;; Code: @@ -358,6 +367,7 @@ (semantic-safe "Idle Work Including Error: %S" ;; Get the include related path. (when (and (featurep 'semantic/db) + (require 'semantic/db-mode) (semanticdb-minor-mode-p)) (require 'semantic/db-find) (semanticdb-find-translate-path buffer nil) @@ -408,22 +418,23 @@ )) ) - ;; Save everything. - (semanticdb-save-all-db-idle) + (when (and (featurep 'semantic/db) + (require 'semantic/db-mode) + (semanticdb-minor-mode-p)) + ;; Save everything. + (semanticdb-save-all-db-idle) - ;; Parse up files near our active buffer - (when semantic-idle-work-parse-neighboring-files-flag - (semantic-safe "Idle Work Parse Neighboring Files: %S" - (when (and (featurep 'semantic/db) - (semanticdb-minor-mode-p)) + ;; Parse up files near our active buffer + (when semantic-idle-work-parse-neighboring-files-flag + (semantic-safe "Idle Work Parse Neighboring Files: %S" (set-buffer cb) (semantic-idle-scheduler-work-parse-neighboring-files)) t) + + ;; Save everything... again + (semanticdb-save-all-db-idle) ) - ;; Save everything... again - (semanticdb-save-all-db-idle) - ;; Done w/ processing nil)))) @@ -582,6 +593,7 @@ ;; After updating the tags, handle any pending decorations for this ;; buffer. + (require 'semantic/decorate/mode) (semantic-decorate-flush-pending-decorations (current-buffer)) )) @@ -716,7 +728,9 @@ "Search for a semantic tag with name SYM in database tables. Return the tag found or nil if not found. If semanticdb is not in use, use the current buffer only." - (car (if (and (featurep 'semantic/db) semanticdb-current-database) + (car (if (and (featurep 'semantic/db) + semanticdb-current-database + (require 'semantic/db-find)) (cdar (semanticdb-deep-find-tags-by-name sym)) (semantic-deep-find-tags-by-name sym (current-buffer))))) @@ -744,6 +758,7 @@ (semantic-analyze-current-context (point)) (error nil)))) (when analysis + (require 'semantic/analyze) (semantic-analyze-interesting-tag analysis)))) (defun semantic-idle-summary-current-symbol-info-default () @@ -844,6 +859,7 @@ "Perhaps add highlighting onto TAG. TAG was found as the thing under point. If it happens to be visible, then highlight it." + (require 'pulse) (let* ((region (when (and (semantic-tag-p tag) (semantic-tag-with-position-p tag)) (semantic-tag-overlay tag))) @@ -896,6 +912,7 @@ "Highlight the tag, and references of the symbol under point. Call `semantic-analyze-current-context' to find the reference tag. Call `semantic-symref-hits-in-region' to identify local references." + (require 'pulse) (when (semantic-idle-summary-useful-context-p) (let* ((ctxt (semantic-analyze-current-context)) (Hbounds (when ctxt (oref ctxt bounds))) @@ -945,6 +962,7 @@ nil)) ) ;; Use idle version. + (require 'semantic/complete) (semantic-complete-analyze-inline-idle) ) (error nil))