Function: web-mode-closing-paren-position
web-mode-closing-paren-position is a natively compiled function
defined in web-mode.el.
Signature
(web-mode-closing-paren-position &optional POS LIMIT)
Source Code
;; Defined in /nix/store/2qgnz1rp30nzfz6w0apx4kdm14if1bbs-emacs-packages-deps/share/emacs/site-lisp/elpa/web-mode-20260831.219/web-mode.el
(defun web-mode-closing-paren-position (&optional pos limit)
(save-excursion
(unless pos (setq pos (point)))
(unless limit (setq limit nil))
(goto-char pos)
(let* ((n 0)
(block-side (and (get-text-property pos 'block-side)
(not (string= web-mode-engine "razor"))))
(paren (char-after))
(pairs '((?\( . "[)(]")
(?\[ . "[\]\[]")
(?\{ . "[}{]")
(?\< . "[><]")))
(regexp (cdr (assoc paren pairs)))
(continue (not (null regexp))))
(while (and continue (re-search-forward regexp limit t))
(cond
((or (web-mode-is-comment-or-string (1- (point)))
(and block-side (not (get-text-property (point) 'block-side))))
;;(message "pt=%S" (point))
)
((eq (char-before) paren)
(setq n (1+ n)))
(t
(setq n (1- n))
(setq continue (not (= n 0)))
)
) ;cond
) ;while
(if (= n 0) (1- (point)) nil)
)))