;ELC   
;;; Compiled by root@loma.devel.redhat.com on Sun Feb 15 09:53:22 2004
;;; from file /usr/src/build/351973-noarch/BUILD/apel-10.6/calist.el
;;; in Emacs version 21.3.1
;;; with bytecomp version 2.85.4.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`calist.el' was compiled for Emacs 19.29 or later"))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\303\304!\210\301B\305\301!\204 \306\302B\305\302!\204 \306\306\207" [current-load-list calist-package-alist calist-field-match-method-obarray require alist boundp nil] 2)
#@34 Return a calist-package by NAME.
(defalias 'find-calist-package #[(name) "	\236A\207" [name calist-package-alist] 2 (#$ . 822)])
#@52 Set field-match-method for FIELD-TYPE to FUNCTION.
(defalias 'define-calist-field-match-method #[(field-type function) "\303\304!	\"\nM\207" [field-type calist-field-match-method-obarray function intern symbol-name] 3 (#$ . 958)])
#@69 Make the symbols of package NAME accessible in the current package.
(defalias 'use-calist-package #[(name) "\301\302\303!\"\207" [name mapatoms #[(sym) "\302\303!	\"\203 \304\305\306\307!C\"\207\310!\205 \311\211K\"\207" [sym calist-field-match-method-obarray intern-soft symbol-name signal conflict-of-calist-symbol format "Conflict of symbol %s" fboundp define-calist-field-match-method] 4] find-calist-package] 4 (#$ . 1196)])
#@30 Create a new calist-package.
(defalias 'make-calist-package #[(name &optional use) "\303\304\305\"\306\307	#\210\310\n\206 \311!\210)\207" [calist-field-match-method-obarray name use make-vector 7 0 set-alist calist-package-alist use-calist-package standard] 4 (#$ . 1638)])
#@69 Set the current calist-package to a new or existing calist-package.
(defalias 'in-calist-package #[(name) "\302!\206	 \303!\211\207" [name calist-field-match-method-obarray find-calist-package make-calist-package] 2 (#$ . 1923)])
(in-calist-package 'standard)
(defalias 'calist-default-field-match-method #[(calist field-type field-value) "\304	\"\211\204 B	B\202# \305=\203 	\202# \nA\232\205# 	)\207" [field-type calist s-field field-value assoc t] 4])
(define-calist-field-match-method t 'calist-default-field-match-method)
(defalias 'calist-field-match-method #[(field-type) "\3029\203\f \303!\202 	\"\206 \302\304	\"K\207" [field-type calist-field-match-method-obarray intern-soft symbol-name "t"] 3])
(put 'calist-field-match-method 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'calist-field-match #[(calist field-type field-value) "\3049\203 \305!\202 	\"\206 \304\306	\"K)\n#\207" [field-type calist-field-match-method-obarray calist field-value intern-soft symbol-name "t"] 4])
(put 'calist-field-match 'byte-optimizer 'byte-compile-inline-expand)
#@60 Return matched condition-alist if ALIST matches RULE-TREE.
(defalias 'ctree-match-calist #[(rule-tree alist) "\204 	\207@A\305\306\307\215+\207" [rule-tree alist default choices type nil tag (byte-code "\203k @\211@\211\306=\203 	\202c \f	@\3079\2031 \310!\2023 \"\206> \307\311\"K)#+\211\203b \312\313	A\203^ \314	A\"\202` \"\210)*A\211\204 \205\270 \f\306\3079\203\212 \310!\202\214 \"\206\227 \307\311\"K)#+\211\205\267 A\203\265 \314A\"\202\267 )\207" [choices choice choice-value default alist type t intern-soft symbol-name "t" throw tag ctree-match-calist field-value field-type calist calist-field-match-method-obarray ret-alist] 6)] 3 (#$ . 3022)])
#@60 Return matched condition-alist if ALIST matches RULE-TREE.
(defalias 'ctree-match-calist-partially #[(rule-tree alist) "\204 	\207@A\305\306\307\215+\207" [rule-tree alist default choices type nil tag (byte-code "\203k @\211@\211\306=\203 	\202c \f	@\3079\2031 \310!\2023 \"\206> \307\311\"K)#+\211\203b \312\313	A\203^ \314	A\"\202` \"\210)*A\211\204 \203\271 \f\306\3079\203\212 \310!\202\214 \"\206\227 \307\311\"K)#+\211\205\267 A\203\265 \314A\"\202\267 )\207\f\306\3079\203\324 \310!\202\326 \"\206\341 \307\311\"K)#+\207" [choices choice choice-value default alist type t intern-soft symbol-name "t" throw tag ctree-match-calist-partially field-value field-type calist calist-field-match-method-obarray ret-alist] 6)] 3 (#$ . 3771)])
#@178 Return list of condition-alist which matches ALIST in RULE-TREE.
If optional argument ALL is specified, default rules are not ignored
even if other rules are matched for ALIST.
(defalias 'ctree-find-calist #[(rule-tree alist &optional all) "\204 	C\207@A\306\211\f\203\253 \f@\211\f@\211\307=\203) \f\202\243 	\f@\3109\203F \311!\202H \"\206S \310\312\"K)#+\211\203\242 \fA\203\226 \313\fA#\211\203\222 @\211\n\235\204\210 \nB)A\211\204x )\202\242 \n\235\204\242 \nB)*\fA\211\204 \204\264 \n\204.\203.	\307\3109\203\323 \311!\202\325 \"\206\340 \310\312\"K)#+\211\203-A\203!\313A#\211\203@\211\n\235\204\nB)A\211\204)\202-\n\235\204-\nB)\n,\207" [rule-tree alist dest default choices type nil t intern-soft symbol-name "t" ctree-find-calist choice choice-value field-value field-type calist calist-field-match-method-obarray ret-alist all ret elt] 5 (#$ . 4631)])
#@51 Convert condition-alist CALIST to condition-tree.
(defalias 'calist-to-ctree #[(calist) "\205 @\211@	A\302A!)BCB\207" [calist cell calist-to-ctree] 5 (#$ . 5638)])
#@70 Add condition CALIST to condition-tree CTREE without default clause.
(defalias 'ctree-add-calist-strictly #[(ctree calist) "\204 	\207	\204 \305!\207	@	A\306\n\"\211\203$ \307\310\215\210\202( \307\311\215\210	+\207" [calist ctree type values ret calist-to-ctree assoc tag (byte-code "\203' @\211@\nA\232\203 \305\306	\307	A\310\n\311!\"\"\241\"\210)A\211\204 \f\nA\312\310\n\311!\"!B\fAB\241\207" [values cell ret calist ctree throw tag ctree-add-calist-strictly delete copy-alist calist-to-ctree] 10) (byte-code "\203 @\211\303	A\n\"\241\210)A\211\204 \303\207" [values cell calist ctree-add-calist-strictly] 5)] 4 (#$ . 5813)])
#@67 Add condition CALIST to condition-tree CTREE with default clause.
(defalias 'ctree-add-calist-with-default #[(ctree calist) "\204 	\207	\204  @\211@\nA\306C\f\307A!+BDB\207	@	A\310\"\211\f\2037 \311\312\215\210\202; \311\313\215\210	+\207" [calist ctree cell type value values t calist-to-ctree assoc tag (byte-code "\203' @\211@\nA\232\203 \305\306	\307	A\310\n\311!\"\"\241\"\210)A\211\204 \312\fA\236\203B \f\nA\313\310\n\311!\"!B\fAB\241\210\202V \f\312C\nA\313\310\n\311!\"!B\fABB\241\210\305\207" [values cell ret calist ctree throw tag ctree-add-calist-with-default delete copy-alist t calist-to-ctree] 10) (byte-code "\203 @\211\305	A\n\"\241\210)A\211\204 \306A\236\211\203+ 	\305	A\n\"\241\210\202@ \306\307\n!B\211A\235\204? \fAB\241\210))\305\207" [values cell calist ctree elt ctree-add-calist-with-default t calist-to-ctree] 5) ret] 6 (#$ . 6474)])
#@59 Set condition CALIST in CTREE-VAR without default clause.
(defalias 'ctree-set-calist-strictly #[(ctree-var calist) "\302J	\"L\207" [ctree-var calist ctree-add-calist-strictly] 4 (#$ . 7379)])
#@56 Set condition CALIST to CTREE-VAR with default clause.
(defalias 'ctree-set-calist-with-default #[(ctree-var calist) "\302J	\"L\207" [ctree-var calist ctree-add-calist-with-default] 4 (#$ . 7580)])
(byte-code "\301\300!\210\301\302!\210\303\304\305!\300\306\307!\310\311\"\210\312\304\305!\"\210\313!\311\232\203) \2024 \314\307\315\311\315\211\211\211\211&)#\210\304\305!\207" [product require apel-ver put provide calist product-find-by-name "APEL" product-run-checkers (10 6) product-add-feature product-version vector nil] 12)
