diff options
Diffstat (limited to 'lisp/cedet')
-rw-r--r-- | lisp/cedet/semantic.el | 61 | ||||
-rw-r--r-- | lisp/cedet/semantic/analyze.el | 52 |
2 files changed, 62 insertions, 51 deletions
diff --git a/lisp/cedet/semantic.el b/lisp/cedet/semantic.el index 3c844610e41..5e05d86d113 100644 --- a/lisp/cedet/semantic.el +++ b/lisp/cedet/semantic.el @@ -1168,57 +1168,6 @@ Semantic mode. ;; re-activated. (setq semantic-new-buffer-fcn-was-run nil))) -;;; Completion At Point functions -(defun semantic-analyze-completion-at-point-function () - "Return possible analysis completions at point. -The completions provided are via `semantic-analyze-possible-completions'. -This function can be used by `completion-at-point-functions'." - (when (semantic-active-p) - (let* ((ctxt (semantic-analyze-current-context)) - (possible (semantic-analyze-possible-completions ctxt))) - - ;; The return from this is either: - ;; nil - not applicable here. - ;; A list: (START END COLLECTION . PROPS) - (when possible - (list (car (oref ctxt bounds)) - (cdr (oref ctxt bounds)) - possible)) - ))) - -(defun semantic-analyze-notc-completion-at-point-function () - "Return possible analysis completions at point. -The completions provided are via `semantic-analyze-possible-completions', -but with the `no-tc' option passed in, which means constraints based -on what is being assigned to are ignored. -This function can be used by `completion-at-point-functions'." - (when (semantic-active-p) - (let* ((ctxt (semantic-analyze-current-context)) - (possible (semantic-analyze-possible-completions ctxt 'no-tc))) - - (when possible - (list (car (oref ctxt bounds)) - (cdr (oref ctxt bounds)) - possible)) - ))) - -(defun semantic-analyze-nolongprefix-completion-at-point-function () - "Return possible analysis completions at point. -The completions provided are via `semantic-analyze-possible-completions', -but with the `no-tc' and `no-longprefix' option passed in, which means -constraints resulting in a long multi-symbol dereference are ignored. -This function can be used by `completion-at-point-functions'." - (when (semantic-active-p) - (let* ((ctxt (semantic-analyze-current-context)) - (possible (semantic-analyze-possible-completions - ctxt 'no-tc 'no-longprefix))) - - (when possible - (list (car (oref ctxt bounds)) - (cdr (oref ctxt bounds)) - possible)) - ))) - ;;; Autoload some functions that are not in semantic/loaddefs (autoload 'global-semantic-idle-completions-mode "semantic/idle" @@ -1259,6 +1208,16 @@ Call `semantic-symref-hits-in-region' to identify local references." t nil) (autoload 'srecode-template-setup-parser "srecode/srecode-template" "Set up buffer for parsing SRecode template files." t nil) +(autoload 'semantic-analyze-completion-at-point-function "semantic/analyze" + "Return possible analysis completions at point.") + +(autoload 'semantic-analyze-notc-completion-at-point-function "semantic/analyze" + "Return possible analysis completions at point.") + +(autoload 'semantic-analyze-nolongprefix-completion-at-point-function + "semantic/analyze" + "Return possible analysis completions at point.") + (provide 'semantic) ;; Semantic-util is a part of the semantic API. Include it last diff --git a/lisp/cedet/semantic/analyze.el b/lisp/cedet/semantic/analyze.el index 8f1d92822e6..6851ad556a7 100644 --- a/lisp/cedet/semantic/analyze.el +++ b/lisp/cedet/semantic/analyze.el @@ -819,6 +819,58 @@ CONTEXT's content is described in `semantic-analyze-current-context'." (get-buffer-window "*Semantic Context Analysis*")) ) + +;;; Completion At Point functions +(defun semantic-analyze-completion-at-point-function () + "Return possible analysis completions at point. +The completions provided are via `semantic-analyze-possible-completions'. +This function can be used by `completion-at-point-functions'." + (when (semantic-active-p) + (let* ((ctxt (semantic-analyze-current-context)) + (possible (semantic-analyze-possible-completions ctxt))) + + ;; The return from this is either: + ;; nil - not applicable here. + ;; A list: (START END COLLECTION . PROPS) + (when possible + (list (car (oref ctxt bounds)) + (cdr (oref ctxt bounds)) + possible)) + ))) + +(defun semantic-analyze-notc-completion-at-point-function () + "Return possible analysis completions at point. +The completions provided are via `semantic-analyze-possible-completions', +but with the `no-tc' option passed in, which means constraints based +on what is being assigned to are ignored. +This function can be used by `completion-at-point-functions'." + (when (semantic-active-p) + (let* ((ctxt (semantic-analyze-current-context)) + (possible (semantic-analyze-possible-completions ctxt 'no-tc))) + + (when possible + (list (car (oref ctxt bounds)) + (cdr (oref ctxt bounds)) + possible)) + ))) + +(defun semantic-analyze-nolongprefix-completion-at-point-function () + "Return possible analysis completions at point. +The completions provided are via `semantic-analyze-possible-completions', +but with the `no-tc' and `no-longprefix' option passed in, which means +constraints resulting in a long multi-symbol dereference are ignored. +This function can be used by `completion-at-point-functions'." + (when (semantic-active-p) + (let* ((ctxt (semantic-analyze-current-context)) + (possible (semantic-analyze-possible-completions + ctxt 'no-tc 'no-longprefix))) + + (when possible + (list (car (oref ctxt bounds)) + (cdr (oref ctxt bounds)) + possible)) + ))) + (provide 'semantic/analyze) ;; Local variables: |