Function: web-mode-element-boundaries
web-mode-element-boundaries is a natively compiled function defined in
web-mode.el.
Signature
(web-mode-element-boundaries &optional POS)
Documentation
Return ((start-tag-beg . start-tag-end) . (end-tag-beg . end-tag-end)) First level car and cdr are the same with void elements. Pos should be in a tag.
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-element-boundaries (&optional pos)
"Return ((start-tag-beg . start-tag-end) . (end-tag-beg . end-tag-end))
First level car and cdr are the same with void elements.
Pos should be in a tag."
(unless pos (setq pos (point)))
(let (start-tag-beg start-tag-end end-tag-beg end-tag-end)
(cond
((eq (get-text-property pos 'tag-type) 'start)
(setq start-tag-beg (web-mode-tag-beginning-position pos)
start-tag-end (web-mode-tag-end-position pos))
(when (setq pos (web-mode-tag-match-position pos))
(setq end-tag-beg pos
end-tag-end (web-mode-tag-end-position pos)))
)
((eq (get-text-property pos 'tag-type) 'end)
(setq end-tag-beg (web-mode-tag-beginning-position pos)
end-tag-end (web-mode-tag-end-position pos))
(when (setq pos (web-mode-tag-match-position pos))
(setq start-tag-beg pos
start-tag-end (web-mode-tag-end-position pos)))
)
((eq (get-text-property pos 'tag-type) 'void)
(setq start-tag-beg (web-mode-tag-beginning-position pos)
start-tag-end (web-mode-tag-end-position pos))
(setq end-tag-beg start-tag-beg
end-tag-end start-tag-end)
)
) ;cond
(if (and start-tag-beg start-tag-end end-tag-beg end-tag-end)
(cons (cons start-tag-beg start-tag-end) (cons end-tag-beg end-tag-end))
nil)
))