Function: web-mode-scan

web-mode-scan is a natively compiled function defined in web-mode.el.

Signature

(web-mode-scan &optional BEG 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-scan (&optional beg end)
  (when web-mode-trace
    (message "scan: beg(%S) end(%S) web-mode-change-beg(%S) web-mode-change-end(%S)"
             beg end web-mode-change-beg web-mode-change-end))
  (unless beg (setq beg web-mode-change-beg))
  (unless end (setq end web-mode-change-end))
  ;;(message "%S %S %S" web-mode-content-type (get-text-property beg 'part-side) (get-text-property end 'part-side))
  (when (and end (> end (point-max)))
    (setq end (point-max)))
  (setq web-mode-change-beg nil
        web-mode-change-end nil)
  (cond
    ((or (null beg) (null end))
     nil)
    ((and (member web-mode-engine '("php" "asp"))
          (get-text-property beg 'block-side)
          (get-text-property end 'block-side)
          (> beg (point-min))
          (not (eq (get-text-property (1- beg) 'block-token) 'delimiter-beg))
          (not (eq (get-text-property end 'block-token) 'delimiter-end)))
     ;;(message "invalidate block (%S > %S)" beg end)
     (web-mode-invalidate-block-region beg end))
    ((and (or (member web-mode-content-type
                      '("css" "javascript" "json" "jsx" "sass" "stylus" "typescript"))
              (and (get-text-property beg 'part-side)
                   (get-text-property end 'part-side)
                   (> beg (point-min))
                   (get-text-property (1- beg) 'part-side))
              ))
     ;;(message "invalidate part (%S > %S)" beg end)
     (web-mode-invalidate-part-region beg end))
    (t
     ;;(message "invalidate default (%S > %S)" beg end)
     (web-mode-invalidate-region beg end))
    ) ;cond
  )