%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/obsolete/ |
Current File : //usr/local/share/emacs/27.2/lisp/obsolete/cl.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\300\303!\207" [require cl-lib macroexp gv] 2) #@47 Stop unloading of the Common Lisp extensions. (defalias 'cl-unload-function #[0 "\300\301!\210\302\207" [message "Cannot unload the feature `cl'" t] 2 (#$ . 493)]) (byte-code "\300\211\203 \211@\301\302\303\304\"!\"\210A\266\202\202 \210\305\211\203A \211@\211:\203. \211A@\262\2024 \302\303\304\"!\306\"\266A\266\202\202 \207" [(float-negative-epsilon float-epsilon least-negative-normalized-float least-positive-normalized-float least-negative-float least-positive-float most-negative-float most-positive-float) defvaralias intern format "cl-%s" ((get* . cl-get) (random* . cl-random) (rem* . cl-rem) (mod* . cl-mod) (round* . cl-round) (truncate* . cl-truncate) (ceiling* . cl-ceiling) (floor* . cl-floor) (rassoc* . cl-rassoc) (assoc* . cl-assoc) (member* . cl-member) (delete* . cl-delete) (remove* . cl-remove) (defsubst* . cl-defsubst) (sort* . cl-sort) (function* . cl-function) (defmacro* . cl-defmacro) (defun* . cl-defun) (mapcar* . cl-mapcar) remprop getf tailp list-length nreconc revappend concatenate subseq random-state-p make-random-state signum isqrt lcm gcd notevery notany every some mapcon mapl maplist map equalp coerce tree-equal nsublis sublis nsubst-if-not nsubst-if nsubst subst-if-not subst-if subsetp nset-exclusive-or set-exclusive-or nset-difference set-difference nintersection intersection nunion union rassoc-if-not rassoc-if assoc-if-not assoc-if member-if-not member-if merge stable-sort search mismatch count-if-not count-if count position-if-not position-if position find-if-not find-if find nsubstitute-if-not nsubstitute-if nsubstitute substitute-if-not substitute-if substitute delete-duplicates remove-duplicates delete-if-not delete-if remove-if-not remove-if replace fill reduce compiler-macroexpand define-compiler-macro assert check-type typep deftype defstruct callf2 callf letf* letf rotatef shiftf remf psetf (define-setf-method . define-setf-expander) the locally multiple-value-setq multiple-value-bind symbol-macrolet macrolet progv psetq do-all-symbols do-symbols do* do loop return-from return block etypecase typecase ecase case load-time-value eval-when destructuring-bind gentemp pairlis acons subst adjoin copy-list ldiff list* tenth ninth eighth seventh sixth fifth fourth third endp rest second first svref copy-seq evenp oddp minusp plusp floatp-safe declaim proclaim nth-value multiple-value-call multiple-value-apply multiple-value-list values-list values pushnew decf incf) defalias] 8) #@23 (fn FUN &rest ARGS) (defalias 'cl--wrap-in-nil-block #[385 "\300\301\302\"E\207" [cl-block nil apply] 7 (#$ . 2962)]) (byte-code "\300\301\302\303#\210\300\304\302\303#\207" [advice-add dolist :around cl--wrap-in-nil-block dotimes] 4) #@20 (fn &rest SPECS) (defalias 'cl--pass-args-to-cl-declare #[128 "\300\301B!\207" [macroexpand cl-declare] 4 (#$ . 3207)]) (advice-add 'declare :after 'cl--pass-args-to-cl-declare) (defvar cl-closure-vars nil) (defvar cl--function-convert-cache nil) #@239 Special macro-expander for special cases of (function F). The two cases that are handled are: - closure-conversion of lambda expressions for `lexical-let'. - renaming of F when it's a function defined via `cl-labels' or `labels'. (fn F) (defalias 'cl--function-convert #[257 "\302\303!\210\211@=\203 A\207\211\242\304=\203\234 \305\306AA\" \203\213 \307 \"\203\213 \305\310 \"\311 \"\312@;\204= @\242\313=\203L \314\211A\262\242DB\262\202/ \315\316 !@\317\320#\210\321\322\323\324\325\237\"\321\326\321\327\330\304\324A@\"\325\"BBDE\305\331 \"\332\244BBBC\"BBB\266\203\202\233 \304A@BB\330DB\262\207\333!\207" [cl--function-convert-cache cl-closure-vars require cl-macs lambda mapcar #[257 "\301\"\207" [macroexpand-all-environment macroexpand-all] 4 "\n\n(fn F)"] cl--expr-contains-any cl-gensym cl-pairlis nil interactive quote put last used t list 'lambda '(&rest --cl-rest--) append cl-sublis 'apply 'function function #[257 "\300\301E\207" [list 'quote] 4 "\n\n(fn X)"] ('--cl-rest--) cl--labels-convert] 20 (#$ . 3464)]) #@159 Like `let', but lexically scoped. The main visible difference is that lambdas inside BODY will create lexical closures as in Common Lisp. (fn BINDINGS BODY) (defalias 'lexical-let '(macro . #[385 "\302\303\"\304\305\302\306\"BB\307\310B B\"\311!@\312N\204: \313\314\302\315\"\316\302\317\"\320\302\321 \"\"EC\"B\202K \316\302\322\"\323\324\314\302\325\"\"BF)\207" [cl-closure-vars macroexpand-all-environment mapcar #[257 "\211:\204 \211C\262\301\302\303@\"!B\211@\304L\210\211@A@@E\207" [cl-closure-vars make-symbol format "--cl-%s--" [bad-lexical-ref]] 6 "\n\n(fn X)"] macroexpand-all cl-symbol-macrolet #[257 "\211@\300\3018DD\207" [symbol-value 2] 5 "\n\n(fn X)"] function cl--function-convert last used progn append #[257 "\300\3018D\207" [defvar 2] 4 "\n\n(fn X)"] let #[257 "\3008A@D\207" [2] 3 "\n\n(fn X)"] cl-sublis #[257 "\3008\301\3008DB\207" [2 quote] 5 "\n\n(fn X)"] #[257 "\3008\301\302\303@\"DD\207" [2 make-symbol format "--%s--"] 6 "\n\n(fn X)"] setf apply #[257 "\300\3018DA@D\207" [symbol-value 2] 4 "\n\n(fn X)"]] 13 (#$ . 4534)])) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put lexical-let lisp-indent-function 1 put edebug-form-spec let] 5) #@264 Like `let*', but lexically scoped. The main visible difference is that lambdas inside BODY, and in successive bindings within BINDINGS, will create lexical closures as in Common Lisp. This is similar to the behavior of `let*' in Common Lisp. (fn BINDINGS BODY) (defalias 'lexical-let* '(macro . #[385 "\204 \300B\207\301!\262\203\"