Variable: pcase--subtype-bitsets

pcase--subtype-bitsets is a variable defined in pcase.el.gz.

Value

#s(hash-table data
	      (fixnump 1 integerp 5 numberp 261 integer-or-marker-p
		       1029 number-or-marker-p 1285 atom 2147352575
		       null 2 booleanp 32770 symbolp 67158018 listp
		       131074 sequencep 133826 bignump 4
		       primitive-function-p 8 subrp 65576
		       compiled-function-p 8248 cl-functionp 12344
		       byte-code-function-p 16 closurep 4112
		       native-comp-function-p 32 stringp 64 arrayp
		       2752 vectorp 128 floatp 256 bool-vector-p 512
		       markerp 1024 char-table-p 2048
		       interpreted-function-p 4096 module-function-p
		       8192 symbol-with-pos-p 16384 special-form-p
		       65536 consp 131072 mutexp 262144 recordp 524288
		       framep 1048576 hash-table-p 2097152
		       window-configuration-p 4194304 user-ptrp
		       8388608 overlayp 16777216 processp 33554432
		       obarrayp 134217728 bufferp 268435456 threadp
		       536870912 windowp 1073741824 functionp 67301434
		       keywordp 67158018 nlistp 2147352573 characterp
		       1 natnump 5 facep 67158082 plistp 131074
		       cl-struct-p 524288 fboundp 67158018))

Documentation

Hash table mapping type predicates to their sets of types.

The table maps each type predicate, such as numberp and stringp, to the set of built-in types for which the predicate may return non-nil. The sets are represented as bitsets (integers) where each bit represents a specific leaf type. Which bit represents which type is unspecified.

Source Code

;; Defined in /usr/src/emacs/lisp/emacs-lisp/pcase.el.gz
(defconst pcase--subtype-bitsets
  (if (and (fboundp 'built-in-class-p)
           (built-in-class-p (get 'function 'cl--class)))
      (pcase--subtype-bitsets)
    ;; Early bootstrap: we don't have the built-in classes yet, so just
    ;; use an empty table for now.
    (prog1 (make-hash-table)
      ;; The empty table leads to significantly worse code, so upgrade
      ;; to the real table as soon as possible (most importantly: before we
      ;; start compiling code, and hence baking the result into files).
      (with-eval-after-load 'cl-preloaded
        (defconst pcase--subtype-bitsets (pcase--subtype-bitsets)))))
  "Hash table mapping type predicates to their sets of types.
The table maps each type predicate, such as `numberp' and `stringp',
to the set of built-in types for which the predicate may return non-nil.
The sets are represented as bitsets (integers) where each bit represents
a specific leaf type.  Which bit represents which type is unspecified.")