Function: blink-matching-check-mismatch
blink-matching-check-mismatch is a byte-compiled function defined in
simple.el.gz.
Signature
(blink-matching-check-mismatch START END)
Documentation
Return whether or not START...END are matching parens.
END is the current point and START is the blink position. START might be nil if no matching starter was found. Returns non-nil if we find there is a mismatch.
Source Code
;; Defined in /usr/src/emacs/lisp/simple.el.gz
(defun blink-matching-check-mismatch (start end)
"Return whether or not START...END are matching parens.
END is the current point and START is the blink position.
START might be nil if no matching starter was found.
Returns non-nil if we find there is a mismatch."
(let* ((end-syntax (syntax-after (1- end)))
(matching-paren (and (consp end-syntax)
(eq (syntax-class end-syntax) 5)
(cdr end-syntax))))
;; For self-matched chars like " and $, we can't know when they're
;; mismatched or unmatched, so we can do it only for parens.
(when matching-paren
(not (and start
(or
(eq (char-after start) matching-paren)
;; The cdr might hold a new paren-class info rather than
;; a matching-char info, in which case the two CDRs
;; should match.
(eq matching-paren (cdr-safe (syntax-after start)))))))))