Function: web-mode-invalidate-part-region

web-mode-invalidate-part-region is a natively compiled function defined in web-mode.el.

Signature

(web-mode-invalidate-part-region POS-BEG POS-END)

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-invalidate-part-region (pos-beg pos-end)
  (save-excursion
    (let (beg end part-beg part-end language)
      (if (member web-mode-content-type web-mode-part-content-types)
          (setq language web-mode-content-type)
          (setq language (symbol-name (get-text-property pos-beg 'part-side))))
      (setq part-beg (web-mode-part-beginning-position pos-beg)
            part-end (web-mode-part-end-position pos-beg))
      ;;(message "language(%S) pos-beg(%S) pos-end(%S) part-beg(%S) part-end(%S)"
      ;;         language pos-beg pos-end part-beg part-end)
      (goto-char pos-beg)
      (cond
        ((not (and part-beg part-end
                   (>= pos-beg part-beg)
                   (<= pos-end part-end)
                   (> part-end part-beg)))
         (web-mode-invalidate-region pos-beg pos-end))
        ((member language '("javascript" "json" "jsx" "typescript"))
         (if (web-mode-javascript-rsb "[;{}(][ ]*\n" part-beg)
             (setq beg (match-end 0))
             (setq beg part-beg))
         (goto-char pos-end)
         (if (web-mode-javascript-rsf "[;{})][ ]*\n" part-end)
             (setq end (match-end 0))
             (setq end part-end))
         (web-mode-scan-region beg end language))
        ((member language '("css" "sass"))
         (let (rule1 rule2)
           (setq rule1 (web-mode-css-rule-current pos-beg))
           (setq rule2 rule1)
           (when (> pos-end (cdr rule1))
             (setq rule2 (web-mode-css-rule-current pos-end)))
           (setq beg (car rule1)
                 end (cdr rule2))
           )
         (web-mode-scan-region beg end language))
        (t
         (setq beg part-beg
               end part-end)
         (web-mode-scan-region beg end language))
        ) ;cond
      )))