Function: meson-completion-at-point-function
meson-completion-at-point-function is a natively compiled function
defined in meson-mode.el.
Signature
(meson-completion-at-point-function)
Documentation
Return possible completion candidates.
Source Code
;; Defined in /nix/store/57kn62wrv0z1jads9j9blmagdm8rh132-emacs-packages-deps/share/emacs/site-lisp/elpa/meson-mode-20240601.1647/meson-mode.el
;;; Completion
(defun meson-completion-at-point-function ()
"Return possible completion candidates."
(save-excursion
(let* ((end (progn (skip-syntax-forward "w_")
(point)))
(start (progn (skip-syntax-backward "w_")
(point)))
(ppss (syntax-ppss)))
(cond
((or (nth 3 ppss) ; inside string
(nth 4 ppss)) ; inside comment
nil) ; nothing to complete
;; kwargs
((and (> (nth 0 ppss) 0) ; inside parentheses
(eq (char-after (nth 1 ppss)) ?\()) ; rounded parentheses
(goto-char (nth 1 ppss))
(let ((kwargs (cl-some (lambda (x)
(when (looking-back (concat (car x) (rx (zero-or-more (any " " "\t"))))
(line-beginning-position))
(cdr x)))
meson-kwargs)))
;; complete mathing kwargs as well as built-in
;; variables/functions
(list start end (append kwargs meson-builtin-vars
(mapcar 'car meson-builtin-functions)))))
;; methods
((eq (char-before) ?.)
(let ((methods (cl-some
(lambda (x)
(when (looking-back (car x) (line-beginning-position))
(cdr x)))
meson-methods)))
(list start end methods)))
;; global things
(t
(list start end (append meson-keywords meson-builtin-vars
(mapcar 'car meson-builtin-functions))))))))