Function: c-forward-concept-fragment

c-forward-concept-fragment is a byte-compiled function defined in cc-engine.el.gz.

Signature

(c-forward-concept-fragment &optional LIMIT STOP-AT-END)

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/cc-engine.el.gz
(defun c-forward-concept-fragment (&optional limit stop-at-end)
  ;; Are we currently at the "concept" keyword in a concept construct?  If so
  ;; we return the position of the first constraint expression following the
  ;; "=" sign and move forward over the constraint.  Otherwise we return nil.
  ;; LIMIT is a forward search limit.
  (let ((here (point)))
    (if
	(and
	 (looking-at c-equals-nontype-decl-key) ; "concept"
	 (goto-char (match-end 0))
	 (progn (c-forward-syntactic-ws limit)
		(not (looking-at c-keywords-regexp)))
	 (looking-at c-identifier-key)
	 (goto-char (match-end 0))
	 (progn (c-forward-syntactic-ws limit)
		(looking-at c-operator-re))
	 (equal (match-string 0) "=")
	 (goto-char (match-end 0)))
	(prog1
	    (progn (c-forward-syntactic-ws limit)
		   (point))
	  (c-forward-constraint-clause limit stop-at-end))
      (goto-char here)
      nil)))