Function: icon-backward-to-start-of-if

icon-backward-to-start-of-if is a byte-compiled function defined in icon.el.gz.

Signature

(icon-backward-to-start-of-if &optional LIMIT)

Documentation

Move to the start of the last "unbalanced" if.

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/icon.el.gz
(defun icon-backward-to-start-of-if (&optional limit)
  "Move to the start of the last \"unbalanced\" if."
  (or limit (setq limit (save-excursion (beginning-of-icon-defun) (point))))
  (let ((if-level 1)
	(case-fold-search nil))
    (while (not (zerop if-level))
      (backward-sexp 1)
      (cond ((looking-at "else\\b")
	     (setq if-level (1+ if-level)))
	    ((looking-at "if\\b")
	     (setq if-level (1- if-level)))
	    ((< (point) limit)
	     (setq if-level 0)
	     (goto-char limit))))))