1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61
|
;;; tl-atype.el --- atype functions
;; Copyright (C) 1994,1995,1996 Free Software Foundation, Inc.
;; Copyright (C) 1997 MORIOKA Tomohiko
;; Author: MORIOKA Tomohiko <morioka@jaist.ac.jp>
;; Version: $Id: tl-atype.el,v 6.4 1997/06/01 00:51:38 morioka Exp $
;; Keywords: atype
;; This file is part of XEmacs.
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the GNU General Public License as
;; published by the Free Software Foundation; either version 2, or (at
;; your option) any later version.
;; This program is distributed in the hope that it will be useful, but
;; WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
;; General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
;; Boston, MA 02111-1307, USA.
;;; Code:
(require 'tl-list)
(require 'atype)
;;; @ field
;;;
(defalias 'fetch-field 'assoc)
(defalias 'fetch-field-value 'assoc-value)
(defalias 'put-field 'put-alist)
(defalias 'delete-field 'del-alist)
(defun put-fields (tp c)
(catch 'tag
(let ((r tp) f ret)
(while r
(setq f (car r))
(if (not (if (setq ret (fetch-field (car f) c))
(equal (cdr ret)(cdr f))
(setq c (cons f c))
))
(throw 'tag 'error))
(setq r (cdr r))
))
c))
;;; @ end
;;;
(provide 'tl-atype)
;;; tl-atype.el ends here
|