Current File : //proc/self/root/kunden/usr/share/emacs/27.2/lisp/cedet/semantic/wisent/comp.elc |
;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.
;;; This file uses dynamic docstrings, first added in Emacs 19.29.
;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(require 'semantic/wisent)
#@36 Return the context name from NAME.
(defalias 'wisent-context-name '(macro . #[(name) "\301\302\303DE\304\305\306ED\307\310EF\207" [name if and symbolp intern format "wisent-context-%s" error "Invalid context name: %S"] 6 (#$ . 435)]))
#@39 Return the variables in context NAME.
(defalias 'wisent-context-bindings '(macro . #[(name) "\301\302DD\207" [name symbol-value wisent-context-name] 3 (#$ . 680)]))
#@54 Define a context NAME that will bind variables VARS.
(defalias 'wisent-defcontext '(macro . #[(name &rest vars) "\203 9\203 \304\305\306\"!\202 \307\310\"\311\312\n\"\313\314\315\316 \317\nDEDC\"*B\207" [name context vars declarations intern format "wisent-context-%s" error "Invalid context name: %S" mapcar #[(v) "\301D\207" [v defvar] 2] progn append eval-when-compile defvar quote] 8 (#$ . 852)]))
(byte-code "\300\301\302\303#\300\207" [function-put wisent-defcontext lisp-indent-function 1] 4)
#@48 Bind variables in context NAME then eval BODY.
(defalias 'wisent-with-context '(macro . #[(name &rest body) "\203 9\203 \303\304\305\"!\202 \306\307\"J\310\311\312\313 \"\314 \nBBC\")B\207" [name bindings body intern format "wisent-context-%s" error "Invalid context name: %S" progn append mapcar #[(binding) "\301\242\206 D\207" [binding defvar] 2] let*] 6 (#$ . 1369)]))
(byte-code "\300\301\302\303#\300\207" [function-put wisent-with-context lisp-indent-function 1] 4)
#@150 Fill string S with spaces.
Return a new string of at least N characters. Insert spaces on right.
If optional LEFT is non-nil insert spaces on left.
(defalias 'wisent-pad-string #[(s n &optional left) "G\211\nW\203# \203 \304\n Z\305\"P\202$ \304\n Z\305\"P\202$ )\207" [s i n left make-string 32] 5 (#$ . 1860)])
(put 'wisent-pad-string 'byte-optimizer 'byte-compile-inline-expand)
(defconst wisent-BITS-PER-WORD (logcount most-positive-fixnum))
#@42 (N + BITS-PER-WORD - 1) / BITS-PER-WORD.
(defalias 'wisent-WORDSIZE #[(n) " \\S \245\207" [n wisent-BITS-PER-WORD] 2 (#$ . 2320)])
(put 'wisent-WORDSIZE 'byte-optimizer 'byte-compile-inline-expand)
#@49 X[I/BITS-PER-WORD] |= 1 << (I % BITS-PER-WORD).
(defalias 'wisent-SETBIT #[(x i) " \245\n\304\nH\305\306 \246\"\"I)\207" [i wisent-BITS-PER-WORD k x logior ash 1] 8 (#$ . 2525)])
(put 'wisent-SETBIT 'byte-optimizer 'byte-compile-inline-expand)
#@52 X[I/BITS-PER-WORD] &= ~(1 << (I % BITS-PER-WORD)).
(defalias 'wisent-RESETBIT #[(x i) " \245\n\304\nH\305\306\307 \246\"!\"I)\207" [i wisent-BITS-PER-WORD k x logand lognot ash 1] 9 (#$ . 2780)])
(put 'wisent-RESETBIT 'byte-optimizer 'byte-compile-inline-expand)
#@57 (X[I/BITS-PER-WORD] & (1 << (I % BITS-PER-WORD))) != 0.
(defalias 'wisent-BITISSET #[(x i) "\303 \n\245H\304\305 \n\246\"\"\306U?\207" [x i wisent-BITS-PER-WORD logand ash 1 0] 6 (#$ . 3054)])
(put 'wisent-BITISSET 'byte-optimizer 'byte-compile-inline-expand)
#@40 Non-nil means enable some debug stuff.
(defvar wisent-debug-flag nil (#$ . 3321))
#@25 Name of the log buffer.
(defconst wisent-log-buffer-name "*wisent-log*" (#$ . 3409))
#@38 Non-nil means to start a new report.
(defvar wisent-new-log-flag nil (#$ . 3500))
#@66 Non-nil means to report verbose information on generated parser.
(custom-declare-variable 'wisent-verbose-flag nil '(#$ . 3588) :group 'wisent :type 'boolean)
#@67 Toggle whether to report verbose information on generated parser.
(defalias 'wisent-toggle-verbose-flag #[nil "?\301\302!\205 \303\304\203 \305\202 \306\"\207" [wisent-verbose-flag called-interactively-p interactive message "Verbose report %sabled" "en" "dis"] 3 (#$ . 3753) nil])
#@82 Return the log buffer.
Its name is defined in constant `wisent-log-buffer-name'.
(defalias 'wisent-log-buffer '(macro . #[nil "\300\207" [(get-buffer-create wisent-log-buffer-name)] 1 (#$ . 4046)]))
#@47 Delete the entire contents of the log buffer.
(defalias 'wisent-clear-log '(macro . #[nil "\300\207" [(with-current-buffer (wisent-log-buffer) (erase-buffer))] 1 (#$ . 4251)]))
#@45 Return the current source file name or nil.
(defalias 'wisent-source #[nil "\303\300!\203\n \206 \206 \304 \211\205 \305\n!)\207" [byte-compile-current-file load-file-name source boundp buffer-file-name file-relative-name] 3 (#$ . 4434)])
#@40 Start a new entry into the log buffer.
(defalias 'wisent-new-log #[nil "\303\304\305\306 \206 \307 \310\311!#r\312\n!q\210db\210 c*\207" [wisent-new-log-flag text wisent-log-buffer-name nil format "\n\n*** Wisent %s - %s\n\n" wisent-source buffer-name format-time-string "%Y-%m-%d %R" get-buffer-create] 5 (#$ . 4685)])
#@170 Insert text into the log buffer.
`format-message' is applied to ARGS and the result string is inserted into the
log buffer returned by the function `wisent-log-buffer'.
(defalias 'wisent-log #[(&rest args) "\203 \303 \210r\304 !q\210\305\306\n\"c)\207" [wisent-new-log-flag wisent-log-buffer-name args wisent-new-log get-buffer-create apply format-message] 3 (#$ . 5015)])
(put 'wisent-log 'byte-optimizer 'byte-compile-inline-expand)
#@63 The log file.
Used when running without interactive terminal.
(defconst wisent-log-file "wisent.output" (#$ . 5458))
#@57 Append contents of logging buffer to `wisent-log-file'.
(defalias 'wisent-append-to-log-file #[nil "\303!\205) \3041! r\305!q\210~\210deV\205 \306ed \307$)0\207\310\311\312\n!\")\207" [wisent-log-buffer-name wisent-log-file err get-buffer (error) get-buffer-create write-region t message "*** %s" error-message-string] 5 (#$ . 5581)])
#@30 The size of the state table.
(custom-declare-variable 'wisent-state-table-size 1009 '(#$ . 5926) :type 'integer :group 'wisent)
#@87 Return non-nil if item number S defines a token (terminal).
That is if S < `ntokens'.
(defalias 'wisent-ISTOKEN '(macro . #[(s) "\301\302BB\207" [s < (ntokens)] 3 (#$ . 6060)]))
#@83 Return non-nil if item number S defines a nonterminal.
That is if S >= `ntokens'.
(defalias 'wisent-ISVAR '(macro . #[(s) "\301\302BB\207" [s >= (ntokens)] 3 (#$ . 6245)]))
#@41 Return printable form of item number S.
(defalias 'wisent-tag #[(s) " H\304\n!\203 \n\236A\206 \305\306\n\"\202 \307\n!)\207" [tags s item wisent-escape-sequence-strings wisent-char-p format "'%c'" symbol-name] 3 (#$ . 6425)])
(put 'wisent-tag 'byte-optimizer 'byte-compile-inline-expand)
#@79 Store OBJECT's PROPNAME property with value VALUE.
Use `eq' to locate OBJECT.
(defalias 'wisent-put #[(object propname value) " \236\211\204 C\211 B\n\305\nA\f#\241)\207" [object ptable entry propname value plist-put] 6 (#$ . 6726)])
(put 'wisent-put 'byte-optimizer 'byte-compile-inline-expand)
#@76 Return the value of OBJECT's PROPNAME property.
Use `eq' to locate OBJECT.
(defalias 'wisent-get #[(object propname) "\303 \236A\n\"\207" [object ptable propname plist-get] 3 (#$ . 7035)])
(put 'wisent-get 'byte-optimizer 'byte-compile-inline-expand)
#@37 Return the item number of symbol X.
(defalias 'wisent-item-number #[(x) "\304\305\n\236A \"*\207" [x propname object ptable wisent--item-no plist-get] 3 (#$ . 7293)])
(put 'wisent-item-number 'byte-optimizer 'byte-compile-inline-expand)
#@39 Set the item number of symbol X to N.
(defalias 'wisent-set-item-number #[(x n) "\306 \211
\236\211\204 \fC\211
B\307A\n#\241,\207" [x n value propname object ptable wisent--item-no plist-put entry] 6 (#$ . 7540)])
(put 'wisent-set-item-number 'byte-optimizer 'byte-compile-inline-expand)
#@39 Return the associativity of symbol X.
(defalias 'wisent-assoc #[(x) "\304\305\n\236A \"*\207" [x propname object ptable wisent--assoc plist-get] 3 (#$ . 7850)])
(put 'wisent-assoc 'byte-optimizer 'byte-compile-inline-expand)
#@41 Set the associativity of symbol X to A.
(defalias 'wisent-set-assoc #[(x a) "\306 \211
\236\211\204 \fC\211
B\307A\n#\241,\207" [x a value propname object ptable wisent--assoc plist-put entry] 6 (#$ . 8085)])
(put 'wisent-set-assoc 'byte-optimizer 'byte-compile-inline-expand)
#@42 Return the precedence level of symbol X.
(defalias 'wisent-prec #[(x) "\304\305\n\236A \"*\207" [x propname object ptable wisent--prec plist-get] 3 (#$ . 8383)])
(put 'wisent-prec 'byte-optimizer 'byte-compile-inline-expand)
#@44 Set the precedence level of symbol X to P.
(defalias 'wisent-set-prec #[(x p) "\306 \211
\236\211\204 \fC\211
B\307A\n#\241,\207" [x p value propname object ptable wisent--prec plist-put entry] 6 (#$ . 8618)])
(put 'wisent-set-prec 'byte-optimizer 'byte-compile-inline-expand)
#@39 compiler-macro for inlining `core-p'.
(defalias 'core-p--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block core-p (and (memq (type-of cl-x) cl-struct-core-tags) t)) nil] 7 (#$ . 8916)])
(put 'core-p 'compiler-macro 'core-p--cmacro)
(defalias 'core-p #[(cl-x) "\302! >\205 \303\207" [cl-x cl-struct-core-tags type-of t] 2])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put core-p side-effect-free error-free put core cl-deftype-satisfies] 5)
#@42 compiler-macro for inlining `core-next'.
(defalias 'core-next--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block core-next (progn (or (core-p cl-x) (signal 'wrong-type-argument (list 'core cl-x))) (aref cl-x 1))) nil] 7 (#$ . 9439)])
(put 'core-next 'compiler-macro 'core-next--cmacro)
#@43 Access slot "next" of `core' struct CL-X.
(defalias 'core-next #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-core-tags type-of signal wrong-type-argument core 1] 4 (#$ . 9788)])
(byte-code "\300\301\302\303#\300\207" [function-put core-next side-effect-free t] 4)
#@42 compiler-macro for inlining `core-link'.
(defalias 'core-link--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block core-link (progn (or (core-p cl-x) (signal 'wrong-type-argument (list 'core cl-x))) (aref cl-x 2))) nil] 7 (#$ . 10084)])
(put 'core-link 'compiler-macro 'core-link--cmacro)
#@43 Access slot "link" of `core' struct CL-X.
(defalias 'core-link #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-core-tags type-of signal wrong-type-argument core 2] 4 (#$ . 10434)])
(byte-code "\300\301\302\303#\300\207" [function-put core-link side-effect-free t] 4)
#@44 compiler-macro for inlining `core-number'.
(defalias 'core-number--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block core-number (progn (or (core-p cl-x) (signal 'wrong-type-argument (list 'core cl-x))) (aref cl-x 3))) nil] 7 (#$ . 10731)])
(put 'core-number 'compiler-macro 'core-number--cmacro)
#@45 Access slot "number" of `core' struct CL-X.
(defalias 'core-number #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-core-tags type-of signal wrong-type-argument core 3] 4 (#$ . 11091)])
(byte-code "\300\301\302\303#\300\207" [function-put core-number side-effect-free t] 4)
#@54 compiler-macro for inlining `core-accessing-symbol'.
(defalias 'core-accessing-symbol--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block core-accessing-symbol (progn (or (core-p cl-x) (signal 'wrong-type-argument (list 'core cl-x))) (aref cl-x 4))) nil] 7 (#$ . 11394)])
(put 'core-accessing-symbol 'compiler-macro 'core-accessing-symbol--cmacro)
#@55 Access slot "accessing-symbol" of `core' struct CL-X.
(defalias 'core-accessing-symbol #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-core-tags type-of signal wrong-type-argument core 4] 4 (#$ . 11804)])
(byte-code "\300\301\302\303#\300\207" [function-put core-accessing-symbol side-effect-free t] 4)
#@44 compiler-macro for inlining `core-nitems'.
(defalias 'core-nitems--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block core-nitems (progn (or (core-p cl-x) (signal 'wrong-type-argument (list 'core cl-x))) (aref cl-x 5))) nil] 7 (#$ . 12137)])
(put 'core-nitems 'compiler-macro 'core-nitems--cmacro)
#@45 Access slot "nitems" of `core' struct CL-X.
(defalias 'core-nitems #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-core-tags type-of signal wrong-type-argument core 5] 4 (#$ . 12497)])
(byte-code "\300\301\302\303#\300\207" [function-put core-nitems side-effect-free t] 4)
#@43 compiler-macro for inlining `core-items'.
(defalias 'core-items--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block core-items (progn (or (core-p cl-x) (signal 'wrong-type-argument (list 'core cl-x))) (aref cl-x 6))) nil] 7 (#$ . 12800)])
(put 'core-items 'compiler-macro 'core-items--cmacro)
#@44 Access slot "items" of `core' struct CL-X.
(defalias 'core-items #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-core-tags type-of signal wrong-type-argument core 6] 4 (#$ . 13155)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put core-items side-effect-free t defalias copy-core copy-sequence] 4)
#@42 compiler-macro for inlining `make-core'.
(defalias 'make-core--cmacro #[(_cl-whole-arg) "\300\301\302\301\211\211%\207" [cl--defsubst-expand nil (cl-block make-core (record 'core nil nil 0 0 0 [0]))] 6 (#$ . 13498)])
(put 'make-core 'compiler-macro 'make-core--cmacro)
#@41 Constructor for objects of type `core'.
(defalias 'make-core #[nil "\300\301\302\211\303\211\211\304&\207" [record core nil 0 [0]] 8 (#$ . 13773)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303& \207" [function-put make-core side-effect-free t cl-struct-define core nil cl-structure-object record ((cl-tag-slot) (next) (link) (number 0) (accessing-symbol 0) (nitems 0) (items [0])) cl-struct-core-tags] 11)
#@41 compiler-macro for inlining `shifts-p'.
(defalias 'shifts-p--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block shifts-p (and (memq (type-of cl-x) cl-struct-shifts-tags) t)) nil] 7 (#$ . 14211)])
(put 'shifts-p 'compiler-macro 'shifts-p--cmacro)
(defalias 'shifts-p #[(cl-x) "\302! >\205 \303\207" [cl-x cl-struct-shifts-tags type-of t] 2])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put shifts-p side-effect-free error-free put shifts cl-deftype-satisfies] 5)
#@44 compiler-macro for inlining `shifts-next'.
(defalias 'shifts-next--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block shifts-next (progn (or (shifts-p cl-x) (signal 'wrong-type-argument (list 'shifts cl-x))) (aref cl-x 1))) nil] 7 (#$ . 14755)])
(put 'shifts-next 'compiler-macro 'shifts-next--cmacro)
#@45 Access slot "next" of `shifts' struct CL-X.
(defalias 'shifts-next #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-shifts-tags type-of signal wrong-type-argument shifts 1] 4 (#$ . 15119)])
(byte-code "\300\301\302\303#\300\207" [function-put shifts-next side-effect-free t] 4)
#@46 compiler-macro for inlining `shifts-number'.
(defalias 'shifts-number--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block shifts-number (progn (or (shifts-p cl-x) (signal 'wrong-type-argument (list 'shifts cl-x))) (aref cl-x 2))) nil] 7 (#$ . 15426)])
(put 'shifts-number 'compiler-macro 'shifts-number--cmacro)
#@47 Access slot "number" of `shifts' struct CL-X.
(defalias 'shifts-number #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-shifts-tags type-of signal wrong-type-argument shifts 2] 4 (#$ . 15800)])
(byte-code "\300\301\302\303#\300\207" [function-put shifts-number side-effect-free t] 4)
#@47 compiler-macro for inlining `shifts-nshifts'.
(defalias 'shifts-nshifts--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block shifts-nshifts (progn (or (shifts-p cl-x) (signal 'wrong-type-argument (list 'shifts cl-x))) (aref cl-x 3))) nil] 7 (#$ . 16113)])
(put 'shifts-nshifts 'compiler-macro 'shifts-nshifts--cmacro)
#@48 Access slot "nshifts" of `shifts' struct CL-X.
(defalias 'shifts-nshifts #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-shifts-tags type-of signal wrong-type-argument shifts 3] 4 (#$ . 16492)])
(byte-code "\300\301\302\303#\300\207" [function-put shifts-nshifts side-effect-free t] 4)
#@46 compiler-macro for inlining `shifts-shifts'.
(defalias 'shifts-shifts--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block shifts-shifts (progn (or (shifts-p cl-x) (signal 'wrong-type-argument (list 'shifts cl-x))) (aref cl-x 4))) nil] 7 (#$ . 16808)])
(put 'shifts-shifts 'compiler-macro 'shifts-shifts--cmacro)
#@47 Access slot "shifts" of `shifts' struct CL-X.
(defalias 'shifts-shifts #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-shifts-tags type-of signal wrong-type-argument shifts 4] 4 (#$ . 17182)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put shifts-shifts side-effect-free t defalias copy-shifts copy-sequence] 4)
#@44 compiler-macro for inlining `make-shifts'.
(defalias 'make-shifts--cmacro #[(_cl-whole-arg) "\300\301\302\301\211\211%\207" [cl--defsubst-expand nil (cl-block make-shifts (record 'shifts nil 0 0 [0]))] 6 (#$ . 17540)])
(put 'make-shifts 'compiler-macro 'make-shifts--cmacro)
#@43 Constructor for objects of type `shifts'.
(defalias 'make-shifts #[nil "\300\301\302\303\211\304%\207" [record shifts nil 0 [0]] 6 (#$ . 17821)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303& \207" [function-put make-shifts side-effect-free t cl-struct-define shifts nil cl-structure-object record ((cl-tag-slot) (next) (number 0) (nshifts 0) (shifts [0])) cl-struct-shifts-tags] 11)
#@45 compiler-macro for inlining `reductions-p'.
(defalias 'reductions-p--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block reductions-p (and (memq (type-of cl-x) cl-struct-reductions-tags) t)) nil] 7 (#$ . 18236)])
(put 'reductions-p 'compiler-macro 'reductions-p--cmacro)
(defalias 'reductions-p #[(cl-x) "\302! >\205 \303\207" [cl-x cl-struct-reductions-tags type-of t] 2])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put reductions-p side-effect-free error-free put reductions cl-deftype-satisfies] 5)
#@48 compiler-macro for inlining `reductions-next'.
(defalias 'reductions-next--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block reductions-next (progn (or (reductions-p cl-x) (signal 'wrong-type-argument (list 'reductions cl-x))) (aref cl-x 1))) nil] 7 (#$ . 18820)])
(put 'reductions-next 'compiler-macro 'reductions-next--cmacro)
#@49 Access slot "next" of `reductions' struct CL-X.
(defalias 'reductions-next #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-reductions-tags type-of signal wrong-type-argument reductions 1] 4 (#$ . 19212)])
(byte-code "\300\301\302\303#\300\207" [function-put reductions-next side-effect-free t] 4)
#@50 compiler-macro for inlining `reductions-number'.
(defalias 'reductions-number--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block reductions-number (progn (or (reductions-p cl-x) (signal 'wrong-type-argument (list 'reductions cl-x))) (aref cl-x 2))) nil] 7 (#$ . 19539)])
(put 'reductions-number 'compiler-macro 'reductions-number--cmacro)
#@51 Access slot "number" of `reductions' struct CL-X.
(defalias 'reductions-number #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-reductions-tags type-of signal wrong-type-argument reductions 2] 4 (#$ . 19941)])
(byte-code "\300\301\302\303#\300\207" [function-put reductions-number side-effect-free t] 4)
#@49 compiler-macro for inlining `reductions-nreds'.
(defalias 'reductions-nreds--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block reductions-nreds (progn (or (reductions-p cl-x) (signal 'wrong-type-argument (list 'reductions cl-x))) (aref cl-x 3))) nil] 7 (#$ . 20274)])
(put 'reductions-nreds 'compiler-macro 'reductions-nreds--cmacro)
#@50 Access slot "nreds" of `reductions' struct CL-X.
(defalias 'reductions-nreds #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-reductions-tags type-of signal wrong-type-argument reductions 3] 4 (#$ . 20671)])
(byte-code "\300\301\302\303#\300\207" [function-put reductions-nreds side-effect-free t] 4)
#@49 compiler-macro for inlining `reductions-rules'.
(defalias 'reductions-rules--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block reductions-rules (progn (or (reductions-p cl-x) (signal 'wrong-type-argument (list 'reductions cl-x))) (aref cl-x 4))) nil] 7 (#$ . 21001)])
(put 'reductions-rules 'compiler-macro 'reductions-rules--cmacro)
#@50 Access slot "rules" of `reductions' struct CL-X.
(defalias 'reductions-rules #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-reductions-tags type-of signal wrong-type-argument reductions 4] 4 (#$ . 21398)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put reductions-rules side-effect-free t defalias copy-reductions copy-sequence] 4)
#@48 compiler-macro for inlining `make-reductions'.
(defalias 'make-reductions--cmacro #[(_cl-whole-arg) "\300\301\302\301\211\211%\207" [cl--defsubst-expand nil (cl-block make-reductions (record 'reductions nil 0 0 [0]))] 6 (#$ . 21777)])
(put 'make-reductions 'compiler-macro 'make-reductions--cmacro)
#@47 Constructor for objects of type `reductions'.
(defalias 'make-reductions #[nil "\300\301\302\303\211\304%\207" [record reductions nil 0 [0]] 6 (#$ . 22082)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303& \207" [function-put make-reductions side-effect-free t cl-struct-define reductions nil cl-structure-object record ((cl-tag-slot) (next) (number 0) (nreds 0) (rules [0])) cl-struct-reductions-tags] 11)
#@39 compiler-macro for inlining `errs-p'.
(defalias 'errs-p--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block errs-p (and (memq (type-of cl-x) cl-struct-errs-tags) t)) nil] 7 (#$ . 22518)])
(put 'errs-p 'compiler-macro 'errs-p--cmacro)
(defalias 'errs-p #[(cl-x) "\302! >\205 \303\207" [cl-x cl-struct-errs-tags type-of t] 2])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put errs-p side-effect-free error-free put errs cl-deftype-satisfies] 5)
#@43 compiler-macro for inlining `errs-nerrs'.
(defalias 'errs-nerrs--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block errs-nerrs (progn (or (errs-p cl-x) (signal 'wrong-type-argument (list 'errs cl-x))) (aref cl-x 1))) nil] 7 (#$ . 23042)])
(put 'errs-nerrs 'compiler-macro 'errs-nerrs--cmacro)
#@44 Access slot "nerrs" of `errs' struct CL-X.
(defalias 'errs-nerrs #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-errs-tags type-of signal wrong-type-argument errs 1] 4 (#$ . 23397)])
(byte-code "\300\301\302\303#\300\207" [function-put errs-nerrs side-effect-free t] 4)
#@42 compiler-macro for inlining `errs-errs'.
(defalias 'errs-errs--cmacro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block errs-errs (progn (or (errs-p cl-x) (signal 'wrong-type-argument (list 'errs cl-x))) (aref cl-x 2))) nil] 7 (#$ . 23697)])
(put 'errs-errs 'compiler-macro 'errs-errs--cmacro)
#@43 Access slot "errs" of `errs' struct CL-X.
(defalias 'errs-errs #[(cl-x) "\302! >\204 \303\304\305D\"\210\306H\207" [cl-x cl-struct-errs-tags type-of signal wrong-type-argument errs 2] 4 (#$ . 24047)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put errs-errs side-effect-free t defalias copy-errs copy-sequence] 4)
#@42 compiler-macro for inlining `make-errs'.
(defalias 'make-errs--cmacro #[(_cl-whole-arg) "\300\301\302\301\211\211%\207" [cl--defsubst-expand nil (cl-block make-errs (record 'errs 0 [0]))] 6 (#$ . 24387)])
(put 'make-errs 'compiler-macro 'make-errs--cmacro)
#@41 Constructor for objects of type `errs'.
(defalias 'make-errs #[nil "\300\301\302\303#\207" [record errs 0 [0]] 4 (#$ . 24650)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303& \207" [function-put make-errs side-effect-free t cl-struct-define errs nil cl-structure-object record ((cl-tag-slot) (nerrs 0) (errs [0])) cl-struct-errs-tags] 11)
#@106 Visit L and R and return non-nil if their first N elements are `='.
L and R must be vectors of integers.
(defalias 'wisent-bits-equal #[(L R n) "S\305\n\203 \306 !\203 H\f HU S\202 \n*\207" [n i iseq L R t natnump] 3 (#$ . 25020)])
#@41 Return number of bits set in integer I.
(defalias 'wisent-nbits #[(i) "\302 \302U\204 \303 \304 \211[\"\"T\202 )\207" [count i 0 logxor logand] 5 (#$ . 25268)])
#@94 In vector S count the total of bits set in first N elements.
S must be a vector of integers.
(defalias 'wisent-bits-size #[(S n) "S\304\305 !\203 \n\306 H!\\ S\202 \n*\207" [n i count S 0 natnump wisent-nbits] 4 (#$ . 25442)])
#@53 Return non-nil if production I is in useful set N0.
(defalias 'wisent-useful-production #[(i N0) "\306 \nH\307\203A
H\211\310V\203A \f\fY\203;
\f\fZ\311\n\245H\312\313\n\246\"\"\310U*?T\202 +\207" [useful rrhs i r n ritem t nil 0 logand ash 1 ntokens N0 x wisent-BITS-PER-WORD] 6 (#$ . 25683)])
#@39 Find out which nonterminals are used.
(defalias 'wisent-useless-nonterminals #[nil "\306\211\211\211\211
\211\\S\245)\307 \310\"\204\313 S\311\n!\2036 \f\n\nHI\210\nS\202\"