Function: make-comp-cstr-ctxt--cmacro
make-comp-cstr-ctxt--cmacro is a function defined in comp-cstr.el.gz.
Signature
(make-comp-cstr-ctxt--cmacro CL-WHOLE &cl-quote &key TYPEOF-TYPES PRED-TYPE-H UNION-TYPESETS-MEM COMMON-SUPERTYPE-MEM SUBTYPE-P-MEM UNION-1-MEM-NO-RANGE UNION-1-MEM-RANGE INTERSECTION-MEM)
Documentation
compiler-macro for make-comp-cstr-ctxt.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/comp-cstr.el.gz
;; Could not find source code, showing raw function object.
#[(cl-whole &rest --cl-rest--)
((let*
((typeof-types
(car
(cdr
(or (plist-member --cl-rest-- ':typeof-types)
'(nil (comp--compute-typeof-types))))))
(pred-type-h
(car
(cdr
(or (plist-member --cl-rest-- ':pred-type-h)
'(nil (comp--compute--pred-type-h))))))
(union-typesets-mem
(car
(cdr
(or (plist-member --cl-rest-- ':union-typesets-mem)
'(nil (make-hash-table :test #'equal))))))
(common-supertype-mem
(car
(cdr
(or (plist-member --cl-rest-- ':common-supertype-mem)
'(nil (make-hash-table :test #'equal))))))
(subtype-p-mem
(car
(cdr
(or (plist-member --cl-rest-- ':subtype-p-mem)
'(nil (make-hash-table :test #'equal))))))
(union-1-mem-no-range
(car
(cdr
(or (plist-member --cl-rest-- ':union-1-mem-no-range)
'(nil (make-hash-table :test #'equal))))))
(union-1-mem-range
(car
(cdr
(or (plist-member --cl-rest-- ':union-1-mem-range)
'(nil (make-hash-table :test #'equal))))))
(intersection-mem
(car
(cdr
(or (plist-member --cl-rest-- ':intersection-mem)
'(nil (make-hash-table :test #'equal)))))))
(progn
(let ((--cl-keys-- --cl-rest--))
(while --cl-keys--
(cond
((memq (car --cl-keys--)
'(:typeof-types :pred-type-h :union-typesets-mem
:common-supertype-mem
:subtype-p-mem
:union-1-mem-no-range
:union-1-mem-range
:intersection-mem :allow-other-keys))
(unless (cdr --cl-keys--)
(error "Missing argument for %s" (car --cl-keys--)))
(setq --cl-keys-- (cdr (cdr --cl-keys--))))
((car (cdr (memq ':allow-other-keys --cl-rest--)))
(setq --cl-keys-- nil))
(t
(error
"Keyword argument %s not one of (:typeof-types :pred-type-h :union-typesets-mem :common-supertype-mem :subtype-p-mem :union-1-mem-no-range :union-1-mem-range :intersection-mem)"
(car --cl-keys--))))))
(cl-block make-comp-cstr-ctxt--cmacro
(cl--defsubst-expand
'(typeof-types pred-type-h union-typesets-mem
common-supertype-mem subtype-p-mem
union-1-mem-no-range union-1-mem-range
intersection-mem)
'(cl-block make-comp-cstr-ctxt
(record 'comp-cstr-ctxt typeof-types pred-type-h
union-typesets-mem common-supertype-mem
subtype-p-mem union-1-mem-no-range
union-1-mem-range intersection-mem))
nil cl-whole nil typeof-types pred-type-h union-typesets-mem
common-supertype-mem subtype-p-mem union-1-mem-no-range
union-1-mem-range intersection-mem)))))
(t) nil
"compiler-macro for `make-comp-cstr-ctxt'.\n\n(fn CL-WHOLE &cl-quote &key TYPEOF-TYPES PRED-TYPE-H UNION-TYPESETS-MEM COMMON-SUPERTYPE-MEM SUBTYPE-P-MEM UNION-1-MEM-NO-RANGE UNION-1-MEM-RANGE INTERSECTION-MEM)"]