diff options
| author | Chong Yidong | 2009-09-03 03:58:13 +0000 |
|---|---|---|
| committer | Chong Yidong | 2009-09-03 03:58:13 +0000 |
| commit | 55b522b2eb02de72ce207a04aef15ed7f193b568 (patch) | |
| tree | 6c42de0ee2603dc9dfa410704579290610bc1eeb | |
| parent | d8dbeec0af29501ed4cf409a9860e63d7ac0cf0e (diff) | |
| download | emacs-55b522b2eb02de72ce207a04aef15ed7f193b568.tar.gz emacs-55b522b2eb02de72ce207a04aef15ed7f193b568.zip | |
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.
| -rw-r--r-- | lisp/cedet/semantic/analyze.el | 6 | ||||
| -rw-r--r-- | lisp/cedet/semantic/analyze/complete.el | 1 | ||||
| -rw-r--r-- | lisp/cedet/semantic/ctxt.el | 6 | ||||
| -rw-r--r-- | lisp/cedet/semantic/find.el | 2 | ||||
| -rw-r--r-- | lisp/cedet/semantic/format.el | 2 | ||||
| -rw-r--r-- | lisp/cedet/semantic/idle.el | 42 | ||||
| -rw-r--r-- | lisp/cedet/semantic/lex-spp.el | 7 | ||||
| -rw-r--r-- | lisp/cedet/semantic/lex.el | 14 | ||||
| -rw-r--r-- | lisp/cedet/semantic/sb.el | 10 | ||||
| -rw-r--r-- | lisp/cedet/semantic/scope.el | 15 | ||||
| -rw-r--r-- | lisp/cedet/semantic/sort.el | 9 | ||||
| -rw-r--r-- | lisp/cedet/semantic/symref.el | 8 | ||||
| -rw-r--r-- | lisp/cedet/semantic/tag-file.el | 12 | ||||
| -rw-r--r-- | lisp/cedet/semantic/tag-ls.el | 6 | ||||
| -rw-r--r-- | lisp/cedet/semantic/tag-write.el | 6 | ||||
| -rw-r--r-- | lisp/cedet/semantic/tag.el | 18 | ||||
| -rw-r--r-- | lisp/cedet/semantic/texi.el | 15 | ||||
| -rw-r--r-- | lisp/cedet/semantic/util.el | 4 |
18 files changed, 127 insertions, 56 deletions
diff --git a/lisp/cedet/semantic/analyze.el b/lisp/cedet/semantic/analyze.el index 23c6169b7ee..933e0b2996e 100644 --- a/lisp/cedet/semantic/analyze.el +++ b/lisp/cedet/semantic/analyze.el | |||
| @@ -466,6 +466,7 @@ to provide a large number of non-cached analysis for filtering symbols." | |||
| 466 | ;; | 466 | ;; |
| 467 | ;; Create a full-up context analysis. | 467 | ;; Create a full-up context analysis. |
| 468 | ;; | 468 | ;; |
| 469 | ;;;###autoload | ||
| 469 | (define-overloadable-function semantic-analyze-current-context (&optional position) | 470 | (define-overloadable-function semantic-analyze-current-context (&optional position) |
| 470 | "Analyze the current context at optional POSITION. | 471 | "Analyze the current context at optional POSITION. |
| 471 | If called interactively, display interesting information about POSITION | 472 | If called interactively, display interesting information about POSITION |
| @@ -765,4 +766,9 @@ CONTEXT's content is described in `semantic-analyze-current-context'." | |||
| 765 | 766 | ||
| 766 | (provide 'semantic/analyze) | 767 | (provide 'semantic/analyze) |
| 767 | 768 | ||
| 769 | ;; Local variables: | ||
| 770 | ;; generated-autoload-file: "loaddefs.el" | ||
| 771 | ;; generated-autoload-feature: semantic/loaddefs | ||
| 772 | ;; End: | ||
| 773 | |||
| 768 | ;;; semantic/analyze.el ends here | 774 | ;;; semantic/analyze.el ends here |
diff --git a/lisp/cedet/semantic/analyze/complete.el b/lisp/cedet/semantic/analyze/complete.el index ee0a807ef38..a44100b128f 100644 --- a/lisp/cedet/semantic/analyze/complete.el +++ b/lisp/cedet/semantic/analyze/complete.el | |||
| @@ -37,6 +37,7 @@ | |||
| 37 | ;;; Helper Fcns | 37 | ;;; Helper Fcns |
| 38 | ;; | 38 | ;; |
| 39 | ;; | 39 | ;; |
| 40 | ;;;###autoload | ||
| 40 | (define-overloadable-function semantic-analyze-type-constants (type) | 41 | (define-overloadable-function semantic-analyze-type-constants (type) |
| 41 | "For the tag TYPE, return any constant symbols of TYPE. | 42 | "For the tag TYPE, return any constant symbols of TYPE. |
| 42 | Used as options when completing.") | 43 | Used as options when completing.") |
diff --git a/lisp/cedet/semantic/ctxt.el b/lisp/cedet/semantic/ctxt.el index 852bd242338..3aac514488b 100644 --- a/lisp/cedet/semantic/ctxt.el +++ b/lisp/cedet/semantic/ctxt.el | |||
| @@ -576,6 +576,7 @@ Assume a functional typed language. Uses very simple rules." | |||
| 576 | '(type) | 576 | '(type) |
| 577 | )))) | 577 | )))) |
| 578 | 578 | ||
| 579 | ;;;###autoload | ||
| 579 | (define-overloadable-function semantic-ctxt-current-mode (&optional point) | 580 | (define-overloadable-function semantic-ctxt-current-mode (&optional point) |
| 580 | "Return the major mode active at POINT. | 581 | "Return the major mode active at POINT. |
| 581 | POINT defaults to the value of point in current buffer. | 582 | POINT defaults to the value of point in current buffer. |
| @@ -611,4 +612,9 @@ overriden." | |||
| 611 | 612 | ||
| 612 | (provide 'semantic/ctxt) | 613 | (provide 'semantic/ctxt) |
| 613 | 614 | ||
| 615 | ;; Local variables: | ||
| 616 | ;; generated-autoload-file: "loaddefs.el" | ||
| 617 | ;; generated-autoload-feature: semantic/loaddefs | ||
| 618 | ;; End: | ||
| 619 | |||
| 614 | ;;; semantic/ctxt.el ends here | 620 | ;;; semantic/ctxt.el ends here |
diff --git a/lisp/cedet/semantic/find.el b/lisp/cedet/semantic/find.el index a8351baa51d..3d14303061c 100644 --- a/lisp/cedet/semantic/find.el +++ b/lisp/cedet/semantic/find.el | |||
| @@ -175,6 +175,7 @@ If there are more than one in the same location, return the | |||
| 175 | smallest tag. Return nil if there is no tag here." | 175 | smallest tag. Return nil if there is no tag here." |
| 176 | (car (nreverse (semantic-find-tag-by-overlay)))) | 176 | (car (nreverse (semantic-find-tag-by-overlay)))) |
| 177 | 177 | ||
| 178 | ;;;###autoload | ||
| 178 | (defun semantic-current-tag-parent () | 179 | (defun semantic-current-tag-parent () |
| 179 | "Return the current tags parent in the current buffer. | 180 | "Return the current tags parent in the current buffer. |
| 180 | A tag's parent would be a containing structure, such as a type | 181 | A tag's parent would be a containing structure, such as a type |
| @@ -329,6 +330,7 @@ Used in completion." | |||
| 329 | (semantic-tag-type-compound-p (car tags)) | 330 | (semantic-tag-type-compound-p (car tags)) |
| 330 | ,table)) | 331 | ,table)) |
| 331 | 332 | ||
| 333 | ;;;###autoload | ||
| 332 | (define-overloadable-function semantic-find-tags-by-scope-protection (scopeprotection parent &optional table) | 334 | (define-overloadable-function semantic-find-tags-by-scope-protection (scopeprotection parent &optional table) |
| 333 | "Find all tags accessable by SCOPEPROTECTION. | 335 | "Find all tags accessable by SCOPEPROTECTION. |
| 334 | SCOPEPROTECTION is a symbol which can be returned by the method | 336 | SCOPEPROTECTION is a symbol which can be returned by the method |
diff --git a/lisp/cedet/semantic/format.el b/lisp/cedet/semantic/format.el index 52cd0f841e6..d6d66259946 100644 --- a/lisp/cedet/semantic/format.el +++ b/lisp/cedet/semantic/format.el | |||
| @@ -104,6 +104,7 @@ The name is the shortest possible representation. | |||
| 104 | Optional argument PARENT is the parent type if TAG is a detail. | 104 | Optional argument PARENT is the parent type if TAG is a detail. |
| 105 | Optional argument COLOR means highlight the prototype with font-lock colors.") | 105 | Optional argument COLOR means highlight the prototype with font-lock colors.") |
| 106 | 106 | ||
| 107 | ;;;###autoload | ||
| 107 | (define-overloadable-function semantic-format-tag-prototype (tag &optional parent color) | 108 | (define-overloadable-function semantic-format-tag-prototype (tag &optional parent color) |
| 108 | "Return a prototype for TAG. | 109 | "Return a prototype for TAG. |
| 109 | This function should be overloaded, though it need not be used. | 110 | This function should be overloaded, though it need not be used. |
| @@ -420,6 +421,7 @@ This is a simple C like default." | |||
| 420 | (semantic-alias-obsolete | 421 | (semantic-alias-obsolete |
| 421 | 'semantic-summerize-nonterminal 'semantic-format-tag-summarize) | 422 | 'semantic-summerize-nonterminal 'semantic-format-tag-summarize) |
| 422 | 423 | ||
| 424 | ;;;###autoload | ||
| 423 | (define-overloadable-function semantic-format-tag-summarize (tag &optional parent color) | 425 | (define-overloadable-function semantic-format-tag-summarize (tag &optional parent color) |
| 424 | "Summarize TAG in a reasonable way. | 426 | "Summarize TAG in a reasonable way. |
| 425 | Optional argument PARENT is the parent type if TAG is a detail. | 427 | Optional argument PARENT is the parent type if TAG is a detail. |
diff --git a/lisp/cedet/semantic/idle.el b/lisp/cedet/semantic/idle.el index 51f4f887e2a..49cd38c6d85 100644 --- a/lisp/cedet/semantic/idle.el +++ b/lisp/cedet/semantic/idle.el | |||
| @@ -46,8 +46,17 @@ | |||
| 46 | ;; For the semantic-find-tags-by-name macro. | 46 | ;; For the semantic-find-tags-by-name macro. |
| 47 | (eval-when-compile (require 'semantic/find)) | 47 | (eval-when-compile (require 'semantic/find)) |
| 48 | 48 | ||
| 49 | (declare-function semanticdb-typecache-refresh-for-buffer "semantic/db-typecache") | ||
| 50 | (declare-function eldoc-message "eldoc") | 49 | (declare-function eldoc-message "eldoc") |
| 50 | (declare-function semantic-analyze-interesting-tag "semantic/analyze") | ||
| 51 | (declare-function semantic-complete-analyze-inline-idle "semantic/complete") | ||
| 52 | (declare-function semanticdb-deep-find-tags-by-name "semantic/db-find") | ||
| 53 | (declare-function semanticdb-minor-mode-p "semantic/db-mode") | ||
| 54 | (declare-function semanticdb-save-all-db-idle "semantic/db") | ||
| 55 | (declare-function semanticdb-typecache-refresh-for-buffer "semantic/db-typecache") | ||
| 56 | (declare-function semantic-decorate-flush-pending-decorations | ||
| 57 | "semantic/decorate/mode") | ||
| 58 | (declare-function pulse-momentary-highlight-region "pulse") | ||
| 59 | (declare-function pulse-momentary-highlight-overlay "pulse") | ||
| 51 | 60 | ||
| 52 | ;;; Code: | 61 | ;;; Code: |
| 53 | 62 | ||
| @@ -358,6 +367,7 @@ Returns t of all processing succeeded." | |||
| 358 | (semantic-safe "Idle Work Including Error: %S" | 367 | (semantic-safe "Idle Work Including Error: %S" |
| 359 | ;; Get the include related path. | 368 | ;; Get the include related path. |
| 360 | (when (and (featurep 'semantic/db) | 369 | (when (and (featurep 'semantic/db) |
| 370 | (require 'semantic/db-mode) | ||
| 361 | (semanticdb-minor-mode-p)) | 371 | (semanticdb-minor-mode-p)) |
| 362 | (require 'semantic/db-find) | 372 | (require 'semantic/db-find) |
| 363 | (semanticdb-find-translate-path buffer nil) | 373 | (semanticdb-find-translate-path buffer nil) |
| @@ -408,21 +418,22 @@ Uses `semantic-idle-work-for-on-buffer' to do the work." | |||
| 408 | )) | 418 | )) |
| 409 | ) | 419 | ) |
| 410 | 420 | ||
| 411 | ;; Save everything. | 421 | (when (and (featurep 'semantic/db) |
| 412 | (semanticdb-save-all-db-idle) | 422 | (require 'semantic/db-mode) |
| 423 | (semanticdb-minor-mode-p)) | ||
| 424 | ;; Save everything. | ||
| 425 | (semanticdb-save-all-db-idle) | ||
| 413 | 426 | ||
| 414 | ;; Parse up files near our active buffer | 427 | ;; Parse up files near our active buffer |
| 415 | (when semantic-idle-work-parse-neighboring-files-flag | 428 | (when semantic-idle-work-parse-neighboring-files-flag |
| 416 | (semantic-safe "Idle Work Parse Neighboring Files: %S" | 429 | (semantic-safe "Idle Work Parse Neighboring Files: %S" |
| 417 | (when (and (featurep 'semantic/db) | ||
| 418 | (semanticdb-minor-mode-p)) | ||
| 419 | (set-buffer cb) | 430 | (set-buffer cb) |
| 420 | (semantic-idle-scheduler-work-parse-neighboring-files)) | 431 | (semantic-idle-scheduler-work-parse-neighboring-files)) |
| 421 | t) | 432 | t) |
| 422 | ) | ||
| 423 | 433 | ||
| 424 | ;; Save everything... again | 434 | ;; Save everything... again |
| 425 | (semanticdb-save-all-db-idle) | 435 | (semanticdb-save-all-db-idle) |
| 436 | ) | ||
| 426 | 437 | ||
| 427 | ;; Done w/ processing | 438 | ;; Done w/ processing |
| 428 | nil)))) | 439 | nil)))) |
| @@ -582,6 +593,7 @@ Does nothing if the current buffer doesn't need reparsing." | |||
| 582 | 593 | ||
| 583 | ;; After updating the tags, handle any pending decorations for this | 594 | ;; After updating the tags, handle any pending decorations for this |
| 584 | ;; buffer. | 595 | ;; buffer. |
| 596 | (require 'semantic/decorate/mode) | ||
| 585 | (semantic-decorate-flush-pending-decorations (current-buffer)) | 597 | (semantic-decorate-flush-pending-decorations (current-buffer)) |
| 586 | )) | 598 | )) |
| 587 | 599 | ||
| @@ -716,7 +728,9 @@ Some useful functions are found in `semantic-format-tag-functions'." | |||
| 716 | "Search for a semantic tag with name SYM in database tables. | 728 | "Search for a semantic tag with name SYM in database tables. |
| 717 | Return the tag found or nil if not found. | 729 | Return the tag found or nil if not found. |
| 718 | If semanticdb is not in use, use the current buffer only." | 730 | If semanticdb is not in use, use the current buffer only." |
| 719 | (car (if (and (featurep 'semantic/db) semanticdb-current-database) | 731 | (car (if (and (featurep 'semantic/db) |
| 732 | semanticdb-current-database | ||
| 733 | (require 'semantic/db-find)) | ||
| 720 | (cdar (semanticdb-deep-find-tags-by-name sym)) | 734 | (cdar (semanticdb-deep-find-tags-by-name sym)) |
| 721 | (semantic-deep-find-tags-by-name sym (current-buffer))))) | 735 | (semantic-deep-find-tags-by-name sym (current-buffer))))) |
| 722 | 736 | ||
| @@ -744,6 +758,7 @@ Use the semantic analyzer to find the symbol information." | |||
| 744 | (semantic-analyze-current-context (point)) | 758 | (semantic-analyze-current-context (point)) |
| 745 | (error nil)))) | 759 | (error nil)))) |
| 746 | (when analysis | 760 | (when analysis |
| 761 | (require 'semantic/analyze) | ||
| 747 | (semantic-analyze-interesting-tag analysis)))) | 762 | (semantic-analyze-interesting-tag analysis)))) |
| 748 | 763 | ||
| 749 | (defun semantic-idle-summary-current-symbol-info-default () | 764 | (defun semantic-idle-summary-current-symbol-info-default () |
| @@ -844,6 +859,7 @@ current tag to display information." | |||
| 844 | "Perhaps add highlighting onto TAG. | 859 | "Perhaps add highlighting onto TAG. |
| 845 | TAG was found as the thing under point. If it happens to be | 860 | TAG was found as the thing under point. If it happens to be |
| 846 | visible, then highlight it." | 861 | visible, then highlight it." |
| 862 | (require 'pulse) | ||
| 847 | (let* ((region (when (and (semantic-tag-p tag) | 863 | (let* ((region (when (and (semantic-tag-p tag) |
| 848 | (semantic-tag-with-position-p tag)) | 864 | (semantic-tag-with-position-p tag)) |
| 849 | (semantic-tag-overlay tag))) | 865 | (semantic-tag-overlay tag))) |
| @@ -896,6 +912,7 @@ visible, then highlight it." | |||
| 896 | "Highlight the tag, and references of the symbol under point. | 912 | "Highlight the tag, and references of the symbol under point. |
| 897 | Call `semantic-analyze-current-context' to find the reference tag. | 913 | Call `semantic-analyze-current-context' to find the reference tag. |
| 898 | Call `semantic-symref-hits-in-region' to identify local references." | 914 | Call `semantic-symref-hits-in-region' to identify local references." |
| 915 | (require 'pulse) | ||
| 899 | (when (semantic-idle-summary-useful-context-p) | 916 | (when (semantic-idle-summary-useful-context-p) |
| 900 | (let* ((ctxt (semantic-analyze-current-context)) | 917 | (let* ((ctxt (semantic-analyze-current-context)) |
| 901 | (Hbounds (when ctxt (oref ctxt bounds))) | 918 | (Hbounds (when ctxt (oref ctxt bounds))) |
| @@ -945,6 +962,7 @@ Call `semantic-symref-hits-in-region' to identify local references." | |||
| 945 | nil)) | 962 | nil)) |
| 946 | ) | 963 | ) |
| 947 | ;; Use idle version. | 964 | ;; Use idle version. |
| 965 | (require 'semantic/complete) | ||
| 948 | (semantic-complete-analyze-inline-idle) | 966 | (semantic-complete-analyze-inline-idle) |
| 949 | ) | 967 | ) |
| 950 | (error nil)) | 968 | (error nil)) |
diff --git a/lisp/cedet/semantic/lex-spp.el b/lisp/cedet/semantic/lex-spp.el index b25a3440ad0..39258f550d3 100644 --- a/lisp/cedet/semantic/lex-spp.el +++ b/lisp/cedet/semantic/lex-spp.el | |||
| @@ -67,6 +67,7 @@ | |||
| 67 | ;; NN_END | 67 | ;; NN_END |
| 68 | ;; | 68 | ;; |
| 69 | 69 | ||
| 70 | (require 'semantic) | ||
| 70 | (require 'semantic/lex) | 71 | (require 'semantic/lex) |
| 71 | 72 | ||
| 72 | ;;; Code: | 73 | ;;; Code: |
| @@ -719,7 +720,7 @@ Disable this only to prevent recursive expansion issues.") | |||
| 719 | (defun semantic-lex-spp-analyzer-push-tokens-for-symbol (str beg end) | 720 | (defun semantic-lex-spp-analyzer-push-tokens-for-symbol (str beg end) |
| 720 | "Push lexical tokens for the symbol or keyword STR. | 721 | "Push lexical tokens for the symbol or keyword STR. |
| 721 | STR occurs in the current buffer between BEG and END." | 722 | STR occurs in the current buffer between BEG and END." |
| 722 | (let (sym val) | 723 | (let (sym val count) |
| 723 | (cond | 724 | (cond |
| 724 | ;; | 725 | ;; |
| 725 | ;; It is a macro. Prepare for a replacement. | 726 | ;; It is a macro. Prepare for a replacement. |
| @@ -785,8 +786,8 @@ STR occurs in the current buffer between BEG and END." | |||
| 785 | (symbolp (car token)) | 786 | (symbolp (car token)) |
| 786 | (eq 'semantic-list (car token))) | 787 | (eq 'semantic-list (car token))) |
| 787 | ;; Convert TOKEN in place. | 788 | ;; Convert TOKEN in place. |
| 788 | (let ((argsplit (cedet-split-string (semantic-lex-token-text token) | 789 | (let ((argsplit (split-string (semantic-lex-token-text token) |
| 789 | "[(), ]" t))) | 790 | "[(), ]" t))) |
| 790 | (setcar token 'spp-arg-list) | 791 | (setcar token 'spp-arg-list) |
| 791 | (setcar (nthcdr 1 token) argsplit)) | 792 | (setcar (nthcdr 1 token) argsplit)) |
| 792 | )) | 793 | )) |
diff --git a/lisp/cedet/semantic/lex.el b/lisp/cedet/semantic/lex.el index 9768a1e992c..09b31b7ff2d 100644 --- a/lisp/cedet/semantic/lex.el +++ b/lisp/cedet/semantic/lex.el | |||
| @@ -672,10 +672,13 @@ when finding unterminated syntax.") | |||
| 672 | 672 | ||
| 673 | ;;; Interactive testing commands | 673 | ;;; Interactive testing commands |
| 674 | 674 | ||
| 675 | (declare-function semantic-elapsed-time "semantic") | ||
| 676 | |||
| 675 | (defun semantic-lex-test (arg) | 677 | (defun semantic-lex-test (arg) |
| 676 | "Test the semantic lexer in the current buffer. | 678 | "Test the semantic lexer in the current buffer. |
| 677 | If universal argument ARG, then try the whole buffer." | 679 | If universal argument ARG, then try the whole buffer." |
| 678 | (interactive "P") | 680 | (interactive "P") |
| 681 | (require 'semantic) | ||
| 679 | (let* ((start (current-time)) | 682 | (let* ((start (current-time)) |
| 680 | (result (semantic-lex | 683 | (result (semantic-lex |
| 681 | (if arg (point-min) (point)) | 684 | (if arg (point-min) (point)) |
| @@ -996,6 +999,8 @@ This is an exhaustively robust check." | |||
| 996 | (numberp (nth 2 thing))) | 999 | (numberp (nth 2 thing))) |
| 997 | ) | 1000 | ) |
| 998 | 1001 | ||
| 1002 | (eval-and-compile | ||
| 1003 | |||
| 999 | (defun semantic-lex-expand-block-specs (specs) | 1004 | (defun semantic-lex-expand-block-specs (specs) |
| 1000 | "Expand block specifications SPECS into a Lisp form. | 1005 | "Expand block specifications SPECS into a Lisp form. |
| 1001 | SPECS is a list of (BLOCK BEGIN END) elements where BLOCK, BEGIN, and | 1006 | SPECS is a list of (BLOCK BEGIN END) elements where BLOCK, BEGIN, and |
| @@ -1024,6 +1029,7 @@ an END token class is encountered." | |||
| 1024 | (car semantic-lex-token-stream)))) | 1029 | (car semantic-lex-token-stream)))) |
| 1025 | (cond ,@(nreverse form)))) | 1030 | (cond ,@(nreverse form)))) |
| 1026 | ))) | 1031 | ))) |
| 1032 | ) | ||
| 1027 | 1033 | ||
| 1028 | (defmacro semantic-lex-push-token (token &rest blockspecs) | 1034 | (defmacro semantic-lex-push-token (token &rest blockspecs) |
| 1029 | "Push TOKEN in the lexical analyzer token stream. | 1035 | "Push TOKEN in the lexical analyzer token stream. |
| @@ -1070,6 +1076,7 @@ See also the function `semantic-lex-token'." | |||
| 1070 | (modify-syntax-entry | 1076 | (modify-syntax-entry |
| 1071 | (car mod) (nth 1 mod) semantic-lex-syntax-table))) | 1077 | (car mod) (nth 1 mod) semantic-lex-syntax-table))) |
| 1072 | 1078 | ||
| 1079 | ;;;###autoload | ||
| 1073 | (define-overloadable-function semantic-lex (start end &optional depth length) | 1080 | (define-overloadable-function semantic-lex (start end &optional depth length) |
| 1074 | "Lexically analyze text in the current buffer between START and END. | 1081 | "Lexically analyze text in the current buffer between START and END. |
| 1075 | Optional argument DEPTH indicates at what level to scan over entire | 1082 | Optional argument DEPTH indicates at what level to scan over entire |
| @@ -1975,7 +1982,7 @@ return LENGTH tokens." | |||
| 1975 | ((looking-at "\\(\\sw\\|\\s_\\)+") | 1982 | ((looking-at "\\(\\sw\\|\\s_\\)+") |
| 1976 | (setq ts (cons (cons | 1983 | (setq ts (cons (cons |
| 1977 | ;; Get info on if this is a keyword or not | 1984 | ;; Get info on if this is a keyword or not |
| 1978 | (or (semantic-flex-keyword-p (match-string 0)) | 1985 | (or (semantic-lex-keyword-p (match-string 0)) |
| 1979 | 'symbol) | 1986 | 'symbol) |
| 1980 | (cons (match-beginning 0) (match-end 0))) | 1987 | (cons (match-beginning 0) (match-end 0))) |
| 1981 | ts))) | 1988 | ts))) |
| @@ -2092,4 +2099,9 @@ return LENGTH tokens." | |||
| 2092 | 2099 | ||
| 2093 | (provide 'semantic/lex) | 2100 | (provide 'semantic/lex) |
| 2094 | 2101 | ||
| 2102 | ;; Local variables: | ||
| 2103 | ;; generated-autoload-file: "loaddefs.el" | ||
| 2104 | ;; generated-autoload-feature: semantic/loaddefs | ||
| 2105 | ;; End: | ||
| 2106 | |||
| 2095 | ;;; semantic-lex.el ends here | 2107 | ;;; semantic-lex.el ends here |
diff --git a/lisp/cedet/semantic/sb.el b/lisp/cedet/semantic/sb.el index f1a6beb7bec..3bbe9f94d9a 100644 --- a/lisp/cedet/semantic/sb.el +++ b/lisp/cedet/semantic/sb.el | |||
| @@ -34,9 +34,9 @@ | |||
| 34 | (require 'semantic) | 34 | (require 'semantic) |
| 35 | (require 'semantic/util) | 35 | (require 'semantic/util) |
| 36 | (require 'speedbar) | 36 | (require 'speedbar) |
| 37 | ;; (require 'inversion) | 37 | (require 'semantic/sort) |
| 38 | ;; (eval-and-compile | 38 | |
| 39 | ;; (inversion-require 'speedbar "0.15beta1")) | 39 | (declare-function semanticdb-minor-mode-p "semantic/db-mode") |
| 40 | 40 | ||
| 41 | (defcustom semantic-sb-autoexpand-length 1 | 41 | (defcustom semantic-sb-autoexpand-length 1 |
| 42 | "*Length of a semantic bucket to autoexpand in place. | 42 | "*Length of a semantic bucket to autoexpand in place. |
| @@ -382,7 +382,9 @@ to create much wiser decisions about how to sort and group these items." | |||
| 382 | "Load FILE into a buffer, and generate tags using the Semantic parser. | 382 | "Load FILE into a buffer, and generate tags using the Semantic parser. |
| 383 | Returns the tag list, or t for an error." | 383 | Returns the tag list, or t for an error." |
| 384 | (let ((out nil)) | 384 | (let ((out nil)) |
| 385 | (if (and (featurep 'semanticdb) (semanticdb-minor-mode-p) | 385 | (if (and (featurep 'semantic/db) |
| 386 | (require 'semantic/db-mode) | ||
| 387 | (semanticdb-minor-mode-p) | ||
| 386 | (not speedbar-power-click) | 388 | (not speedbar-power-click) |
| 387 | ;; If the database is loaded and running, try to get | 389 | ;; If the database is loaded and running, try to get |
| 388 | ;; tokens from it. | 390 | ;; tokens from it. |
diff --git a/lisp/cedet/semantic/scope.el b/lisp/cedet/semantic/scope.el index c89bd79978f..603fdc23576 100644 --- a/lisp/cedet/semantic/scope.el +++ b/lisp/cedet/semantic/scope.el | |||
| @@ -49,6 +49,13 @@ | |||
| 49 | (require 'semantic/analyze/fcn) | 49 | (require 'semantic/analyze/fcn) |
| 50 | (require 'semantic/ctxt) | 50 | (require 'semantic/ctxt) |
| 51 | 51 | ||
| 52 | (eval-when-compile (require 'semantic/find)) ; For semantic-find-* macros | ||
| 53 | |||
| 54 | (declare-function data-debug-show "eieio-datadebug") | ||
| 55 | (declare-function semantic-analyze-find-tag "semantic/analyze") | ||
| 56 | (declare-function semantic-analyze-princ-sequence "semantic/analyze") | ||
| 57 | (declare-function semanticdb-typecache-merge-streams "semantic/db-typecache") | ||
| 58 | (declare-function semanticdb-typecache-add-dependant "semantic/db-typecache") | ||
| 52 | 59 | ||
| 53 | ;;; Code: | 60 | ;;; Code: |
| 54 | 61 | ||
| @@ -175,6 +182,7 @@ types available.") | |||
| 175 | (defun semantic-analyze-scoped-types-default (position) | 182 | (defun semantic-analyze-scoped-types-default (position) |
| 176 | "Return a list of types currently in scope at POSITION. | 183 | "Return a list of types currently in scope at POSITION. |
| 177 | Use `semantic-ctxt-scoped-types' to find types." | 184 | Use `semantic-ctxt-scoped-types' to find types." |
| 185 | (require 'semantic/db-typecache) | ||
| 178 | (save-excursion | 186 | (save-excursion |
| 179 | (goto-char position) | 187 | (goto-char position) |
| 180 | (let ((code-scoped-types nil)) | 188 | (let ((code-scoped-types nil)) |
| @@ -221,6 +229,7 @@ Optional SCOPETYPES are additional scoped entities in which our parent might | |||
| 221 | be found. | 229 | be found. |
| 222 | This only finds ONE immediate parent by name. All other parents returned | 230 | This only finds ONE immediate parent by name. All other parents returned |
| 223 | are from nesting data types." | 231 | are from nesting data types." |
| 232 | (require 'semantic/analyze) | ||
| 224 | (save-excursion | 233 | (save-excursion |
| 225 | (if position (goto-char position)) | 234 | (if position (goto-char position)) |
| 226 | (let* ((stack (reverse (semantic-find-tag-by-overlay (point)))) | 235 | (let* ((stack (reverse (semantic-find-tag-by-overlay (point)))) |
| @@ -576,6 +585,7 @@ type." | |||
| 576 | "Map all parents of TYPE to FCN. Return tags of all the types. | 585 | "Map all parents of TYPE to FCN. Return tags of all the types. |
| 577 | Argument SCOPE specify additional tags that are in scope | 586 | Argument SCOPE specify additional tags that are in scope |
| 578 | whose tags can be searched when needed, OR it may be a scope object." | 587 | whose tags can be searched when needed, OR it may be a scope object." |
| 588 | (require 'semantic/analyze) | ||
| 579 | (let* (;; PARENTS specifies only the superclasses and not | 589 | (let* (;; PARENTS specifies only the superclasses and not |
| 580 | ;; interfaces. Inheriting from an interfaces implies | 590 | ;; interfaces. Inheriting from an interfaces implies |
| 581 | ;; you have a copy of all methods locally. I think. | 591 | ;; you have a copy of all methods locally. I think. |
| @@ -647,8 +657,9 @@ If POINT is not provided, then use the current location of point. | |||
| 647 | The class returned from the scope calculation is variable | 657 | The class returned from the scope calculation is variable |
| 648 | `semantic-scope-cache'." | 658 | `semantic-scope-cache'." |
| 649 | (interactive) | 659 | (interactive) |
| 650 | (if (not (and (featurep 'semanticdb) semanticdb-current-database)) | 660 | (if (not (and (featurep 'semantic/db) semanticdb-current-database)) |
| 651 | nil ;; Don't do anything... | 661 | nil ;; Don't do anything... |
| 662 | (require 'semantic/db-typecache) | ||
| 652 | (if (not point) (setq point (point))) | 663 | (if (not point) (setq point (point))) |
| 653 | (when (interactive-p) | 664 | (when (interactive-p) |
| 654 | (semantic-fetch-tags) | 665 | (semantic-fetch-tags) |
| @@ -714,6 +725,7 @@ The class returned from the scope calculation is variable | |||
| 714 | (semanticdb-typecache-add-dependant scopecache) | 725 | (semanticdb-typecache-add-dependant scopecache) |
| 715 | ;; Handy debug output. | 726 | ;; Handy debug output. |
| 716 | (when (interactive-p) | 727 | (when (interactive-p) |
| 728 | (require 'eieio-datadebug) | ||
| 717 | (data-debug-show scopecache) | 729 | (data-debug-show scopecache) |
| 718 | ) | 730 | ) |
| 719 | ;; Return ourselves | 731 | ;; Return ourselves |
| @@ -783,6 +795,7 @@ hits in order, with the first tag being in the closest scope." | |||
| 783 | ;; | 795 | ;; |
| 784 | (defmethod semantic-analyze-show ((context semantic-scope-cache)) | 796 | (defmethod semantic-analyze-show ((context semantic-scope-cache)) |
| 785 | "Insert CONTEXT into the current buffer in a nice way." | 797 | "Insert CONTEXT into the current buffer in a nice way." |
| 798 | (require 'semantic-analyze) | ||
| 786 | (semantic-analyze-princ-sequence (oref context scopetypes) "-> ScopeTypes: " ) | 799 | (semantic-analyze-princ-sequence (oref context scopetypes) "-> ScopeTypes: " ) |
| 787 | (semantic-analyze-princ-sequence (oref context parents) "-> Parents: " ) | 800 | (semantic-analyze-princ-sequence (oref context parents) "-> Parents: " ) |
| 788 | (semantic-analyze-princ-sequence (oref context scope) "-> Scope: " ) | 801 | (semantic-analyze-princ-sequence (oref context scope) "-> Scope: " ) |
diff --git a/lisp/cedet/semantic/sort.el b/lisp/cedet/semantic/sort.el index 39ebda77380..df4374c46ea 100644 --- a/lisp/cedet/semantic/sort.el +++ b/lisp/cedet/semantic/sort.el | |||
| @@ -35,8 +35,10 @@ | |||
| 35 | (require 'semantic) | 35 | (require 'semantic) |
| 36 | (require 'semantic/db) | 36 | (require 'semantic/db) |
| 37 | (eval-when-compile | 37 | (eval-when-compile |
| 38 | (require 'semantic/find) | 38 | (require 'semantic/find)) |
| 39 | (require 'semantic/db-find)) | 39 | |
| 40 | (declare-function semanticdb-find-tags-external-children-of-type | ||
| 41 | "semantic/db-find") | ||
| 40 | 42 | ||
| 41 | ;;; Alphanumeric sorting | 43 | ;;; Alphanumeric sorting |
| 42 | ;; | 44 | ;; |
| @@ -547,7 +549,8 @@ Optional argument USEDB specifies if the semantic database is used. | |||
| 547 | See `semantic-tag-external-member-children' for details." | 549 | See `semantic-tag-external-member-children' for details." |
| 548 | (if (and usedb | 550 | (if (and usedb |
| 549 | (fboundp 'semanticdb-minor-mode-p) | 551 | (fboundp 'semanticdb-minor-mode-p) |
| 550 | (semanticdb-minor-mode-p)) | 552 | (semanticdb-minor-mode-p) |
| 553 | (require 'semantic/db-find)) | ||
| 551 | (let ((m (semanticdb-find-tags-external-children-of-type | 554 | (let ((m (semanticdb-find-tags-external-children-of-type |
| 552 | (semantic-tag-name tag)))) | 555 | (semantic-tag-name tag)))) |
| 553 | (if m (apply #'append (mapcar #'cdr m)))) | 556 | (if m (apply #'append (mapcar #'cdr m)))) |
diff --git a/lisp/cedet/semantic/symref.el b/lisp/cedet/semantic/symref.el index f3a2d90377c..98bc7dd310d 100644 --- a/lisp/cedet/semantic/symref.el +++ b/lisp/cedet/semantic/symref.el | |||
| @@ -64,10 +64,11 @@ | |||
| 64 | ;; | 64 | ;; |
| 65 | ;; Your tool should then create an instance of `semantic-symref-result'. | 65 | ;; Your tool should then create an instance of `semantic-symref-result'. |
| 66 | 66 | ||
| 67 | (require 'semantic/fw) | 67 | (require 'semantic) |
| 68 | ;; (require 'ede) | 68 | ;; (require 'ede) |
| 69 | (eval-when-compile (require 'data-debug) | 69 | |
| 70 | (require 'eieio-datadebug)) | 70 | (declare-function data-debug-new-buffer "data-debug") |
| 71 | (declare-function data-debug-insert-object-slots "eieio-datadebug") | ||
| 71 | 72 | ||
| 72 | ;;; Code: | 73 | ;;; Code: |
| 73 | (defvar semantic-symref-tool 'detect | 74 | (defvar semantic-symref-tool 'detect |
| @@ -134,6 +135,7 @@ ARGS are the initialization arguments to pass to the created class." | |||
| 134 | (defun semantic-symref-data-debug-last-result () | 135 | (defun semantic-symref-data-debug-last-result () |
| 135 | "Run the last symref data result in Data Debug." | 136 | "Run the last symref data result in Data Debug." |
| 136 | (interactive) | 137 | (interactive) |
| 138 | (require 'eieio-datadebug) | ||
| 137 | (if semantic-symref-last-result | 139 | (if semantic-symref-last-result |
| 138 | (progn | 140 | (progn |
| 139 | (data-debug-new-buffer "*Symbol Reference ADEBUG*") | 141 | (data-debug-new-buffer "*Symbol Reference ADEBUG*") |
diff --git a/lisp/cedet/semantic/tag-file.el b/lisp/cedet/semantic/tag-file.el index cd2d073bcb8..5dd3c0f5db1 100644 --- a/lisp/cedet/semantic/tag-file.el +++ b/lisp/cedet/semantic/tag-file.el | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | ;;; tag-file.el --- Routines that find files based on tags. | 1 | ;;; semantic/tag-file.el --- Routines that find files based on tags. |
| 2 | 2 | ||
| 3 | ;;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, | 3 | ;;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, |
| 4 | ;;; 2008, 2009 Free Software Foundation, Inc. | 4 | ;;; 2008, 2009 Free Software Foundation, Inc. |
| @@ -28,6 +28,10 @@ | |||
| 28 | 28 | ||
| 29 | (require 'semantic/tag) | 29 | (require 'semantic/tag) |
| 30 | 30 | ||
| 31 | (declare-function semanticdb-table-child-p "semantic/db") | ||
| 32 | (declare-function semanticdb-get-buffer "semantic/db") | ||
| 33 | (declare-function semantic-dependency-find-file-on-path "semantic/dep") | ||
| 34 | |||
| 31 | ;;; Code: | 35 | ;;; Code: |
| 32 | 36 | ||
| 33 | ;;; Location a TAG came from. | 37 | ;;; Location a TAG came from. |
| @@ -55,7 +59,8 @@ PARENT can also be a `semanticdb-table' object." | |||
| 55 | ;; Tag had nothing, and the parent only has a file-name, then | 59 | ;; Tag had nothing, and the parent only has a file-name, then |
| 56 | ;; find that file, and switch to that buffer. | 60 | ;; find that file, and switch to that buffer. |
| 57 | (set-buffer (find-file-noselect (semantic-tag-file-name parent)))) | 61 | (set-buffer (find-file-noselect (semantic-tag-file-name parent)))) |
| 58 | ((and parent (semanticdb-table-child-p parent)) | 62 | ((and parent (featurep 'semantic/db) |
| 63 | (semanticdb-table-child-p parent)) | ||
| 59 | (set-buffer (semanticdb-get-buffer parent))) | 64 | (set-buffer (semanticdb-get-buffer parent))) |
| 60 | (t | 65 | (t |
| 61 | ;; Well, just assume things are in the current buffer. | 66 | ;; Well, just assume things are in the current buffer. |
| @@ -151,6 +156,7 @@ Depends on `semantic-dependency-include-path' for searching. Always searches | |||
| 151 | ;; (semantic--tag-get-property tag 'dependency-file) | 156 | ;; (semantic--tag-get-property tag 'dependency-file) |
| 152 | (:override | 157 | (:override |
| 153 | (save-excursion | 158 | (save-excursion |
| 159 | (require 'semantic/dep) | ||
| 154 | (semantic-dependency-find-file-on-path | 160 | (semantic-dependency-find-file-on-path |
| 155 | tag-fname (semantic-tag-include-system-p tag)))) | 161 | tag-fname (semantic-tag-include-system-p tag)))) |
| 156 | ;; ) | 162 | ;; ) |
| @@ -206,4 +212,4 @@ file prototypes belong in." | |||
| 206 | ;; generated-autoload-feature: semantic/loaddefs | 212 | ;; generated-autoload-feature: semantic/loaddefs |
| 207 | ;; End: | 213 | ;; End: |
| 208 | 214 | ||
| 209 | ;;; semantic-tag-file.el ends here | 215 | ;;; semantic/tag-file.el ends here |
diff --git a/lisp/cedet/semantic/tag-ls.el b/lisp/cedet/semantic/tag-ls.el index b80ed46a75d..272c64f30af 100644 --- a/lisp/cedet/semantic/tag-ls.el +++ b/lisp/cedet/semantic/tag-ls.el | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | ;;; tag-ls.el --- Language Specific override functions for tags | 1 | ;;; semantic/tag-ls.el --- Language Specific override functions for tags |
| 2 | 2 | ||
| 3 | ;;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2006, 2007, 2008 | 3 | ;;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2006, 2007, 2008 |
| 4 | ;;; Free Software Foundation, Inc. | 4 | ;;; Free Software Foundation, Inc. |
| @@ -30,7 +30,7 @@ | |||
| 30 | ;; itself. These are the functions that languages can use to derive | 30 | ;; itself. These are the functions that languages can use to derive |
| 31 | ;; the information. | 31 | ;; the information. |
| 32 | 32 | ||
| 33 | (require 'semantic/tag) | 33 | (require 'semantic) |
| 34 | 34 | ||
| 35 | ;;; Code: | 35 | ;;; Code: |
| 36 | 36 | ||
| @@ -278,4 +278,4 @@ Return the name of TAG found in the toplevel STREAM." | |||
| 278 | ;; generated-autoload-feature: semantic/loaddefs | 278 | ;; generated-autoload-feature: semantic/loaddefs |
| 279 | ;; End: | 279 | ;; End: |
| 280 | 280 | ||
| 281 | ;;; semantic-tag-ls.el ends here | 281 | ;;; semantic/tag-ls.el ends here |
diff --git a/lisp/cedet/semantic/tag-write.el b/lisp/cedet/semantic/tag-write.el index fb27e542075..2f8367760c9 100644 --- a/lisp/cedet/semantic/tag-write.el +++ b/lisp/cedet/semantic/tag-write.el | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | ;;; tag-write.el --- Write tags to a text stream | 1 | ;;; semantic/tag-write.el --- Write tags to a text stream |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2008, 2009 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2008, 2009 Free Software Foundation, Inc. |
| 4 | 4 | ||
| @@ -31,7 +31,7 @@ | |||
| 31 | ;; that they conform to good semantic tag hygene. | 31 | ;; that they conform to good semantic tag hygene. |
| 32 | ;; | 32 | ;; |
| 33 | 33 | ||
| 34 | (require 'semantic/tag) | 34 | (require 'semantic) |
| 35 | 35 | ||
| 36 | ;;; Code: | 36 | ;;; Code: |
| 37 | (defun semantic-tag-write-one-tag (tag &optional indent) | 37 | (defun semantic-tag-write-one-tag (tag &optional indent) |
| @@ -183,4 +183,4 @@ The VALUE is a list of tags." | |||
| 183 | 183 | ||
| 184 | 184 | ||
| 185 | (provide 'semantic/tag-write) | 185 | (provide 'semantic/tag-write) |
| 186 | ;;; semantic-tag-write.el ends here | 186 | ;;; semantic/tag-write.el ends here |
diff --git a/lisp/cedet/semantic/tag.el b/lisp/cedet/semantic/tag.el index 13232ecbbdb..fa920df42c3 100644 --- a/lisp/cedet/semantic/tag.el +++ b/lisp/cedet/semantic/tag.el | |||
| @@ -52,14 +52,9 @@ | |||
| 52 | (require 'semantic/fw) | 52 | (require 'semantic/fw) |
| 53 | (require 'semantic/lex) | 53 | (require 'semantic/lex) |
| 54 | 54 | ||
| 55 | (declare-function semantic-ctxt-current-mode "semantic/ctxt") | ||
| 56 | (declare-function semantic-analyze-split-name "semantic/analyze/fcn") | 55 | (declare-function semantic-analyze-split-name "semantic/analyze/fcn") |
| 57 | (declare-function semantic-fetch-tags "semantic") | 56 | (declare-function semantic-fetch-tags "semantic") |
| 58 | (declare-function semantic-clear-toplevel-cache "semantic") | 57 | (declare-function semantic-clear-toplevel-cache "semantic") |
| 59 | (declare-function semantic-documentation-for-tag "semantic/doc") | ||
| 60 | (declare-function semantic-format-tag-prototype "semantic/format") | ||
| 61 | (declare-function semantic-format-tag-summarize "semantic/format") | ||
| 62 | (declare-function semantic-format-tag-name "semantic/format") | ||
| 63 | 58 | ||
| 64 | (defconst semantic-tag-version "2.0pre7" | 59 | (defconst semantic-tag-version "2.0pre7" |
| 65 | "Version string of semantic tags made with this code.") | 60 | "Version string of semantic tags made with this code.") |
| @@ -217,7 +212,6 @@ If TAG has a :mode property return it. | |||
| 217 | If point is inside TAG bounds, return the major mode active at point. | 212 | If point is inside TAG bounds, return the major mode active at point. |
| 218 | Return the major mode active at beginning of TAG otherwise. | 213 | Return the major mode active at beginning of TAG otherwise. |
| 219 | See also the function `semantic-ctxt-current-mode'." | 214 | See also the function `semantic-ctxt-current-mode'." |
| 220 | (require 'semantic/find) | ||
| 221 | (or tag (setq tag (semantic-current-tag))) | 215 | (or tag (setq tag (semantic-current-tag))) |
| 222 | (or (semantic--tag-get-property tag :mode) | 216 | (or (semantic--tag-get-property tag :mode) |
| 223 | (let ((buffer (semantic-tag-buffer tag)) | 217 | (let ((buffer (semantic-tag-buffer tag)) |
| @@ -229,7 +223,6 @@ See also the function `semantic-ctxt-current-mode'." | |||
| 229 | ;; beginning of TAG. | 223 | ;; beginning of TAG. |
| 230 | (or (and (>= (point) start) (< (point) end)) | 224 | (or (and (>= (point) start) (< (point) end)) |
| 231 | (goto-char start)) | 225 | (goto-char start)) |
| 232 | (require 'semantic/ctxt) | ||
| 233 | (semantic-ctxt-current-mode))))) | 226 | (semantic-ctxt-current-mode))))) |
| 234 | 227 | ||
| 235 | (defsubst semantic--tag-attributes-cdr (tag) | 228 | (defsubst semantic--tag-attributes-cdr (tag) |
| @@ -968,6 +961,7 @@ Return nil if TAG is not of class 'alias." | |||
| 968 | 961 | ||
| 969 | ;;; Language Specific Tag access via overload | 962 | ;;; Language Specific Tag access via overload |
| 970 | ;; | 963 | ;; |
| 964 | ;;;###autoload | ||
| 971 | (define-overloadable-function semantic-tag-components (tag) | 965 | (define-overloadable-function semantic-tag-components (tag) |
| 972 | "Return a list of components for TAG. | 966 | "Return a list of components for TAG. |
| 973 | A Component is a part of TAG which itself may be a TAG. | 967 | A Component is a part of TAG which itself may be a TAG. |
| @@ -1297,7 +1291,6 @@ Signal an error if not." | |||
| 1297 | "Return a copy of TAG as a foreign tag, or nil if it can't be done. | 1291 | "Return a copy of TAG as a foreign tag, or nil if it can't be done. |
| 1298 | TAG defaults to the tag at point in current buffer. | 1292 | TAG defaults to the tag at point in current buffer. |
| 1299 | See also `semantic-foreign-tag-p'." | 1293 | See also `semantic-foreign-tag-p'." |
| 1300 | (require 'semantic/doc) | ||
| 1301 | (or tag (setq tag (semantic-current-tag))) | 1294 | (or tag (setq tag (semantic-current-tag))) |
| 1302 | (when (semantic-tag-p tag) | 1295 | (when (semantic-tag-p tag) |
| 1303 | (let ((ftag (semantic-tag-copy tag nil t)) | 1296 | (let ((ftag (semantic-tag-copy tag nil t)) |
| @@ -1326,14 +1319,12 @@ The default behavior assumes the current buffer is a language file, | |||
| 1326 | and attempts to insert a prototype/function call." | 1319 | and attempts to insert a prototype/function call." |
| 1327 | ;; Long term goal: Have a mechanism for a tempo-like template insert | 1320 | ;; Long term goal: Have a mechanism for a tempo-like template insert |
| 1328 | ;; for the given tag. | 1321 | ;; for the given tag. |
| 1329 | (require 'semantic/format) | ||
| 1330 | (insert (semantic-format-tag-prototype foreign-tag))) | 1322 | (insert (semantic-format-tag-prototype foreign-tag))) |
| 1331 | 1323 | ||
| 1332 | (define-overloadable-function semantic-insert-foreign-tag (foreign-tag) | 1324 | (define-overloadable-function semantic-insert-foreign-tag (foreign-tag) |
| 1333 | "Insert FOREIGN-TAG into the current buffer. | 1325 | "Insert FOREIGN-TAG into the current buffer. |
| 1334 | Signal an error if FOREIGN-TAG is not a valid foreign tag. | 1326 | Signal an error if FOREIGN-TAG is not a valid foreign tag. |
| 1335 | This function is overridable with the symbol `insert-foreign-tag'." | 1327 | This function is overridable with the symbol `insert-foreign-tag'." |
| 1336 | (require 'semantic/format) | ||
| 1337 | (semantic-foreign-tag-check foreign-tag) | 1328 | (semantic-foreign-tag-check foreign-tag) |
| 1338 | (:override) | 1329 | (:override) |
| 1339 | (message (semantic-format-tag-summarize foreign-tag))) | 1330 | (message (semantic-format-tag-summarize foreign-tag))) |
| @@ -1342,13 +1333,11 @@ This function is overridable with the symbol `insert-foreign-tag'." | |||
| 1342 | (define-mode-local-override semantic-insert-foreign-tag | 1333 | (define-mode-local-override semantic-insert-foreign-tag |
| 1343 | log-edit-mode (foreign-tag) | 1334 | log-edit-mode (foreign-tag) |
| 1344 | "Insert foreign tags into log-edit mode." | 1335 | "Insert foreign tags into log-edit mode." |
| 1345 | (require 'semantic/format) | ||
| 1346 | (insert (concat "(" (semantic-format-tag-name foreign-tag) "): "))) | 1336 | (insert (concat "(" (semantic-format-tag-name foreign-tag) "): "))) |
| 1347 | 1337 | ||
| 1348 | (define-mode-local-override semantic-insert-foreign-tag | 1338 | (define-mode-local-override semantic-insert-foreign-tag |
| 1349 | change-log-mode (foreign-tag) | 1339 | change-log-mode (foreign-tag) |
| 1350 | "Insert foreign tags into log-edit mode." | 1340 | "Insert foreign tags into log-edit mode." |
| 1351 | (require 'semantic/format) | ||
| 1352 | (insert (concat "(" (semantic-format-tag-name foreign-tag) "): "))) | 1341 | (insert (concat "(" (semantic-format-tag-name foreign-tag) "): "))) |
| 1353 | 1342 | ||
| 1354 | 1343 | ||
| @@ -1576,4 +1565,9 @@ and `semantic-tag-type-interfaces' instead") | |||
| 1576 | 1565 | ||
| 1577 | (provide 'semantic/tag) | 1566 | (provide 'semantic/tag) |
| 1578 | 1567 | ||
| 1568 | ;; Local variables: | ||
| 1569 | ;; generated-autoload-file: "loaddefs.el" | ||
| 1570 | ;; generated-autoload-feature: semantic/loaddefs | ||
| 1571 | ;; End: | ||
| 1572 | |||
| 1579 | ;;; semantic-tag.el ends here | 1573 | ;;; semantic-tag.el ends here |
diff --git a/lisp/cedet/semantic/texi.el b/lisp/cedet/semantic/texi.el index 798c02f3f18..2248e4ee9fa 100644 --- a/lisp/cedet/semantic/texi.el +++ b/lisp/cedet/semantic/texi.el | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | ;;; texi.el --- Semantic details for Texinfo files | 1 | ;;; semantic/texi.el --- Semantic details for Texinfo files |
| 2 | 2 | ||
| 3 | ;;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009 | 3 | ;;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009 |
| 4 | ;;; Free Software Foundation, Inc. | 4 | ;;; Free Software Foundation, Inc. |
| @@ -35,11 +35,14 @@ | |||
| 35 | (require 'semantic/db) | 35 | (require 'semantic/db) |
| 36 | (require 'semantic/db-find) | 36 | (require 'semantic/db-find) |
| 37 | (require 'semantic/ctxt) | 37 | (require 'semantic/ctxt) |
| 38 | (require 'semantic/find) | ||
| 38 | ;; (require 'semantic/imenu) | 39 | ;; (require 'semantic/imenu) |
| 39 | (require 'semantic/doc) | 40 | (require 'semantic/doc) |
| 40 | ;; (require 'senator) | 41 | ;; (require 'senator) |
| 41 | ) | 42 | ) |
| 42 | 43 | ||
| 44 | (declare-function lookup-words "ispell") | ||
| 45 | |||
| 43 | (defvar semantic-texi-super-regex | 46 | (defvar semantic-texi-super-regex |
| 44 | "^@\\(top\\|chapter\\|\\(sub\\)*section\\|unnumbered\\(\\(sub\\)*sec\\)?\\|\ | 47 | "^@\\(top\\|chapter\\|\\(sub\\)*section\\|unnumbered\\(\\(sub\\)*sec\\)?\\|\ |
| 45 | \\(chap\\|\\(sub\\)+\\|major\\)?heading\\|appendix\\(\\(sub\\)*sec\\)?\\|\ | 48 | \\(chap\\|\\(sub\\)+\\|major\\)?heading\\|appendix\\(\\(sub\\)*sec\\)?\\|\ |
| @@ -379,7 +382,7 @@ Optional argument POINT is where to look for the environment." | |||
| 379 | (prefixclass (semantic-ctxt-current-class-list)) | 382 | (prefixclass (semantic-ctxt-current-class-list)) |
| 380 | ) | 383 | ) |
| 381 | (when prefix | 384 | (when prefix |
| 382 | (require 'semantic-analyze) | 385 | (require 'semantic/analyze) |
| 383 | (semantic-analyze-context | 386 | (semantic-analyze-context |
| 384 | "Context-for-texinfo" | 387 | "Context-for-texinfo" |
| 385 | :buffer (current-buffer) | 388 | :buffer (current-buffer) |
| @@ -487,7 +490,7 @@ that start with that symbol." | |||
| 487 | ;; When EDE is active, ask it. | 490 | ;; When EDE is active, ask it. |
| 488 | (ede-documentation-files) | 491 | (ede-documentation-files) |
| 489 | ) | 492 | ) |
| 490 | ((and (featurep 'semanticdb) (semanticdb-minor-mode-p)) | 493 | ((and (featurep 'semantic/db) (semanticdb-minor-mode-p)) |
| 491 | ;; See what texinfo files we have loaded in the database | 494 | ;; See what texinfo files we have loaded in the database |
| 492 | (let ((tabs (semanticdb-get-database-tables | 495 | (let ((tabs (semanticdb-get-database-tables |
| 493 | semanticdb-current-database)) | 496 | semanticdb-current-database)) |
| @@ -528,7 +531,7 @@ Note: TYPE not yet implemented." | |||
| 528 | The current buffer must be a texinfo file containing TAG. | 531 | The current buffer must be a texinfo file containing TAG. |
| 529 | If TAG is nil, determine a tag based on the current position." | 532 | If TAG is nil, determine a tag based on the current position." |
| 530 | (interactive) | 533 | (interactive) |
| 531 | (unless (or (featurep 'semanticdb) (semanticdb-minor-mode-p)) | 534 | (unless (or (featurep 'semantic/db) (semanticdb-minor-mode-p)) |
| 532 | (error "Texinfo updating only works when `semanticdb' is being used")) | 535 | (error "Texinfo updating only works when `semanticdb' is being used")) |
| 533 | (semantic-fetch-tags) | 536 | (semantic-fetch-tags) |
| 534 | (unless tag | 537 | (unless tag |
| @@ -645,7 +648,7 @@ manual, and update that." | |||
| 645 | "Jump to the source for the definition in the texinfo file TAG. | 648 | "Jump to the source for the definition in the texinfo file TAG. |
| 646 | If TAG is nil, it is derived from the deffn under POINT." | 649 | If TAG is nil, it is derived from the deffn under POINT." |
| 647 | (interactive) | 650 | (interactive) |
| 648 | (unless (or (featurep 'semanticdb) (semanticdb-minor-mode-p)) | 651 | (unless (or (featurep 'semantic/db) (semanticdb-minor-mode-p)) |
| 649 | (error "Texinfo updating only works when `semanticdb' is being used")) | 652 | (error "Texinfo updating only works when `semanticdb' is being used")) |
| 650 | (semantic-fetch-tags) | 653 | (semantic-fetch-tags) |
| 651 | (unless tag | 654 | (unless tag |
| @@ -675,4 +678,4 @@ If TAG is nil, it is derived from the deffn under POINT." | |||
| 675 | 678 | ||
| 676 | (provide 'semantic/texi) | 679 | (provide 'semantic/texi) |
| 677 | 680 | ||
| 678 | ;;; semantic-texi.el ends here | 681 | ;;; semantic/texi.el ends here |
diff --git a/lisp/cedet/semantic/util.el b/lisp/cedet/semantic/util.el index 5a6755f3e0d..37bb5629335 100644 --- a/lisp/cedet/semantic/util.el +++ b/lisp/cedet/semantic/util.el | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | ;;; util.el --- Utilities for use with semantic tag tables | 1 | ;;; semantic/util.el --- Utilities for use with semantic tag tables |
| 2 | 2 | ||
| 3 | ;;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, | 3 | ;;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2007, |
| 4 | ;;; 2008, 2009 Free Software Foundation, Inc. | 4 | ;;; 2008, 2009 Free Software Foundation, Inc. |
| @@ -434,4 +434,4 @@ NOTFIRST indicates that this was not the first call in the recursive use." | |||
| 434 | ;; | 434 | ;; |
| 435 | (require 'semantic/util-modes) | 435 | (require 'semantic/util-modes) |
| 436 | 436 | ||
| 437 | ;;; semantic-util.el ends here | 437 | ;;; semantic/util.el ends here |