Function: c-ts-mode--fontify-declarator
c-ts-mode--fontify-declarator is a byte-compiled function defined in
c-ts-mode.el.gz.
Signature
(c-ts-mode--fontify-declarator NODE OVERRIDE START END &rest ARGS)
Documentation
Fontify a declarator (whatever under the "declarator" field).
For NODE, OVERRIDE, START, END, and ARGS, see
treesit-font-lock-rules.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/c-ts-mode.el.gz
(defun c-ts-mode--fontify-declarator (node override start end &rest _args)
"Fontify a declarator (whatever under the \"declarator\" field).
For NODE, OVERRIDE, START, END, and ARGS, see
`treesit-font-lock-rules'."
(let* ((identifier (c-ts-mode--declarator-identifier node))
(qualified-root
(treesit-parent-while (treesit-node-parent identifier)
(lambda (node)
(equal (treesit-node-type node)
"qualified_identifier"))))
(face (pcase (treesit-node-type (treesit-node-parent
(or qualified-root
identifier)))
("field_declaration" 'font-lock-property-name-face)
("function_declarator" 'font-lock-function-name-face)
(_ 'font-lock-variable-name-face))))
(when identifier
(treesit-fontify-with-override
(treesit-node-start identifier) (treesit-node-end identifier)
face override start end))))