Function: cperl-next-interpolated-REx
cperl-next-interpolated-REx is an interactive and byte-compiled
function defined in cperl-mode.el.gz.
Signature
(cperl-next-interpolated-REx &optional SKIP BEG LIMIT)
Documentation
Move point to next REx which has interpolated parts.
SKIP is a list of possible types to skip, BEG and LIMIT are the starting point and the limit of search (default to point and end of buffer).
SKIP may be a number, then it behaves as list of numbers up to SKIP; this semantic may be used as a numeric argument.
Types are 0 for / $rex /o (interpolated once), 1 for /$rex/ (if $rex is a result of qr//, this is not a performance hit), t for the rest.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/cperl-mode.el.gz
(defun cperl-next-interpolated-REx (&optional skip beg limit)
"Move point to next REx which has interpolated parts.
SKIP is a list of possible types to skip, BEG and LIMIT are the starting
point and the limit of search (default to point and end of buffer).
SKIP may be a number, then it behaves as list of numbers up to SKIP; this
semantic may be used as a numeric argument.
Types are 0 for / $rex /o (interpolated once), 1 for /$rex/ (if $rex is
a result of qr//, this is not a performance hit), t for the rest."
(interactive "P")
(if (numberp skip) (setq skip (list 0 skip)))
(or beg (setq beg (point)))
(or limit (setq limit (point-max))) ; needed for n-s-p-c
(let (pp)
(and (eq (get-text-property beg 'syntax-type) 'string)
(setq beg (next-single-property-change beg 'syntax-type nil limit)))
(cperl-map-pods-heres
(lambda (s _e _p)
(if (memq (get-text-property s 'REx-interpolated) skip)
t
(setq pp s)
nil)) ; nil stops
'REx-interpolated beg limit)
(if pp (goto-char pp)
(message "No more interpolated REx"))))