mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-27 00:57:50 +00:00
85a8a5bfcc
PR: ports/170961 Submitted by: Yasuhiro KIMURA <yasu@utahime.org>
283 lines
9.6 KiB
EmacsLisp
283 lines
9.6 KiB
EmacsLisp
Index: pym.el
|
|
===================================================================
|
|
--- pym.el (revision 2)
|
|
+++ pym.el (working copy)
|
|
@@ -63,15 +63,15 @@
|
|
See also the function `defun'."
|
|
(or (and (fboundp name)
|
|
(not (get name 'defun-maybe)))
|
|
- (` (or (fboundp (quote (, name)))
|
|
- (prog1
|
|
- (defun (, name) (,@ everything-else))
|
|
- ;; This `defun' will be compiled to `fset',
|
|
- ;; which does not update `load-history'.
|
|
- ;; We must update `current-load-list' explicitly.
|
|
- (setq current-load-list
|
|
- (cons (quote (, name)) current-load-list))
|
|
- (put (quote (, name)) 'defun-maybe t))))))
|
|
+ `(or (fboundp (quote ,name))
|
|
+ (prog1
|
|
+ (defun ,name ,@everything-else)
|
|
+ ;; This `defun' will be compiled to `fset',
|
|
+ ;; which does not update `load-history'.
|
|
+ ;; We must update `current-load-list' explicitly.
|
|
+ (setq current-load-list
|
|
+ (cons (quote ,name) current-load-list))
|
|
+ (put (quote ,name) 'defun-maybe t)))))
|
|
|
|
(put 'defmacro-maybe 'lisp-indent-function 'defun)
|
|
(defmacro defmacro-maybe (name &rest everything-else)
|
|
@@ -79,15 +79,15 @@
|
|
See also the function `defmacro'."
|
|
(or (and (fboundp name)
|
|
(not (get name 'defmacro-maybe)))
|
|
- (` (or (fboundp (quote (, name)))
|
|
- (prog1
|
|
- (defmacro (, name) (,@ everything-else))
|
|
- ;; This `defmacro' will be compiled to `fset',
|
|
- ;; which does not update `load-history'.
|
|
- ;; We must update `current-load-list' explicitly.
|
|
- (setq current-load-list
|
|
- (cons (quote (, name)) current-load-list))
|
|
- (put (quote (, name)) 'defmacro-maybe t))))))
|
|
+ `(or (fboundp (quote ,name))
|
|
+ (prog1
|
|
+ (defmacro ,name ,@everything-else)
|
|
+ ;; This `defmacro' will be compiled to `fset',
|
|
+ ;; which does not update `load-history'.
|
|
+ ;; We must update `current-load-list' explicitly.
|
|
+ (setq current-load-list
|
|
+ (cons (quote ,name) current-load-list))
|
|
+ (put (quote ,name) 'defmacro-maybe t)))))
|
|
|
|
(put 'defsubst-maybe 'lisp-indent-function 'defun)
|
|
(defmacro defsubst-maybe (name &rest everything-else)
|
|
@@ -95,15 +95,15 @@
|
|
See also the macro `defsubst'."
|
|
(or (and (fboundp name)
|
|
(not (get name 'defsubst-maybe)))
|
|
- (` (or (fboundp (quote (, name)))
|
|
- (prog1
|
|
- (defsubst (, name) (,@ everything-else))
|
|
- ;; This `defsubst' will be compiled to `fset',
|
|
- ;; which does not update `load-history'.
|
|
- ;; We must update `current-load-list' explicitly.
|
|
- (setq current-load-list
|
|
- (cons (quote (, name)) current-load-list))
|
|
- (put (quote (, name)) 'defsubst-maybe t))))))
|
|
+ `(or (fboundp (quote ,name))
|
|
+ (prog1
|
|
+ (defsubst ,name ,@everything-else)
|
|
+ ;; This `defsubst' will be compiled to `fset',
|
|
+ ;; which does not update `load-history'.
|
|
+ ;; We must update `current-load-list' explicitly.
|
|
+ (setq current-load-list
|
|
+ (cons (quote ,name) current-load-list))
|
|
+ (put (quote ,name) 'defsubst-maybe t)))))
|
|
|
|
(defmacro defalias-maybe (symbol definition)
|
|
"Define SYMBOL as an alias for DEFINITION if SYMBOL is not defined.
|
|
@@ -111,35 +111,35 @@
|
|
(setq symbol (eval symbol))
|
|
(or (and (fboundp symbol)
|
|
(not (get symbol 'defalias-maybe)))
|
|
- (` (or (fboundp (quote (, symbol)))
|
|
- (prog1
|
|
- (defalias (quote (, symbol)) (, definition))
|
|
- ;; `defalias' updates `load-history' internally.
|
|
- (put (quote (, symbol)) 'defalias-maybe t))))))
|
|
+ `(or (fboundp (quote ,symbol))
|
|
+ (prog1
|
|
+ (defalias (quote ,symbol) ,definition)
|
|
+ ;; `defalias' updates `load-history' internally.
|
|
+ (put (quote ,symbol) 'defalias-maybe t)))))
|
|
|
|
(defmacro defvar-maybe (name &rest everything-else)
|
|
"Define NAME as a variable if NAME is not defined.
|
|
See also the function `defvar'."
|
|
(or (and (boundp name)
|
|
(not (get name 'defvar-maybe)))
|
|
- (` (or (boundp (quote (, name)))
|
|
- (prog1
|
|
- (defvar (, name) (,@ everything-else))
|
|
- ;; byte-compiler will generate code to update
|
|
- ;; `load-history'.
|
|
- (put (quote (, name)) 'defvar-maybe t))))))
|
|
+ `(or (boundp (quote ,name))
|
|
+ (prog1
|
|
+ (defvar ,name ,@everything-else)
|
|
+ ;; byte-compiler will generate code to update
|
|
+ ;; `load-history'.
|
|
+ (put (quote ,name) 'defvar-maybe t)))))
|
|
|
|
(defmacro defconst-maybe (name &rest everything-else)
|
|
"Define NAME as a constant variable if NAME is not defined.
|
|
See also the function `defconst'."
|
|
(or (and (boundp name)
|
|
(not (get name 'defconst-maybe)))
|
|
- (` (or (boundp (quote (, name)))
|
|
- (prog1
|
|
- (defconst (, name) (,@ everything-else))
|
|
- ;; byte-compiler will generate code to update
|
|
- ;; `load-history'.
|
|
- (put (quote (, name)) 'defconst-maybe t))))))
|
|
+ `(or (boundp (quote ,name))
|
|
+ (prog1
|
|
+ (defconst ,name ,@everything-else)
|
|
+ ;; byte-compiler will generate code to update
|
|
+ ;; `load-history'.
|
|
+ (put (quote ,name) 'defconst-maybe t)))))
|
|
|
|
(defmacro defun-maybe-cond (name args &optional doc &rest clauses)
|
|
"Define NAME as a function if NAME is not defined.
|
|
@@ -152,26 +152,26 @@
|
|
doc nil))
|
|
(or (and (fboundp name)
|
|
(not (get name 'defun-maybe)))
|
|
- (` (or (fboundp (quote (, name)))
|
|
- (prog1
|
|
- (static-cond
|
|
- (,@ (mapcar
|
|
- (function
|
|
- (lambda (case)
|
|
- (list (car case)
|
|
- (if doc
|
|
- (` (defun (, name) (, args)
|
|
- (, doc)
|
|
- (,@ (cdr case))))
|
|
- (` (defun (, name) (, args)
|
|
- (,@ (cdr case))))))))
|
|
- clauses)))
|
|
- ;; This `defun' will be compiled to `fset',
|
|
- ;; which does not update `load-history'.
|
|
- ;; We must update `current-load-list' explicitly.
|
|
- (setq current-load-list
|
|
- (cons (quote (, name)) current-load-list))
|
|
- (put (quote (, name)) 'defun-maybe t))))))
|
|
+ `(or (fboundp (quote ,name))
|
|
+ (prog1
|
|
+ (static-cond
|
|
+ ,@(mapcar
|
|
+ (function
|
|
+ (lambda (case)
|
|
+ (list (car case)
|
|
+ (if doc
|
|
+ `(defun ,name ,args
|
|
+ ,doc
|
|
+ ,@(cdr case))
|
|
+ `(defun ,name ,args
|
|
+ ,@ (cdr case))))))
|
|
+ clauses))
|
|
+ ;; This `defun' will be compiled to `fset',
|
|
+ ;; which does not update `load-history'.
|
|
+ ;; We must update `current-load-list' explicitly.
|
|
+ (setq current-load-list
|
|
+ (cons (quote ,name) current-load-list))
|
|
+ (put (quote ,name) 'defun-maybe t)))))
|
|
|
|
(defmacro defmacro-maybe-cond (name args &optional doc &rest clauses)
|
|
"Define NAME as a macro if NAME is not defined.
|
|
@@ -184,26 +184,26 @@
|
|
doc nil))
|
|
(or (and (fboundp name)
|
|
(not (get name 'defmacro-maybe)))
|
|
- (` (or (fboundp (quote (, name)))
|
|
- (prog1
|
|
- (static-cond
|
|
- (,@ (mapcar
|
|
- (function
|
|
- (lambda (case)
|
|
- (list (car case)
|
|
- (if doc
|
|
- (` (defmacro (, name) (, args)
|
|
- (, doc)
|
|
- (,@ (cdr case))))
|
|
- (` (defmacro (, name) (, args)
|
|
- (,@ (cdr case))))))))
|
|
- clauses)))
|
|
- ;; This `defmacro' will be compiled to `fset',
|
|
- ;; which does not update `load-history'.
|
|
- ;; We must update `current-load-list' explicitly.
|
|
- (setq current-load-list
|
|
- (cons (quote (, name)) current-load-list))
|
|
- (put (quote (, name)) 'defmacro-maybe t))))))
|
|
+ `(or (fboundp (quote ,name))
|
|
+ (prog1
|
|
+ (static-cond
|
|
+ ,@(mapcar
|
|
+ (function
|
|
+ (lambda (case)
|
|
+ (list (car case)
|
|
+ (if doc
|
|
+ `(defmacro ,name ,args
|
|
+ ,doc
|
|
+ ,@(cdr case))
|
|
+ `(defmacro ,name ,args
|
|
+ @(cdr case))))))
|
|
+ clauses))
|
|
+ ;; This `defmacro' will be compiled to `fset',
|
|
+ ;; which does not update `load-history'.
|
|
+ ;; We must update `current-load-list' explicitly.
|
|
+ (setq current-load-list
|
|
+ (cons (quote ,name) current-load-list))
|
|
+ (put (quote ,name) 'defmacro-maybe t)))))
|
|
|
|
(defmacro defsubst-maybe-cond (name args &optional doc &rest clauses)
|
|
"Define NAME as an inline function if NAME is not defined.
|
|
@@ -216,26 +216,26 @@
|
|
doc nil))
|
|
(or (and (fboundp name)
|
|
(not (get name 'defsubst-maybe)))
|
|
- (` (or (fboundp (quote (, name)))
|
|
- (prog1
|
|
- (static-cond
|
|
- (,@ (mapcar
|
|
- (function
|
|
- (lambda (case)
|
|
- (list (car case)
|
|
- (if doc
|
|
- (` (defsubst (, name) (, args)
|
|
- (, doc)
|
|
- (,@ (cdr case))))
|
|
- (` (defsubst (, name) (, args)
|
|
- (,@ (cdr case))))))))
|
|
- clauses)))
|
|
- ;; This `defsubst' will be compiled to `fset',
|
|
- ;; which does not update `load-history'.
|
|
- ;; We must update `current-load-list' explicitly.
|
|
- (setq current-load-list
|
|
- (cons (quote (, name)) current-load-list))
|
|
- (put (quote (, name)) 'defsubst-maybe t))))))
|
|
+ `(or (fboundp (quote ,name))
|
|
+ (prog1
|
|
+ (static-cond
|
|
+ ,@ (mapcar
|
|
+ (function
|
|
+ (lambda (case)
|
|
+ (list (car case)
|
|
+ (if doc
|
|
+ `(defsubst ,name ,args
|
|
+ ,doc
|
|
+ ,@ (cdr case))
|
|
+ `(defsubst ,name ,args
|
|
+ ,@(cdr case))))))
|
|
+ clauses))
|
|
+ ;; This `defsubst' will be compiled to `fset',
|
|
+ ;; which does not update `load-history'.
|
|
+ ;; We must update `current-load-list' explicitly.
|
|
+ (setq current-load-list
|
|
+ (cons (quote ,name) current-load-list))
|
|
+ (put (quote ,name) 'defsubst-maybe t)))))
|
|
|
|
|
|
;;; Edebug spec.
|
|
@@ -246,7 +246,7 @@
|
|
"Set the edebug-form-spec property of SYMBOL according to SPEC.
|
|
Both SYMBOL and SPEC are unevaluated. The SPEC can be 0, t, a symbol
|
|
\(naming a function\), or a list."
|
|
- (` (put (quote (, symbol)) 'edebug-form-spec (quote (, spec)))))
|
|
+ `(put (quote ,symbol) 'edebug-form-spec (quote ,spec)))
|
|
|
|
;; edebug-spec for `def*-maybe' macros.
|
|
(def-edebug-spec defun-maybe defun)
|