%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/cedet/semantic/wisent/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/cedet/semantic/wisent/python.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file contains utf-8 non-ASCII characters,
;;; and so cannot be loaded into Emacs 22 or earlier.
(and (boundp 'emacs-version)
     (< (aref emacs-version (1- (length emacs-version))) ?A)
     (string-lessp emacs-version "23")
     (error "`%s' was compiled for Emacs 23 or later" #$))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302\303\304#\210\300\305!\210\300\306!\210\300\307!\210\300\310!\210\300\311!\210\300\312!\207" [require rx python nil t semantic/wisent semantic/wisent/python-wy semantic/find semantic/dep semantic/ctxt semantic/format] 4)
#@68 Evaluate some Python code that determines the system include path.
(defalias 'semantic-python-get-system-include-path #[nil "\300\301\302\303\304\305\306!\307\310#\"\"\207" [delq nil mapcar #[(dir) "\301!\205\207" [dir file-directory-p] 2] split-string python-shell-internal-send-string "import sys;print ('\\n'.join(sys.path))" "\n" t] 8 (#$ . 662)])
(byte-code "\305\300\306\307\310\311\310\312\313\314\315\316&\210\317\320	BC\321\322#\210\323\324\322\"\210)\325\320\322\326!\327\204?\n\211\262\204?\262\f\205=\330\f\"\262\203j\211\204j\304N\203Y\330\304N\"\211\262\204?\211\331N\206c\211\332N\262\262\202?\266\203\333\334#\210\325\320\322\300#\207" [semantic-python-dependency-system-include-path #3=#:tmp0 mode-local-active-mode major-mode mode-local-symbol-table custom-declare-variable (when (and (featurep 'python) (not noninteractive)) (semantic-python-get-system-include-path)) "The system include path used by Python language." :group python semantic :type (repeat (directory :tag "Directory")) :set #[(sym val) "\303	\"\210	\304\305\nBC\306\307#\210\310\311\307\"\210)\312\313!\205 \310\313\307\"\207" [sym val #1=#:tmp0 set-default mode-local-bind semantic-dependency-system-include-path #2=(mode-variable-flag t) python-mode mode-local-map-mode-buffers #[nil "\302\301!\210\211\207" [#1# semantic-dependency-system-include-path make-local-variable] 2] fboundp semantic-decoration-unparsed-include-do-reset] 4] mode-local-bind semantic-dependency-system-include-path #2# python-mode mode-local-map-mode-buffers #[nil "\302\301!\210\211\207" [#3# semantic-dependency-system-include-path make-local-variable] 2] put symbol-name nil intern-soft mode-local-parent derived-mode-parent variable-documentation "System path to search for include files."] 12)
#@47 Regexp matching beginning of a Python string.
(defconst wisent-python-string-start-re "[uU]?[rR]?['\"]" (#$ . 2469))
#@43 Regexp matching a complete Python string.
(defconst wisent-python-string-re "[Uu]?[Rr]?\\(?:'''\\(?:\\\\'\\|[^']\\|'\\{1,2\\}[^']\\)*'''\\|'\\(?:\\\\'\\|[^']\\)*'\\|\"\"\"\\(?:\\\\\"\\|[^\"]\\|\"\\{1,2\\}[^\"]\\)*\"\"\"\\|\"\\(?:\\\\\"\\|[^\"]\\)*\"\\)" (#$ . 2592))
#@67 Non-nil when expanding a paren block for Python lexical analyzer.
(defvar wisent-python-EXPANDING-block nil (#$ . 2865))
#@134 Return non-nil if implicit line joining is active.
That is, if inside an expression in parentheses, square brackets or
curly braces.
(defalias 'wisent-python-implicit-line-joining-p #[nil "\207" [wisent-python-EXPANDING-block] 1 (#$ . 2993)])
#@54 Move point at the end of the Python string at point.
(defalias 'wisent-python-forward-string #[nil "\303!\203\"\304\224\304\225	\nZ\305U\203\303\306!\203\307\310!\210	b*\207\307\310!\207" [wisent-python-string-re end start looking-at 0 2 "\"\\{3\\}\\|'\\{3\\}" error "unterminated syntax"] 2 (#$ . 3243)])
(put 'wisent-python-forward-string 'byte-optimizer 'byte-compile-inline-expand)
#@278 Move point to the end of the balanced expression at point.
Here “balanced expression” means anything matched by Emacs's
open/close parenthesis syntax classes.  We can't use forward-sexp
for this because that Emacs built-in can't parse Python's
triple-quoted string syntax.
(defalias 'wisent-python-forward-balanced-expression #[nil "\305`!A\306u\210m\204k`f=\204k\307	!\203D\307\n!\203=\310\224\310\225\fZ\311U\2037\307\312!\2037\313\314!\210b*\202@\313\314!\210\202\307\315!\203P\316\210\202\307\317!\203\\\320 \210\202\321\322!\310U\203\313\323!\210\202\306u)\207" [end-char wisent-python-string-start-re wisent-python-string-re end start syntax-after 1 looking-at 0 2 "\"\\{3\\}\\|'\\{3\\}" error "unterminated syntax" "\\s<" nil "\\s(" wisent-python-forward-balanced-expression skip-syntax-forward "-w_.$\\>" "can't figure out how to go forward from here"] 2 (#$ . 3644)])
#@385 Move point to the beginning of the next logical line.
Usually this is simply the next physical line unless strings,
implicit/explicit line continuation, blank lines, or comment lines are
encountered.  This function skips over such items so that the point is
at the beginning of the next logical line.  If the current logical
line ends at the end of the buffer, leave the point there.
(defalias 'wisent-python-forward-line #[nil "l\204j`\304!\2036\304	!\203/\305\224\305\225\nZ\306U\203)\304\307!\203)\310\311!\210\nb*\2022\310\311!\210\202^\304\312!\203B\313\210\202^\304\314!\203N\315 \210\202^\304\316!\203Z\317y\210\202^\320\321!\210`U\203\310\322!\210\202\323d!\210m\206t\324 \207" [wisent-python-string-start-re wisent-python-string-re end start looking-at 0 2 "\"\\{3\\}\\|'\\{3\\}" error "unterminated syntax" "\\s<" nil "\\s(" wisent-python-forward-balanced-expression "\\s\\" 1 skip-syntax-forward "-w_.$)" "python-forward-line endless loop detected" forward-comment beginning-of-line] 3 (#$ . 4558)])
#@165 Move point to the next logical line, skipping indented lines.
That is the next line whose indentation is less than or equal to
the indentation of the current line.
(defalias 'wisent-python-forward-line-skip-indented #[nil "\301 \302 \210m?\205\301 V\205\202)\207" [indent current-indentation wisent-python-forward-line] 2 (#$ . 5599)])
#@45 Move point to the end of the current block.
(defalias 'wisent-python-end-of-block #[nil "\301 m\204\301 Y\203\302 \210\202\303d[!\210n\206\304y)\207" [indent current-indentation wisent-python-forward-line-skip-indented forward-comment 1] 2 (#$ . 5949)])
#@67 Detect and create Python indentation tokens at beginning of line.
(defvar wisent-python-lex-beginning-of-line nil (#$ . 6219))
(defalias 'wisent-python-lex-beginning-of-line #[nil "\300\207" [nil] 1])
(byte-code "\301\300\302M\207" [wisent-python-lex-beginning-of-line ((and (bolp) (not (wisent-python-implicit-line-joining-p)) (let ((last-indent (car wisent-python-indent-stack)) (last-pos (point)) (curr-indent (current-indentation))) (skip-syntax-forward #1="-") (cond ((or (eolp) (looking-at semantic-lex-comment-regex)) (forward-comment (point-max)) (or (eobp) (beginning-of-line)) (setq semantic-lex-end-point (point)) t) ((= curr-indent last-indent) (setq semantic-lex-end-point (point)) nil) ((> curr-indent last-indent) (if (or (not semantic-lex-maximum-depth) (< semantic-lex-current-depth semantic-lex-maximum-depth)) (progn (setq semantic-lex-current-depth (1+ semantic-lex-current-depth)) (push curr-indent wisent-python-indent-stack) (semantic-lex-push-token (semantic-lex-token 'INDENT last-pos (point)))) (semantic-lex-push-token (semantic-lex-token 'INDENT_BLOCK (progn (beginning-of-line) (point)) (semantic-lex-unterminated-syntax-protection 'INDENT_BLOCK (wisent-python-end-of-block) (point))))) t) ((progn (while (< curr-indent last-indent) (pop wisent-python-indent-stack) (setq semantic-lex-current-depth (1- semantic-lex-current-depth) last-indent (car wisent-python-indent-stack)) (semantic-lex-push-token (semantic-lex-token 'DEDENT last-pos (point)))) (= last-pos (point))) nil))))) #[nil "\306``dB\307n\203\"\310 \204\"@`\311 \312\313!\210l\2040\314!\203@\315d!\210m\204;\316 \210`\202!U\203M`\202!V\203\344	\203_\n	W\203\217\nTB\317`BB
B\211@\211\211A@\247\204\204\211AA\262\202\210\211A\262A\262\202!\320\316 \210`\203\245\203\245\321 \210`\202\302\3221\261\321 \210`0\202\302\210\320@A#b\210`\211\262BB
B\211@\211\211A@\247\204\331\211AA\262\202\335\211A\262A\262\202!W\203!\211A\210\nS@\323`BB
B\211@\211\211A@\247\204\211AA\262\202\211A\262A\262\202\344+
-\207" [semantic-lex-depth semantic-lex-maximum-depth semantic-lex-current-depth semantic-lex-analysis-bounds semantic-lex-end-point semantic-lex-token-stream nil 0 wisent-python-implicit-line-joining-p current-indentation skip-syntax-forward #1# looking-at forward-comment beginning-of-line INDENT INDENT_BLOCK wisent-python-end-of-block (error) DEDENT wisent-python-indent-stack curr-indent last-pos last-indent semantic-lex-comment-regex debug-on-error semantic-lex-debug-analyzers semantic-lex-unterminated-syntax-end-function] 8 "Detect and create Python indentation tokens at beginning of line."]] 2)
#@141 Detect and create Python newline tokens.
Just skip the newline character if the following line is an implicit
continuation of current line.
(defvar wisent-python-lex-end-of-line nil (#$ . 8926))
(defalias 'wisent-python-lex-end-of-line #[nil "\300\207" [nil] 1])
(byte-code "\301\300\302M\207" [wisent-python-lex-end-of-line ((looking-at #1="\\(\n\\|\\s>\\)") (if (wisent-python-implicit-line-joining-p) (setq semantic-lex-end-point (match-end 0)) (semantic-lex-push-token (semantic-lex-token 'NEWLINE (point) (match-end 0))))) #[nil "\306``dB\307\310\311!\203@\312 \203\307\225\202@\313`\307\225BB
B\211@\211\211A@\247\2048\211AA\262\202<\211A\262A\262
-\207" [semantic-lex-depth semantic-lex-maximum-depth semantic-lex-current-depth semantic-lex-analysis-bounds semantic-lex-end-point semantic-lex-token-stream nil 0 looking-at #1# wisent-python-implicit-line-joining-p NEWLINE] 6 "Detect and create Python newline tokens.\nJust skip the newline character if the following line is an implicit\ncontinuation of current line."]] 2)
#@41 Detect and create python string tokens.
(defvar wisent-python-lex-string nil (#$ . 9983))
(defalias 'wisent-python-lex-string #[nil "\300\207" [nil] 1])
(byte-code "\301\300\302M\207" [wisent-python-lex-string ((looking-at wisent-python-string-start-re) (semantic-lex-push-token (semantic-lex-token 'STRING_LITERAL (point) (semantic-lex-unterminated-syntax-protection 'STRING_LITERAL (wisent-python-forward-string) (point))))) #[nil "\306``dB\307\310!\203\270\311`\203Q\203Q\310!\203I\307\224\307\225Z\312U\203B\310\313!\203B\314\315!\210b*\202L\314\315!\210`\202\231\3161\210\310!\203\307\224\307\225Z\312U\203x\310\313!\203x\314\315!\210b*\202\202\314\315!\210`0\202\231\210\311@A#b\210`\211\262BB
B\211@\211\211A@\247\204\260\211AA\262\202\264\211A\262A\262
-\207" [semantic-lex-depth semantic-lex-maximum-depth semantic-lex-current-depth semantic-lex-analysis-bounds semantic-lex-end-point semantic-lex-token-stream nil 0 looking-at STRING_LITERAL 2 "\"\\{3\\}\\|'\\{3\\}" error "unterminated syntax" (error) wisent-python-string-start-re debug-on-error semantic-lex-debug-analyzers wisent-python-string-re end start semantic-lex-unterminated-syntax-end-function] 8 "Detect and create python string tokens."]] 2)
#@179 Detect and skip over backslash (explicit line joining) tokens.
A backslash must be the last token of a physical line, it is illegal
elsewhere on a line outside a string literal.
(defvar wisent-python-lex-ignore-backslash nil (#$ . 11273))
(defalias 'wisent-python-lex-ignore-backslash #[nil "\300\207" [nil] 1])
(byte-code "\301\300\302M\207" [wisent-python-lex-ignore-backslash ((looking-at #1="\\s\\\\s-*$") (forward-line) (skip-syntax-forward #2="-") (setq semantic-lex-end-point (point))) #[nil "\306``dB\307\310\311!\203\306y\210\312\313!\210`
-\207" [semantic-lex-depth semantic-lex-maximum-depth semantic-lex-current-depth semantic-lex-analysis-bounds semantic-lex-end-point semantic-lex-token-stream nil 0 looking-at #1# skip-syntax-forward #2#] 5 "Detect and skip over backslash (explicit line joining) tokens.\nA backslash must be the last token of a physical line, it is illegal\nelsewhere on a line outside a string literal."]] 2)
#@76 Lexical Analyzer for Python code.
See `semantic-lex' for more information.
(defalias 'wisent-python-lexer #[(start end &optional depth length) "\306\307\310	\n#\210`\306\211	@	A\311BC\206DE	\nBF\306G\ndV\2034\312\313\nd#\210\314 pHI\315\216\316J!\210	b\210`\nW\203{K\203X\fGKX\203{n\203\213\317 \204\213L@`\320 MNO\321\322!\210l\204|\323P!\203\216\324d!\210m\204\207\325 \210`A\326\202\207MOU\203\235`A\306\202\207MOV\203?E\203\262BEW\203\345BTBMLBL\327N`BB\fB\211@\211\211A@\247\204\331\211AA\262\202\335\211A\262A\262A\202;\330\325 \210`Q\203\373R\203\373\331 \210`\202\3321\331 \210`0\202\210\330SF@FA#b\210`\211A\262BB\fB\211@\211\211A@\247\2042\211AA\262\2026\211A\262A\262A\326\202\207MOW\203L\211AL\210BSBL@O\333N`BB\fB\211@\211\211A@\247\204s\211AA\262\202w\211A\262A\262A\202?N`U\205\207\306+\204\376\323\334!\203\304\317 \203\235\311\225A\202\376\335`\311\225BB\fB\211@\211\211A@\247\204\270\211AA\262\202\274\211A\262A\262A\202\376\323T!\203m\336`Q\203R\203\323U!\203\374\311\224\311\225\n	Z\337U\203\366\323\340!\203\366\312\341!\210\nb*\202\377\312\341!\210`\202J\34216\323U!\203-\311\224\311\225\n	Z\337U\203'\323\340!\203'\312\341!\210\nb*\2020\312\341!\210`0\202J\210\336SF@FA#b\210`\211A\262BB\fB\211@\211\211A@\247\204a\211AA\262\202e\211A\262A\262A\202\376\323V!\203\234\343\311\224\311\225BB\fB\211@\211\211A@\247\204\220\211AA\262\202\224\211A\262A\262A\202\376\323\344!\203\364\345\311!\211\346W!\205\267\211;\205\267\347W\"\262\211\262\205\301\211J\262\211X\205\360X\311\224\311\225BB\fB\211@\211\211A@\247\204\346\211AA\262\202\352\211A\262A\262\211A)\204\376\323\344!\203\"\350\311\224\311\225BB\fB\211@\211\211A@\247\204\211AA\262\202\211A\262A\262A\202\376\323\351!\203\345\311!\352\306YZ[\353[Z@\"\211Y\203\340E\203MBEW\203~BTBYA@\311\224\311\225BB\fB\211@\211\211A@\247\204q\211AA\262\202u\211A\262A\262\211A\202\337Y8\311\224\212Q\203\227R\203\227\354\355!\210`\202\273\3561\244\354\355!\210`0\202\273\210\337Y8SF@FA#b\210`\211A\262)BB\fB\211@\211\211A@\247\204\323\211AA\262\202\327\211A\262A\262\211A\202\353[ZA\"\211Y\205BSBYA@\311\224\311\225BB\fB\211@\211\211A@\247\204\211AA\262\202\211A\262A\262\211A+\204\376\323\357!\203\243\345\311!\\\311\224]\311\225\211^]Z_\360`\306a_\311V\203b\361\\`\"\211a\204b_S_\362\\\311_#\\\202>a\203sa@a]_\\^a\206y\363]^BB\fB\211@\211\211A@\247\204\224\211AA\262\202\230\211A\262A\262\211A.\204\376\323\364!\203\266\306y\210\321\322!\210`A\202\376\323\365!\203\303\311\225A\202\376\323P!\203\372`b\324\355!\210`b=\203\341\321\366\367 \"\210\202\350n\203\350\370u\210`b=\203\363\312\371!\210`A)\202\376\312\372!\210A@=\203\312\373@\f@#\210A@Ab\210c\203:\374 \2042r\375d!q\210\212db\210\376 *\203:\377c\201h\"\210\f@e\205v\306C\201i\311\201j\201k\201l!\201m\"\337$\216\203e\211\201n!\240\210\201o\201p\201qB#!)\262\266\202E+
\203\276
\211A\242\211f\211g\203\250\201r\201sg@gA@#\210
\211A\242\211g\204\216f@SF@FA#b\210`\211A\266*b\210\f\237.	\207" [semantic-lex-block-streams start end starting-position semantic-lex-token-stream semantic-lex-block-stack nil run-hook-with-args semantic-lex-reset-functions 0 error "wisent-python-lexer: end (%d) > point-max (%d)" syntax-table #[nil "rq\210\302	!)\207" [#1=#:buffer #2=#:table set-syntax-table] 2] set-syntax-table wisent-python-implicit-line-joining-p current-indentation skip-syntax-forward "-" looking-at forward-comment beginning-of-line t INDENT INDENT_BLOCK wisent-python-end-of-block (error) DEDENT "\\(\n\\|\\s>\\)" NEWLINE STRING_LITERAL 2 "\"\\{3\\}\\|'\\{3\\}" "unterminated syntax" (error) NUMBER_LITERAL "\\(\\sw\\|\\s_\\)+" match-string obarrayp intern-soft NAME "\\s(\\|\\s)" ((("(" LPAREN PAREN_BLOCK) ("{" LBRACE BRACE_BLOCK) ("[" LBRACK BRACK_BLOCK)) (")" RPAREN) ("}" RBRACE) ("]" RBRACK)) assoc forward-list 1 (error) "\\(\\s.\\|\\s$\\|\\s'\\)+" ((AT . "@") (BACKQUOTE . "`") (ASSIGN . "=") (COMMA . ",") (SEMICOLON . ";") (COLON . ":") (BAR . "|") (TILDE . "~") (PERIOD . ".") (MINUS . "-") (PLUS . "+") (MOD . "%") (DIV . "/") (MULT . "*") (AMP . "&") (GT . ">") (LT . "<") (HAT . "^") (NE . "!=") (LTGT . "<>") (HATEQ . "^=") (OREQ . "|=") (AMPEQ . "&=") (MODEQ . "%=") (DIVEQ . "/=") (MULTEQ . "*=") (MINUSEQ . "-=") (PLUSEQ . "+=") (LE . "<=") (GE . ">=") (EQ . "==") (EXPONENT . "**") (GTGT . ">>") (LTLT . "<<") (DIVDIV . "//") (DIVDIVEQ . "//=") (EXPEQ . "**=") (GTGTEQ . ">>=") (LTLTEQ . "<<=")) rassoc substring punctuation "\\s\\\\s-*$" "\\s-+" "-.'" point-at-eol -1 "Strange comment syntax prevents lexical analysis" "Unmatched Text during Lexical Analysis" "wisent-python-lexer: endless loop at %d, after %S" input-pending-p marker-buffer accept-process-output throw tmp-start semantic-lex-end-point semantic-lex-current-depth depth semantic-lex-depth semantic-lex-maximum-depth semantic-lex-analysis-bounds parse-sexp-lookup-properties #1# #2# semantic-lex-syntax-table length wisent-python-indent-stack curr-indent last-pos last-indent semantic-lex-comment-regex debug-on-error semantic-lex-debug-analyzers semantic-lex-unterminated-syntax-end-function wisent-python-string-start-re wisent-python-string-re semantic-lex-number-expression semantic-flex-keywords-obarray #3=#:key #4=#:elt #5=#:lst #6=#:val #7=#:val #8=#:pos #9=#:end #10=#:len #11=#:lst #12=#:elt comment-start-point semantic-current-input-throw-symbol semantic--on-input-start-marker semantic-lex-debug last blk lex make-byte-code "\300\242\205	\301\300\242!\207" vconcat vector [delete-overlay] semantic-lex-highlight-token read-event format "%S :: Depth: %d :: SPC - continue" message "wisent-python-lexer: `%s' block from %S is unterminated"] 9 (#$ . 12232)])
#@142 Move a docstring from TAG's members into its :documentation attribute.
Set attributes for constructors, special, private and static methods.
(defalias 'wisent-python-reconstitute-function-tag #[(tag suite) "@\306	!\203+\n\307\310	!\211\211AA)\211:\203(
\311\312
@\f#!\240\210\n,\210)\n\211\313\314\n\315\n8)\f\"+G\316V\203|\n\211\313\314\n\315\n8)\f\"+@\211@)\317\230\203|\n\320\321\211\211AA)\211:\203y
\311\312
@\f#!\240\210\n,\210\n\211@)\322\230\203\311\n\323\324\211\211AA)\211:\203\243
\311\312
@\f#!\240\210\n,\210\n\325\211\211AA)\211:\203\303
\311\312
@\f#!\240\210\n,\210\202\326\n!\203\362\n\327\324\211\211AA)\211:\203\354
\311\312
@\f#!\240\210\n,\210\202\330\n!\203\n\331\332\211\211AA)\211:\203
\311\312
@\f#!\240\210\n,\210!\"\333\n\334\314\n\315\n8)\f\"*!\335#\211$\203R$@\211@)\336\230\203I$@#B#$A\211$\2045#\237+\203\210\n\337\340\n\337\314\n\315\n8)\f\"*B\211\211AA)\211:\203\205
\311\312
@\f#!\240\210\n,\210\n\207" [suite first-statement tag value attribute plist-cdr semantic-python-docstring-p :documentation semantic-python-extract-docstring semantic-tag-make-plist plist-put :arguments plist-get 2 0 "self" :parent "dummy" "__init__" :constructor-flag t :suite semantic-python-special-p :special-flag semantic-python-private-p :protection "private" semantic-something-to-tag-table :decorators nil "staticmethod" :typemodifiers "static" semantic-case-fold case-fold-search result tags] 7 (#$ . 18201)])
#@72 Move a docstring from TAG's members into its :documentation attribute.
(defalias 'wisent-python-reconstitute-class-tag #[(tag) "\211\306\307\3108)	\"+@\311\n!\203j\306\211\306\307\3108)	\"+A\211\211AA)\211:\203E\f\312\313\f@	#!\240\210,\210\314\315\n!\211\211AA)\211:\203g\f\312\313\f@	#!\240\210,\210)\211\306\307\3108)	\"+\316\211\203d@\211\211\317\307\3108)	\"+\203[
\211\320\307\3108)	\"+@\211@)
\321\307\3108)	\"*\316\211\203Z@\322\"\203Q\323\211@)\324\"\206\356\211@)\211A@)\325\3108)!\325\3268)!\3278)\257*\306\307\3108)	\"* !\330!!\203G!\331\332\211\211AA)\211:\203D\f\312\313\f@	#!\240\210,\210\333 !!C\241\210*A\211\204\310+A\211\204\203*\207" [tag attribute first-member value plist-cdr member :members plist-get 2 semantic-python-docstring-p semantic-tag-make-plist plist-put :documentation semantic-python-extract-docstring nil :constructor-flag :arguments :suite semantic-python-instance-variable-p substring 5 copy-sequence 3 4 semantic-python-private-p :protection "private" last --dolist-tail-- self statement name members variable] 7 (#$ . 19731)])
#@190 Expand compound declarations found in TAG into separate tags.
TAG contains compound declaration if the NAME part of the tag is
a list.  In python, this can happen with `import' statements.
(defalias 'semantic-python-expand-tag #[(tag) "\211A@)\211@)\306\211\307=\205b\n<\205b\n\306\211\203]
@\f\f\f\2064\211@)\211A@)\310\3118)!\310\3128)!\3138)\257*	B
A\211\204\"*	\237\211+\207" [tag expand elts class E --dolist-tail-- nil include copy-sequence 2 3 4 name] 7 (#$ . 20945)])
#@379 Lexically analyze Python code in current buffer.
See the function `semantic-lex' for the meaning of the START, END,
DEPTH and LENGTH arguments.
This function calls `wisent-python-lexer' to actually perform the
lexical analysis, then emits the necessary Python DEDENT tokens from
what remains in the `wisent-python-indent-stack'.

Override semantic-lex in `python-mode' buffers.
(defalias 'semantic-lex-python-mode #[(start end &optional depth length) "\306C\307	\n\f$\310\n\211A\242\306V\203?\311\n\211BB\nB\211\n@\211\211A@\247\2043\211AA\262\2027\211A\262A\262\202

\n\237\244+\207" [wisent-python-indent-stack start end depth length stream 0 wisent-python-lexer nil DEDENT semantic-lex-token-stream semantic-lex-end-point] 6 (#$ . 21464)])
(byte-code "\300\301\302\303#\210\304\305\306\307#\207" [put semantic-lex-python-mode definition-name semantic-lex mode-local-bind ((semantic-lex . semantic-lex-python-mode)) (override-flag t) python-mode] 4)
#@172 Get the local variables based on point's context.
To be implemented for Python!  For now just return nil.

Override semantic-get-local-variables in `python-mode' buffers.
(defalias 'semantic-get-local-variables-python-mode #[nil "\300\207" [nil] 1 (#$ . 22441)])
(byte-code "\300\301\302\303#\210\304\305\306\307#\207" [put semantic-get-local-variables-python-mode definition-name semantic-get-local-variables mode-local-bind ((semantic-get-local-variables . semantic-get-local-variables-python-mode)) (override-flag t) python-mode] 4)
#@117 Return a suitable path for (some) Python imports.

Override semantic-tag-include-filename in `python-mode' buffers.
(defalias 'semantic-tag-include-filename-python-mode #[(tag) "\211@)\302\303\304	\305\"\306#\307P)\207" [tag name mapconcat identity split-string "\\." "/" ".py"] 6 (#$ . 22984)])
(byte-code "\300\301\302\303#\210\304\305\306\307#\207" [put semantic-tag-include-filename-python-mode definition-name semantic-tag-include-filename mode-local-bind ((semantic-tag-include-filename . semantic-tag-include-filename-python-mode)) (override-flag t) python-mode] 4)
#@311 Return the current function call the cursor is in at POINT.
The function returned is the one accepting the arguments that
the cursor is currently in.  It will not return function symbol if the
cursor is on the text representing that function.

Override semantic-ctxt-current-function in `python-mode' buffers.
(defalias 'semantic-ctxt-current-function-python-mode #[(&optional point) "\300\207" [nil] 1 (#$ . 23567)])
(byte-code "\300\301\302\303#\210\304\305\306\307#\207" [put semantic-ctxt-current-function-python-mode definition-name semantic-ctxt-current-function mode-local-bind ((semantic-ctxt-current-function . semantic-ctxt-current-function-python-mode)) (override-flag t) python-mode] 4)
#@220 Return the current assignment near the cursor at POINT.
Return a list as per `semantic-ctxt-current-symbol'.
Return nil if there is nothing relevant.

Override semantic-ctxt-current-assignment in `python-mode' buffers.
(defalias 'semantic-ctxt-current-assignment-python-mode #[(&optional point) "\300\207" [nil] 1 (#$ . 24273)])
(byte-code "\300\301\302\303#\210\304\305\306\307#\207" [put semantic-ctxt-current-assignment-python-mode definition-name semantic-ctxt-current-assignment mode-local-bind ((semantic-ctxt-current-assignment . semantic-ctxt-current-assignment-python-mode)) (override-flag t) python-mode] 4)
#@159 Format an abbreviated tag for python.
Shortens `code' tags, but passes through for others.

Override semantic-format-tag-abbreviate in `python-mode' buffers.
(defalias 'semantic-format-tag-abbreviate-python-mode #[(tag &optional parent color) "\305\211\211A@)	*=\203'\211@)\306\307\n\"\203$\310\n\311\211\224#\n)\207\312\f#\207" [tag class name parent color code string-match "\n" substring 0 semantic-format-tag-abbreviate-default] 5 (#$ . 24898)])
(byte-code "\300\301\302\303#\210\304\305\306\307#\207" [put semantic-format-tag-abbreviate-python-mode definition-name semantic-format-tag-abbreviate mode-local-bind ((semantic-format-tag-abbreviate . semantic-format-tag-abbreviate-python-mode)) (override-flag t) python-mode] 4)
#@25 Setup buffer for parse.
(defalias 'wisent-python-default-setup #[nil "\306 \210\307\300!\210\310	\204\307\301!\210\311\312\313\314\315\316\317\211\207" [parse-sexp-ignore-comments comment-start-skip semantic-type-relation-separator-character semantic-command-separation-character semantic-tag-expand-function imenu-create-index-function wisent-python-wy--install-parser make-local-variable t "#+\\s-*" (".") ";" semantic-python-expand-tag semantic-create-imenu-index ((variable . "Variables") (function . "Methods")) ((type . "Classes") (variable . "Variables") (function . "Functions") (include . "Imports") (package . "Package") (code . "Code")) semantic-symbol->name-assoc-list-for-type-parts semantic-symbol->name-assoc-list] 2 (#$ . 25647)])
#@82 Return non-nil if the name of TAG is a special identifier of
the form __NAME__. 
(defalias 'semantic-python-special-p #[(tag) "\301\302\211@)\"\207" [tag string-match "\\`__\\s_+__\\'"] 4 (#$ . 26412)])
#@83 Return non-nil if the name of TAG follows the convention _NAME
for private names.
(defalias 'semantic-python-private-p #[(tag) "\301\302\211@)\"\207" [tag string-match "\\`_\\s_*\\'"] 4 (#$ . 26623)])
#@112 Return non-nil if TAG is an instance variable of the instance
SELF or the instance name "self" if SELF is nil.
(defalias 'semantic-python-instance-variable-p #[(tag &optional self) "\304\211\211A@)	*=\2052\211@)\305\306\307\310\206\311\312BBB!\n\"\2051\305\313\314\n\315\"\"?)\207" [tag class name self variable string-match rx-to-string seq string-start "self" (".") "\\." substring 5] 7 (#$ . 26833)])
#@60 Return non-nil, when TAG is a Python documentation string.
(defalias 'semantic-python-docstring-p #[(tag) "\211A@)\211@)\211\303=\205\304\305	\"*\207" [tag name class code string-match "\\`\"\"\"[^z-a]*\"\"\"\\'"] 4 (#$ . 27255)])
#@58 Return the Python documentation string contained in TAG.
(defalias 'semantic-python-extract-docstring #[(tag) "\211@)\302	\303\304#)\207" [tag name substring 3 -3] 5 (#$ . 27500)])
#@46 Run `wisent-python-lexer' on current buffer.
(defalias 'wisent-python-lex-buffer #[nil "\301 \210\302ed\303#r\304\305!q\210\306 \210\307p\"\210eb\210\310p!*\207" [token-stream semantic-lex-init semantic-lex 0 get-buffer-create "*wisent-python-lexer*" erase-buffer pp pop-to-buffer] 4 (#$ . 27690) nil])
(provide 'semantic/wisent/python)

Zerion Mini Shell 1.0