Function: c-laomib-fix-elt

c-laomib-fix-elt is a byte-compiled function defined in cc-engine.el.gz.

Signature

(c-laomib-fix-elt LWM ELT PAREN-STATE)

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/cc-engine.el.gz
(defun c-laomib-fix-elt (lwm elt paren-state)
  ;; Correct a c-laomib-cache entry ELT with respect to buffer changes, either
  ;; doing nothing, signaling it is to be deleted, or replacing its start
  ;; point with one lower in the buffer than LWM.  PAREN-STATE is the paren
  ;; state at LWM.  Return the corrected entry, or nil (if it needs deleting).
  ;; Note that corrections are made by `setcar'ing the original structure,
  ;; which thus remains intact.
  (cond
   ((or (not lwm) (> lwm (cadr elt)))
    elt)
   ((<= lwm (nth 2 elt))
    nil)
   (t
    ;; Search for the last brace in `paren-state' before (car `lim').  This
    ;; brace will become our new 2nd element of `elt'.
    (while
	;; Search one brace level per iteration.
	(and paren-state
	     (progn
	       ;; (setq cur-brace (c-laomib-next-BRACE paren-state))
	       (while
		   ;; Go past non-brace levels, one per iteration.
		   (and paren-state
			(not (eq (char-after
				  (c-state-cache-top-lparen paren-state))
				 ?{)))
		 (setq paren-state (cdr paren-state)))
	       (cadr paren-state))
	     (> (c-state-cache-top-lparen (cdr paren-state)) (car elt)))
      (setq paren-state (cdr paren-state)))
    (when (cadr paren-state)
      (setcar (cdr elt) (c-state-cache-top-lparen paren-state))
      elt))))