Function: antlr-end-of-body

antlr-end-of-body is an interactive and byte-compiled function defined in antlr-mode.el.gz.

Signature

(antlr-end-of-body &optional MSG)

Documentation

Move to position after the ; of the current rule.

A grammar class header is also considered as a rule. With optional prefix arg MSG, move to :.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/antlr-mode.el.gz
(defun antlr-end-of-body (&optional msg)
  "Move to position after the `;' of the current rule.
A grammar class header is also considered as a rule.  With optional
prefix arg MSG, move to `:'."
  (interactive "^")
  (let ((orig (point)))
    (if (antlr-outside-rule-p)
        (error "Outside an ANTLR rule"))
    (let ((bor (point)))              ; beginning of current rule
      (when (< (antlr-skip-file-prelude t) (point))
        ;; Yes, we are in the file prelude
        (goto-char orig)
        (error (or msg "The file prelude is without `;'")))
      (antlr-search-forward ";" antlr-skip-line-regexp)
      (when msg
        (when (< (point)
                 (progn (goto-char bor)
                        (or (antlr-search-forward antlr-rule-body-start-op)
                            (point-max))))
          (goto-char orig)
          (error msg))
        (antlr-c-forward-sws)))))