Function: web-mode-css-rule-current
web-mode-css-rule-current is a natively compiled function defined in
web-mode.el.
Signature
(web-mode-css-rule-current &optional POS PART-BEG PART-END)
Documentation
Current CSS rule boundaries.
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-css-rule-current (&optional pos part-beg part-end)
"Current CSS rule boundaries."
(unless pos (setq pos (point)))
(unless part-beg (setq part-beg (web-mode-part-beginning-position pos)))
(unless part-end (setq part-end (web-mode-part-end-position pos)))
(save-excursion
(let (beg end)
(goto-char pos)
(if (not (web-mode-part-sb "{" part-beg))
(progn
(setq beg part-beg)
(if (web-mode-part-sf ";" part-end)
(setq end (1+ (point)))
(setq end part-end))
) ;progn
(setq beg (point))
(setq end (web-mode-closing-paren-position beg part-end))
(if end
(setq end (1+ end))
(setq end (line-end-position)))
;; (message "%S >>beg%S >>end%S" pos beg end)
(if (> pos end)
;;selectors
(progn
(goto-char pos)
(if (web-mode-part-rsb "[};]" part-beg)
(setq beg (1+ (point)))
(setq beg part-beg)
) ;if
(goto-char pos)
(if (web-mode-part-rsf "[{;]" part-end)
(cond
((eq (char-before) ?\;)
(setq end (point))
)
(t
(setq end (web-mode-closing-paren-position (1- (point)) part-end))
(if end
(setq end (1+ end))
(setq end part-end))
)
) ;cond
(setq end part-end)
)
) ;progn selectors
;; declaration
(goto-char beg)
(if (web-mode-part-rsb "[}{;]" part-beg)
(setq beg (1+ (point)))
(setq beg part-beg)
) ;if
) ;if > pos end
)
;; (message "beg(%S) end(%S)" beg end)
(when (eq (char-after beg) ?\n)
(setq beg (1+ beg)))
(cons beg end)
)))