| Server IP : 217.160.0.212 / Your IP : 216.73.216.71 Web Server : Apache System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64 User : sws1073854427 ( 1073854427) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /usr/share/emacs/28.2/lisp/cedet/semantic/wisent/ |
Upload File : |
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.
(byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\207" [require semantic semantic/grammar semantic/find semantic/lex semantic/wisent semantic/bovine] 2)
#@129 Given a $N placeholder symbol in SYMB, return a $regionN symbol.
Return nil if $N is not a valid placeholder symbol.
(fn SYMB)
(defalias 'wisent-grammar-region-placeholder #[257 "\300!\301\302\"\205 \303\304\305\306\"P!\207" [symbol-name string-match "^[$]\\([1-9][0-9]*\\)$" intern "$region" match-string 1] 7 (#$ . 275)])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put wisent-grammar-region-placeholder speed -1 put byte-optimizer byte-compile-inline-expand] 5)
#@234 Expand call to EXPAND grammar macro.
Return the form to parse from within a nonterminal.
SYMB is a $I placeholder symbol that gives the bounds of the area to
parse.
NONTERM is the nonterminal symbol to start with.
(fn SYMB NONTERM)
(defalias 'wisent-grammar-EXPAND #[514 "\211\300\301!\235\204
\302\303\"\210\304!\305\306\"\205 \307\310\311\312\"P!\266\202\211\2032 \313\314D\315D\316DF\207\302\317#\207" [semantic-grammar-tag-symbols start error "EXPANDFULL macro called with %s, but not used with %%start" symbol-name string-match "^[$]\\([1-9][0-9]*\\)$" intern "$region" match-string 1 semantic-bovinate-from-nonterminal car cdr quote "Invalid form (EXPAND %s %s)"] 9 (#$ . 770)])
#@223 Expand call to EXPANDFULL grammar macro.
Return the form to recursively parse an area.
SYMB is a $I placeholder symbol that gives the bounds of the area.
NONTERM is the nonterminal symbol to start with.
(fn SYMB NONTERM)
(defalias 'wisent-grammar-EXPANDFULL #[514 "\211\300\301!\235\204
\302\303\"\210\304!\305\306\"\205 \307\310\311\312\"P!\266\202\211\2036 \313\314D\315D\316D\317BBBB\207\302\320#\207" [semantic-grammar-tag-symbols start error "EXPANDFULL macro called with %s, but not used with %%start" symbol-name string-match "^[$]\\([1-9][0-9]*\\)$" intern "$region" match-string 1 semantic-parse-region car cdr quote (1) "Invalid form (EXPANDFULL %s %s)"] 9 (#$ . 1475)])
#@208 Expand call to TAG grammar macro.
Return the form to create a generic semantic tag.
See the function `semantic-tag' for the meaning of arguments NAME,
CLASS and ATTRIBUTES.
(fn NAME CLASS &rest ATTRIBUTES)
(defalias 'wisent-grammar-TAG #[642 "\300\301BBBD\207" [wisent-raw-tag semantic-tag] 8 (#$ . 2176)])
#@267 Expand call to VARIABLE-TAG grammar macro.
Return the form to create a semantic tag of class variable.
See the function `semantic-tag-new-variable' for the meaning of
arguments NAME, TYPE, DEFAULT-VALUE and ATTRIBUTES.
(fn NAME TYPE DEFAULT-VALUE &rest ATTRIBUTES)
(defalias 'wisent-grammar-VARIABLE-TAG #[899 "\300\301BBBBD\207" [wisent-raw-tag semantic-tag-new-variable] 10 (#$ . 2494)])
#@257 Expand call to FUNCTION-TAG grammar macro.
Return the form to create a semantic tag of class function.
See the function `semantic-tag-new-function' for the meaning of
arguments NAME, TYPE, ARG-LIST and ATTRIBUTES.
(fn NAME TYPE ARG-LIST &rest ATTRIBUTES)
(defalias 'wisent-grammar-FUNCTION-TAG #[899 "\300\301BBBBD\207" [wisent-raw-tag semantic-tag-new-function] 10 (#$ . 2896)])
#@260 Expand call to TYPE-TAG grammar macro.
Return the form to create a semantic tag of class type.
See the function `semantic-tag-new-type' for the meaning of arguments
NAME, TYPE, MEMBERS, PARENTS and ATTRIBUTES.
(fn NAME TYPE MEMBERS PARENTS &rest ATTRIBUTES)
(defalias 'wisent-grammar-TYPE-TAG #[1156 "\300\301BBBBBD\207" [wisent-raw-tag semantic-tag-new-type] 12 (#$ . 3288)])
#@249 Expand call to INCLUDE-TAG grammar macro.
Return the form to create a semantic tag of class include.
See the function `semantic-tag-new-include' for the meaning of
arguments NAME, SYSTEM-FLAG and ATTRIBUTES.
(fn NAME SYSTEM-FLAG &rest ATTRIBUTES)
(defalias 'wisent-grammar-INCLUDE-TAG #[642 "\300\301BBBD\207" [wisent-raw-tag semantic-tag-new-include] 8 (#$ . 3683)])
#@239 Expand call to PACKAGE-TAG grammar macro.
Return the form to create a semantic tag of class package.
See the function `semantic-tag-new-package' for the meaning of
arguments NAME, DETAIL and ATTRIBUTES.
(fn NAME DETAIL &rest ATTRIBUTES)
(defalias 'wisent-grammar-PACKAGE-TAG #[642 "\300\301BBBD\207" [wisent-raw-tag semantic-tag-new-package] 8 (#$ . 4062)])
#@230 Expand call to CODE-TAG grammar macro.
Return the form to create a semantic tag of class code.
See the function `semantic-tag-new-code' for the meaning of arguments
NAME, DETAIL and ATTRIBUTES.
(fn NAME DETAIL &rest ATTRIBUTES)
(defalias 'wisent-grammar-CODE-TAG #[642 "\300\301BBBD\207" [wisent-raw-tag semantic-tag-new-code] 8 (#$ . 4431)])
#@264 Expand call to ALIAS-TAG grammar macro.
Return the form to create a semantic tag of class alias.
See the function `semantic-tag-new-alias' for the meaning of arguments
NAME, ALIASCLASS, DEFINITION and ATTRIBUTES.
(fn NAME ALIASCLASS DEFINITION &rest ATTRIBUTES)
(defalias 'wisent-grammar-ALIAS-TAG #[899 "\300\301BBBBD\207" [wisent-raw-tag semantic-tag-new-alias] 10 (#$ . 4785)])
#@143 Expand call to EXPANDTAG grammar macro.
Return the form to produce a list of cooked tags from raw form of
Semantic tag RAW-TAG.
(fn RAW-TAG)
(defalias 'wisent-grammar-EXPANDTAG #[257 "\300D\207" [wisent-cook-tag] 3 (#$ . 5178)])
#@170 Expand call to AST-ADD grammar macro.
Return the form to update the abstract syntax tree AST with NODES.
See also the function `semantic-ast-add'.
(fn AST &rest NODES)
(defalias 'wisent-grammar-AST-ADD #[385 "\300BB\207" [semantic-ast-add] 5 (#$ . 5416)])
#@170 Expand call to AST-PUT grammar macro.
Return the form to update the abstract syntax tree AST with NODES.
See also the function `semantic-ast-put'.
(fn AST &rest NODES)
(defalias 'wisent-grammar-AST-PUT #[385 "\300BB\207" [semantic-ast-put] 5 (#$ . 5682)])
#@174 Expand call to AST-GET grammar macro.
Return the form to get, from the abstract syntax tree AST, the value
of NODE.
See also the function `semantic-ast-get'.
(fn AST NODE)
(defalias 'wisent-grammar-AST-GET #[514 "\300E\207" [semantic-ast-get] 5 (#$ . 5948)])
#@182 Expand call to AST-GET1 grammar macro.
Return the form to get, from the abstract syntax tree AST, the first
value of NODE.
See also the function `semantic-ast-get1'.
(fn AST NODE)
(defalias 'wisent-grammar-AST-GET1 #[514 "\300E\207" [semantic-ast-get1] 5 (#$ . 6217)])
#@200 Expand call to AST-GET-STRING grammar macro.
Return the form to get, from the abstract syntax tree AST, the value
of NODE as a string.
See also the function `semantic-ast-get-string'.
(fn AST NODE)
(defalias 'wisent-grammar-AST-GET-STRING #[514 "\300E\207" [semantic-ast-get-string] 5 (#$ . 6496)])
#@167 Expand call to AST-MERGE grammar macro.
Return the form to merge the abstract syntax trees AST1 and AST2.
See also the function `semantic-ast-merge'.
(fn AST1 AST2)
(defalias 'wisent-grammar-AST-MERGE #[514 "\300E\207" [semantic-ast-merge] 5 (#$ . 6805)])
#@284 Expand call to SKIP-BLOCK grammar macro.
Return the form to skip a parenthesized block.
Optional argument SYMB is a $I placeholder symbol that gives the
bounds of the block to skip. By default, skip the block at `$1'.
See also the function `wisent-skip-block'.
(fn &optional SYMB)
(defalias 'wisent-grammar-SKIP-BLOCK #[256 "\300\203% \301!\302\303\"\205 \304\305\306\307\"P!\266\202\211\262\204% \310\311\"\210\312D\207" [nil symbol-name string-match "^[$]\\([1-9][0-9]*\\)$" intern "$region" match-string 1 error "Invalid form (SKIP-BLOCK %s)" wisent-skip-block] 9 (#$ . 7071)])
#@130 Expand call to SKIP-TOKEN grammar macro.
Return the form to skip the lookahead token.
See also the function `wisent-skip-token'.
(defalias 'wisent-grammar-SKIP-TOKEN #[0 "\300\207" [(wisent-skip-token)] 1 (#$ . 7670)])
#@56 Return associativity and precedence level definitions.
(defalias 'wisent-grammar-assocs #[0 "\300\301\302p!\303\203# @\211A@\262\304=\203 @B\262A\262\202 \211\237\266\202\"\207" [mapcar #[257 "\300\211@\262!\301\302\303\304\3058\262\"\266\202\"B\207" [intern mapcar semantic-grammar-item-value :value plist-get 2] 10 "\n\n(fn TAG)"] semantic-something-to-tag-table nil assoc] 6 (#$ . 7895)])
#@99 Return the list of terminal symbols.
Keep order of declaration in the WY file without duplicates.
(defalias 'wisent-grammar-terminals #[0 "\300C\301\302\303\"\304p\305!\300\203% @!\203 @B\262A\262\202
\211\237\266\204\"\210\211\242\237\207" [nil mapc make-closure #[257 "\301\302\303\300\"\211@\262\304\305\3068\262\"\266\202B\"\207" [V0 mapcar make-closure #[257 "\301!\211\300\242\235\203
\300\242\207\300\300\242B\240\207" [V0 intern] 5 "\n\n(fn NAME)"] :rest plist-get 2] 10 "\n\n(fn TAG)"] #[257 "\211\211A@\262\300>\207" [(token keyword)] 3 "\n\n(fn TAG)"] semantic-something-to-tag-table] 9 (#$ . 8310)])
(defvar wisent--grammar-macros nil)
#@103 Expand expression EXPR into a form without grammar macros.
Return the expanded expression.
(fn EXPR)
(defalias 'wisent-grammar-expand-macros #[257 "\211:\203 \211@\3011 \302!\302\303!=0\262\202 \210\304\262\203 \207\305\306\"\211@\236\211\2033 \307AA\"\207\207" [wisent--grammar-macros (error) indirect-function quote nil mapcar wisent-grammar-expand-macros apply] 6 (#$ . 8988)])
#@50 Return the list form of nonterminal definitions.
(defalias 'wisent-grammar-nonterminals #[0 "\302p!\303\203! @\211A@\262\304=\203 @B\262A\262\202 \211\237\266\202\305 \303\211\211\211\211\211\211\211\211 \n\203<\306@!\262 \303\262\203\"@\307\310\3118\262\"\266\202\262@\312\310\3118\262\"\266\202\262@\313\310\3118\262\"\266\202\262\303\262\203\304 \203\300 @\262A\262:\203\233 \314\315@!!\202\265 \316 \"\203\260 \315\317\320\321OP!\262\202\265 \322!\262\262B\262\202\201 \237\262\211\203\346 \323\316 \"\203\336 \315\317\320\321OP!\262\202\343 \322!\262!\262\203\361 \314\315!!\262\203\211\203 E\202D\202\211\203D\202C\262B\262A\262 \202B \322@\211@\262!\237BB\262\nA\262\2023 \237)\207" [wisent--grammar-macros semantic-grammar-lex-c-char-re semantic-something-to-tag-table nil nonterminal semantic-grammar-macros semantic-tag-components :value plist-get 2 :prec :expr wisent-grammar-expand-macros read string-match "?" 1 -1 intern vector] 18 (#$ . 9388)])
#@35 Return Elisp form of the grammar.
(defalias 'wisent-grammar-grammar #[0 "\300 \301 \302 BB\207" [wisent-grammar-terminals wisent-grammar-nonterminals wisent-grammar-assocs] 6 (#$ . 10466)])
#@39 Return the value of the parser table.
(defalias 'wisent-grammar-parsetable-builder #[0 "\300\301 \302\303!E\207" [wisent-compiled-grammar wisent-grammar-grammar semantic-grammar-tag-symbols start] 4 (#$ . 10665)])
#@31 Return the parser setup code.
(defalias 'wisent-grammar-setupcode-builder #[0 "\301\302\303P\304 \305P\306P%\207" [semantic--grammar-package format "(semantic-install-function-overrides\n '((semantic-parse-stream . wisent-parse-stream)))\n (setq semantic-parser-name \"LALR\"\n semantic--parse-table %s\n semantic-debug-parser-source %S\n semantic-flex-keywords-obarray %s\n semantic-lex-types-obarray %s)\n ;; Collect unmatched syntax lexical tokens\n (add-hook 'wisent-discarding-token-functions\n #'wisent-collect-unmatched-syntax nil t)" "--parse-table" buffer-name "--keyword-table" "--token-table"] 7 (#$ . 10885)])
#@84 WY mode specific grammar menu.
Menu items are appended to the common grammar menu.
(defvar wisent-grammar-menu '("WY Grammar" ["LALR Compiler Verbose" wisent-toggle-verbose-flag :style toggle :active (boundp 'wisent-verbose-flag) :selected (and (boundp 'wisent-verbose-flag) wisent-verbose-flag)]) (#$ . 11579))
(defvar wisent-grammar-mode-hook nil)
(byte-code "\300\301N\204\f \302\300\301\303#\210\304\305!\204 \302\305\306\307#\210\300\207" [wisent-grammar-mode-hook variable-documentation put "Hook run after entering WY mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp wisent-grammar-mode-map definition-name wisent-grammar-mode] 4)
(defvar wisent-grammar-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204 \303\301\302\304\305!#\210\306\307!\204 \303\307\310\311#\210\312\313 !\210\307\302N\204- \303\307\302\304\314!#\210\306\300!\204B \303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P \303\300\302\304\320!#\210\303\311\321\322#\207" [wisent-grammar-mode-abbrev-table wisent-grammar-mode-map variable-documentation put purecopy "Keymap for `wisent-grammar-mode'." boundp wisent-grammar-mode-syntax-table definition-name wisent-grammar-mode (lambda (#1=#:def-tmp-var) (defvar wisent-grammar-mode-syntax-table #1#)) make-syntax-table "Syntax table for `wisent-grammar-mode'." (lambda (#1#) (defvar wisent-grammar-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `wisent-grammar-mode'." derived-mode-parent semantic-grammar-mode] 5)
#@259 Major mode for editing Wisent grammars.
In addition to any hooks its parent mode `semantic-grammar-mode' might
have run, this mode runs the hook `wisent-grammar-mode-hook', as the
final or penultimate step during initialization.
\{wisent-grammar-mode-map}
(defalias 'wisent-grammar-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203 \314\311\313\310\313N#\210\315!\204'