From: morioka Date: Wed, 7 Oct 1998 15:41:07 +0000 (+0000) Subject: (mel-define-service): Add DOC. X-Git-Tag: flim-1_10_2~14 X-Git-Url: http://git.chise.org/gitweb/?a=commitdiff_plain;h=39eea2312c5b8657429370e6ed4f6fdf71659adf;p=elisp%2Fflim.git (mel-define-service): Add DOC. (mel-define-method): Add DOC. (mel-define-method-function): Add DOC. --- diff --git a/mime-def.el b/mime-def.el index c41a487..8d1ce4d 100644 --- a/mime-def.el +++ b/mime-def.el @@ -373,6 +373,9 @@ specialized parameter. (car (car ARGS)) is name of variable and (nth ;;; (defmacro mel-define-service (name &optional args &rest rest) + "Define NAME as a service for Content-Transfer-Encodings. +If ARGS is specified, NAME is defined as a generic function for the +service." (if args `(progn (defvar ,(intern (format "%s-obarray" name)) (make-vector 1 nil)) @@ -387,6 +390,10 @@ specialized parameter. (car (car ARGS)) is name of variable and (nth (put 'mel-define-service 'lisp-indent-function 'defun) (defmacro mel-define-method (name args &rest body) + "Define NAME as a method function of (nth 1 (car (last ARGS))) backend. +ARGS is like an argument list of lambda, but (car (last ARGS)) must be +specialized parameter. (car (car (last ARGS))) is name of variable +and (nth 1 (car (last ARGS))) is name of backend (encoding)." (let* ((specializer (car (last args))) (class (nth 1 specializer))) `(progn @@ -398,6 +405,11 @@ specialized parameter. (car (car ARGS)) is name of variable and (nth (put 'mel-define-method 'lisp-indent-function 'defun) (defmacro mel-define-method-function (spec function) + "Set SPEC's function definition to FUNCTION. +First element of SPEC is service. +Rest of ARGS is like an argument list of lambda, but (car (last ARGS)) +must be specialized parameter. (car (car (last ARGS))) is name of +variable and (nth 1 (car (last ARGS))) is name of backend (encoding)." (let* ((name (car spec)) (args (cdr spec)) (specializer (car (last args)))