(and acc (nreverse cl-res)))))
;;;###autoload
-(defun cl-map (cl-type cl-func cl-seq &rest cl-rest)
+(defsubst cl-map (cl-type cl-func cl-seq &rest cl-rest)
"Map a FUNCTION across one or more SEQUENCEs, returning a sequence.
TYPE is the sequence type to return.
\n(fn TYPE FUNCTION SEQUENCE...)"
(null cl-seq)))
;;;###autoload
-(defun cl-notany (cl-pred cl-seq &rest cl-rest)
+(defsubst cl-notany (cl-pred cl-seq &rest cl-rest)
"Return true if PREDICATE is false of every element of SEQ or SEQs.
\n(fn PREDICATE SEQ...)"
(declare (important-return-value t))
(not (apply #'cl-some cl-pred cl-seq cl-rest)))
;;;###autoload
-(defun cl-notevery (cl-pred cl-seq &rest cl-rest)
+(defsubst cl-notevery (cl-pred cl-seq &rest cl-rest)
"Return true if PREDICATE is false of some element of SEQ or SEQs.
\n(fn PREDICATE SEQ...)"
(declare (important-return-value t))
;;; List functions.
;;;###autoload
-(defun cl-revappend (x y)
+(defsubst cl-revappend (x y)
"Equivalent to (append (reverse X) Y)."
(declare (side-effect-free t))
(nconc (reverse x) y))
;;;###autoload
-(defun cl-nreconc (x y)
+(defsubst cl-nreconc (x y)
"Equivalent to (nconc (nreverse X) Y)."
(declare (important-return-value t))
(nconc (nreverse x) y))
cl-tree (cons a d))))
(t cl-tree)))
-(defun cl-acons (key value alist)
+(defsubst cl-acons (key value alist)
"Add KEY and VALUE to ALIST.
Return a new list with (cons KEY VALUE) as car and ALIST as cdr."
(declare (side-effect-free error-free))
`(cl-getf (symbol-plist ,sym) ,prop ,def)
`(get ,sym ,prop)))
-;;; Things that are inline.
-(cl-proclaim '(inline cl-acons cl-map cl-notany cl-notevery cl-revappend
- cl-nreconc))
-
;;; Types and assertions.
;;;###autoload