Function: haskell-lexeme-looking-at-qidsym
haskell-lexeme-looking-at-qidsym is a natively compiled function
defined in haskell-lexeme.el.
Signature
(haskell-lexeme-looking-at-qidsym)
Documentation
Non-nil when point is just in front of an optionally qualified identifier or symbol.
Using this function is more efficient than matching against the
regexp haskell-lexeme-qid-or-qsym.
Returns:
'qid - if matched a qualified id: 'Data.Map' or 'Map'
'qsym - if matched a qualified id: 'Monad.>>=' or '>>='
'qprefix - if matched only modid prefix: 'Data.'
After successful 'qid or 'qsym match (match-string 1) will return the unqualified part (if any).
Source Code
;; Defined in /nix/store/9lz2mhw95f9fqxr9mnq46k3f6qz3aq83-emacs-packages-deps/share/emacs/site-lisp/elpa/haskell-mode-20260904.1042/haskell-lexeme.el
(defun haskell-lexeme-looking-at-qidsym ()
"Non-nil when point is just in front of an optionally qualified
identifier or symbol.
Using this function is more efficient than matching against the
regexp `haskell-lexeme-qid-or-qsym'.
Returns:
\\='qid - if matched a qualified id: \\='Data.Map\\=' or \\='Map\\='
\\='qsym - if matched a qualified id: \\='Monad.>>=\\=' or \\='>>=\\='
\\='qprefix - if matched only modid prefix: \\='Data.\\='
After successful \\='qid or \\='qsym match (match-string 1) will return
the unqualified part (if any)."
(let ((begin (point))
(match-data-old (match-data t)))
(save-excursion
(while (looking-at (concat haskell-lexeme-modid "\\."))
(goto-char (match-end 0)))
(cond
((looking-at haskell-lexeme-id)
(let ((beg (match-beginning 0))
(end (match-end 0)))
;; check is MagicHash is present at the end of the token
(goto-char end)
(when (looking-at "#+")
(setq end (match-end 0)))
(set-match-data
(list begin end
beg end)))
'qid)
((looking-at haskell-lexeme-sym)
(set-match-data
(list begin (match-end 0)
(match-beginning 0) (match-end 0)))
'qsym)
((equal begin (point))
(set-match-data match-data-old)
nil)
(t
(set-match-data
(list begin (point)
nil nil))
'qprefix)))))