Function: semantic-complete-read-tag-analyzer

semantic-complete-read-tag-analyzer is a byte-compiled function defined in complete.el.gz.

Signature

(semantic-complete-read-tag-analyzer PROMPT &optional CONTEXT HISTORY)

Documentation

Ask for a tag by name based on the current context.

The function semantic-analyze-current-context is used to calculate the context. semantic-analyze-possible-completions is used to generate the list of possible completions. PROMPT is the first part of the prompt. Additional prompt is added based on the contexts full prefix. CONTEXT is the semantic analyzer context to start with. HISTORY is a symbol representing a variable to store the history in. usually a default-tag and initial-input are available for completion prompts. these are calculated from the CONTEXT variable passed in.

Source Code

;; Defined in /usr/src/emacs/lisp/cedet/semantic/complete.el.gz
(defun semantic-complete-read-tag-analyzer (prompt &optional
						   context
						   history)
  "Ask for a tag by name based on the current context.
The function `semantic-analyze-current-context' is used to
calculate the context.  `semantic-analyze-possible-completions' is used
to generate the list of possible completions.
PROMPT is the first part of the prompt.  Additional prompt
is added based on the contexts full prefix.
CONTEXT is the semantic analyzer context to start with.
HISTORY is a symbol representing a variable to store the history in.
usually a default-tag and initial-input are available for completion
prompts.  these are calculated from the CONTEXT variable passed in."
  (if (not context) (setq context (semantic-analyze-current-context (point))))
  (let* ((syms (semantic-ctxt-current-symbol (point)))
	 (inp (car (reverse syms))))
    (setq syms (nreverse (cdr (nreverse syms))))
    (semantic-complete-read-tag-engine
     (semantic-collector-analyze-completions
      :buffer (oref context buffer)
      :context context)
     (semantic-displayer-traditional-with-focus-highlight)
     (with-current-buffer (oref context buffer)
       (goto-char (cdr (oref context bounds)))
       (concat prompt (mapconcat #'identity syms ".")
	       (if syms "." "")))
     nil
     inp
     history)))