%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/cedet/semantic/ |
Current File : //usr/local/share/emacs/27.2/lisp/cedet/semantic/wisent.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. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\207" [require semantic semantic/wisent/wisent] 2) #@50 Input stream of `semantic-lex' syntactic tokens. (defvar wisent-lex-istream nil (#$ . 493)) #@87 Extra lookahead token. When non-nil it is directly returned by `wisent-lex-function'. (defvar wisent-lex-lookahead nil (#$ . 591)) (semantic-alias-obsolete 'wisent-lex-make-token-table 'semantic-lex-make-type-table "23.2") #@100 Return an End-Of-Input lexical token. The EOI token is like this: ($EOI "" POINT-MAX . POINT-MAX). (defalias 'wisent-lex-eoi '(macro . #[nil "\301\302D\303BB\207" [wisent-eoi-term cons quote ((cons "" (cons (point-max) (point-max))))] 3 (#$ . 821)])) #@585 Create a new lexical analyzer with NAME. DOC is a documentation string describing this analyzer. When a token is available in `wisent-lex-istream', eval BODY forms sequentially. BODY must return a lexical token for the LALR parser. Each token in input was produced by `semantic-lex', it is a list: (TOKSYM START . END) TOKSYM is a terminal symbol used in the grammar. START and END mark boundary in the current buffer of that token's value. Returned tokens must have the form: (TOKSYM VALUE START . END) where VALUE is the buffer substring between START and END positions. (defalias 'define-wisent-lexer '(macro . #[(name doc &rest body) "\303\304 \305\306\307\nB\310BBB\257\207" [name doc body defun nil cond (wisent-lex-lookahead (prog1 wisent-lex-lookahead (setq wisent-lex-lookahead nil))) wisent-lex-istream (((wisent-lex-eoi)))] 8 (#$ . 1080)])) #@246 Return the next available lexical token in Wisent's form. The variable `wisent-lex-istream' contains the list of lexical tokens produced by `semantic-lex'. Pop the next token available and convert it to a form suitable for the Wisent's parser. (defalias 'wisent-lex #[nil "\203 \303\207 \203s @ A\n\211@\262\n\211A@;\203' \211A@\262\202[ \304\211\211A@\247\2049 \211AA\262\202= \211A\262@\262\211\211A@\247\204Q \211AA\262\202U \211A\262A\262\"\262\n\211A@\247\204k \211AA\262\202o \211A\262)BB\207\305\306ddBBB\207" [wisent-lex-lookahead wisent-lex-istream tk nil buffer-substring-no-properties $EOI ""] 7 (#$ . 1952)]) #@84 Function used to report parse error. By default use the function `wisent-message'. (defvar wisent-error-function nil (#$ . 2600)) (make-variable-buffer-local 'wisent-error-function) #@123 Function used to obtain the next lexical token in input. Should be a lexical analyzer created with `define-wisent-lexer'. (defvar wisent-lexer-function 'wisent-lex (#$ . 2789)) (make-variable-buffer-local 'wisent-lexer-function) #@134 Return raw form of given Semantic tag SEMANTIC-TAG. Should be used in semantic actions, in grammars, to build a Semantic parse tree. (defalias 'wisent-raw-tag #[(semantic-tag) " \204 \nAA\211\203 @ AD\202 ddD\244\207" [semantic-tag $region wisent-input] 3 (#$ . 3025)]) (put 'wisent-raw-tag 'byte-optimizer 'byte-compile-inline-expand) #@151 From raw form of Semantic tag RAW-TAG, return a list of cooked tags. Should be used in semantic actions, in grammars, to build a Semantic parse tree. (defalias 'wisent-cook-tag #[(raw-tag) "\304!\211\211\203 \305\n@\306#\210\nA\211\204\n *\207" [raw-tag cooked l $nterm semantic--tag-expand semantic--tag-put-property reparse-symbol] 5 (#$ . 3374)]) (put 'wisent-cook-tag 'byte-optimizer 'byte-compile-inline-expand) #@243 Add lexical token NOMATCH to the cache of unmatched tokens. See also the variable `semantic-unmatched-syntax-cache'. NOMATCH is in Wisent's form: (SYMBOL VALUE START . END) and will be collected in `semantic-lex' form: (SYMBOL START . END). (defalias 'wisent-collect-unmatched-syntax #[(nomatch) "AA\303 @!\205 \303 A!\205 @ B\nB\211)\207" [nomatch region semantic-unmatched-syntax-cache number-or-marker-p] 2 (#$ . 3805)]) #@468 Parse STREAM using the Wisent LALR parser. GOAL is a nonterminal symbol to start parsing at. Return the list (STREAM SEMANTIC-STREAM) where STREAM are those elements of STREAM that have not been used. SEMANTIC-STREAM is the list of semantic tags found. The LALR parser automaton must be available in buffer local variable `semantic--parse-table'. Must be installed by `semantic-install-function-overrides' to override the standard function `semantic-parse-stream'. (defalias 'wisent-parse-stream #[(stream goal) "\306\211\211\211\f@\211@:\203 @@\fA\202 \306\f \203\\ \30715 \310$0\202\252 \204S \3118U\203S \312\313\314!\"\210\312\315!\202X \316\317\")\202\252 \3201\232 \3211r \310$0\202\226 \204\220 \3118U\203\220 \312\313\314!\"\210\312\315!\202\225 \316\317\")0\202\252 \312\313\322\323p\314!#\"\210)\306\203\357 @@=\203\317 \306 @\211\203\357 \324\325 @\"\210 A\211\202\277 :\204\330 \204\334 \306\211B @B\240\210 AA\241\210 B:\203\371 \202\372 \326,D\207" [cache la-elt wisent-lex-lookahead wisent-lex-istream stream debug-on-error nil (args-out-of-range) wisent-parse 2 message "wisent-parse-stream: %s" error-message-string "wisent-parse-max-stack-size might need to be increased" apply signal (error) (args-out-of-range) format "%S - %s" run-hook-with-args wisent-discarding-token-functions (nil) semantic--parse-table wisent-lexer-function wisent-error-function goal error-to-filter wisent-parse-max-stack-size err wisent-lookahead] 8 (#$ . 4243)]) #@501 Parse the area between START and END using the Wisent LALR parser. Return the list of semantic tags found. Optional arguments GOAL is a nonterminal symbol to start parsing at, DEPTH is the lexical depth to scan, and RETURNONERROR is a flag to stop parsing on syntax error, when non-nil. The LALR parser automaton must be available in buffer local variable `semantic--parse-table'. Must be installed by `semantic-install-function-overrides' to override the standard function `semantic-parse-region'. (defalias 'wisent-parse-region #[(start end &optional goal depth returnonerror) "eW\204 dV\204 W\203 \306\307 #\210\n\310 \f#\311\211 \311\211!\"\311# \2038\"@#$\203J \312%&'($\202l \3131\\ \312%&'($0\202l )\314\315\316\317p\320)!#\"\210)\311 *\203\233 \"@*=\203\224 \311 \"\203\233 \321\322\"@\"\210\"A\211\"\202\201 *\"B\" :\203\344 \311\"\323 !!\324!\"!\203\353 !@ !A! \325+ \326 \327 8)+\"*\204\262 \330 \325(#\210\202\262 ,\203\353 \311 \203/ -\331=\203/ \332\333!\203/ \203/ \334\335 @\211\211A@\247\204\211AA\262\202\211A\262@\262_d\"\311\247\203.@Y\2053\336#\266\202/ \237.\207" [start end semantic-case-fold case-fold-search depth wisent-lex-istream error "Invalid bounds [%s %s] passed to `wisent-parse-region'" semantic-lex nil wisent-parse (error) message "wisent-parse-region: %s" format "%S - %s" error-message-string run-hook-with-args wisent-discarding-token-functions semantic--tag-expand append reparse-symbol plist-get 3 semantic--tag-put-property percent boundp semantic--progress-reporter floor 100.0 progress-reporter-do-update ptree tag cooked lstack wisent-lex-lookahead debug-on-error semantic--parse-table wisent-lexer-function wisent-error-function goal err wisent-lookahead property returnonerror semantic-working-type] 8 (#$ . 5788)]) (byte-code "\300\301\302\"\210\303\304!\207" [add-hook edebug-setup-hook #[nil "\300\301\302\303#\207" [put define-wisent-lexer edebug-form-spec (&define name stringp def-body)] 4] provide semantic/wisent] 3)