Function: c-sc-scan-lists-no-category+1+1

c-sc-scan-lists-no-category+1+1 is a macro defined in cc-defs.el.gz.

Signature

(c-sc-scan-lists-no-category+1+1 FROM)

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/cc-defs.el.gz
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; The following macros are to be used only in `c-parse-state' and its
;; subroutines.  Their main purpose is to simplify the handling of C++/Java
;; template delimiters and CPP macros.  In GNU Emacs, this is done slickly by
;; the judicious use of 'category properties.  These don't exist in XEmacs.
;;
;; Note: in the following macros, there is no special handling for parentheses
;; inside CPP constructs.  That is because CPPs are always syntactically
;; balanced, thanks to `c-neutralize-CPP-line' in cc-mode.el.
(defmacro c-sc-scan-lists-no-category+1+1 (from)
  ;; Do a (scan-lists FROM 1 1).  Any finishing position which either (i) is
  ;; determined by and angle bracket; or (ii) is inside a macro whose start
  ;; isn't POINT-MACRO-START doesn't count as a finishing position.
  (declare (debug t))
  `(let ((pos (scan-lists ,from 1 1)))
     (while (eq (char-before pos) ?>)
       (setq pos (scan-lists pos 1 1)))
     pos))