;ELC ;;; Compiled ;;; in Emacs version 26.3 ;;; 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!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\210\300\307!\207" [require phps-mode-lexer phps-mode-macros phps-mode-serial semantic semantic/lex semantic/wisent subr-x] 2) #@67 Flag to tell us whether after change detection is enabled or not. (defvar phps-mode-lex-analyzer--allow-after-change-p t (#$ . 621)) (make-variable-buffer-local 'phps-mode-lex-analyzer--allow-after-change-p) #@29 The minium point of change. (defvar phps-mode-lex-analyzer--change-min nil (#$ . 835)) (make-variable-buffer-local 'phps-mode-lex-analyzer--change-min) #@50 Flag whether current buffer is processed or not. (defvar phps-mode-lex-analyzer--processed-buffer-p nil (#$ . 993)) (make-variable-buffer-local 'phps-mode-lex-analyzer--processed-buffer-p) #@29 Timer object of idle timer. (defvar phps-mode-lex-analyzer--idle-timer nil (#$ . 1188)) (make-variable-buffer-local 'phps-mode-lex-analyzer--idle-timer) #@50 The Imenu alist for current buffer, nil if none. (defvar phps-mode-lex-analyzer--imenu nil (#$ . 1347)) (make-variable-buffer-local 'phps-mode-lex-analyzer--imenu) #@54 The indentation of each line in buffer, nil if none. (defvar phps-mode-lex-analyzer--lines-indent nil (#$ . 1517)) (make-variable-buffer-local 'phps-mode-lex-analyzer--lines-indent) #@41 Bookkeeping of all variables in tokens. (defvar phps-mode-lex-analyzer--bookkeeping nil (#$ . 1705)) (make-variable-buffer-local 'phps-mode-lex-analyzer--bookkeeping) #@16 Latest tokens. (defvar phps-mode-lex-analyzer--tokens nil (#$ . 1878)) (make-variable-buffer-local 'phps-mode-lex-analyzer--tokens) #@15 Latest state. (defvar phps-mode-lex-analyzer--state nil (#$ . 2016)) (make-variable-buffer-local 'phps-mode-lex-analyzer--state) #@21 Latest state-stack. (defvar phps-mode-lex-analyzer--state-stack nil (#$ . 2151)) (make-variable-buffer-local 'phps-mode-lex-analyzer--state-stack) #@71 History of state, heredoc-label, stack-stack and heredoc label stack. (defvar phps-mode-lex-analyzer--states nil (#$ . 2304)) (make-variable-buffer-local 'phps-mode-lex-analyzer--states) #@23 Latest Heredoc label. (defvar phps-mode-lex-analyzer--heredoc-label nil (#$ . 2497)) (make-variable-buffer-local 'phps-mode-lex-analyzer--heredoc-label) #@29 Latest Heredoc label-stack. (defvar phps-mode-lex-analyzer--heredoc-label-stack nil (#$ . 2656)) (make-variable-buffer-local 'phps-mode-lex-analyzer--heredoc-label-stack) #@22 Nest location stack. (defvar phps-mode-lex-analyzer--nest-location-stack nil (#$ . 2833)) (make-variable-buffer-local 'phps-mode-lex-analyzer--nest-location-stack) #@24 Reset local variables. (defalias 'phps-mode-lex-analyzer--reset-local-variables #[0 "\306\307\211\307\211\307\211\307\211 \n\307\211 \f\307\211 \211\207" [phps-mode-lex-analyzer--allow-after-change-p phps-mode-lex-analyzer--bookkeeping phps-mode-lex-analyzer--change-min phps-mode-lex-analyzer--heredoc-label-stack phps-mode-lex-analyzer--idle-timer phps-mode-lex-analyzer--imenu t nil phps-mode-lex-analyzer--lines-indent phps-mode-lex-analyzer--processed-buffer-p phps-mode-lex-analyzer--state phps-mode-lex-analyzer--state-stack phps-mode-lex-analyzer--states phps-mode-lex-analyzer--tokens phps-mode-lex-analyzer--nest-location-stack] 3 (#$ . 3003)]) #@88 Do syntax coloring for region START to END with PROPERTIES. (fn START END PROPERTIES) (defalias 'phps-mode-lex-analyzer--set-region-syntax-color #[771 "\303 \304\211\304\305\306\307\310\311!\312\"\313$\216\314#,\207" [buffer-undo-list inhibit-read-only inhibit-modification-hooks buffer-modified-p t make-byte-code 0 "\300?\205\301\302!\207" vconcat vector [restore-buffer-modified-p nil] 2 set-text-properties] 11 (#$ . 3679)]) #@68 Clear region of syntax coloring from START to END. (fn START END) (defalias 'phps-mode-lex-analyzer--clear-region-syntax-color #[514 "\303 \304\211\304\305\306\307\310\311!\312\"\313$\216\314\315#,\207" [buffer-undo-list inhibit-read-only inhibit-modification-hooks buffer-modified-p t make-byte-code 0 "\300?\205\301\302!\207" vconcat vector [restore-buffer-modified-p nil] 2 set-text-properties nil] 10 (#$ . 4124)]) #@44 Return syntax color for TOKEN. (fn TOKEN) (defalias 'phps-mode-lex-analyzer--get-token-syntax-color #[257 "\211A@AAD@\211\301\232\204\211\302\232\2036\303\"\2036\303\"\211\304V\203.\305\306D\2021\305\307D\262\202\211\301\232\204T\211\310\232\204T\211\311\232\204T\211\312\232\204T\211\313\232\203Z\305\306D\202\211\314\232\204f\211\315\232\203l\305\316D\202\211\317\232\203x\305\320D\202\211\321\232\203\204\305\320D\202\211\322\232\203\216\323\202\211\302\232\204\262\211\324\232\204\262\211\325\232\204\262\211\326\232\204\262\211\327\232\204\262\211\330\232\203\270\305\331D\202\211\332\232\204\254\211\333\232\204\254\211\334\232\204\254\211\335\232\204\254\211\336\232\204\254\211\337\232\204\254\211\340\232\204\254\211\341\232\204\254\211\342\232\204\254\211\343\232\204\254\211\344\232\204\254\211\345\232\204\254\211\346\232\204\254\211\347\232\204\254\211\350\232\204\254\211\351\232\204\254\211\352\232\204\254\211\353\232\204\254\211\354\232\204\254\211\355\232\204\254\211\356\232\204\254\211\357\232\204\254\211\360\232\204\254\211\361\232\204\254\211\362\232\204\254\211\363\232\204\254\211\364\232\204\254\211\365\232\204\254\211\366\232\204\254\211\367\232\204\254\211\370\232\204\254\211\371\232\204\254\211\372\232\204\254\211\373\232\204\254\211\374\232\204\254\211\375\232\204\254\211\376\232\204\254\211\377\232\204\254\211\201@\232\204\254\211\201A\232\204\254\211\201B\232\204\254\211\201C\232\204\254\211\201D\232\204\254\211\201E\232\204\254\211\201F\232\204\254\211\201G\232\204\254\211\201H\232\204\254\211\201I\232\204\254\211\201J\232\204\254\211\201K\232\204\254\211\201L\232\204\254\211\201M\232\204\254\211\201N\232\204\254\211\201O\232\204\254\211\201P\232\204\254\211\201Q\232\204\254\211\201R\232\204\254\211\201S\232\204\254\211\201T\232\204\254\211\201U\232\204\254\211\201V\232\204\254\211\201W\232\204\254\211\201X\232\204\254\211\201Y\232\204\254\211\201Z\232\204\254\211\201[\232\204\254\211\201\\\232\204\254\211\201]\232\204\254\211\201^\232\204\254\211\201_\232\204\254\211\201`\232\204\254\211\201a\232\203\264\305\201bD\202\211\201c\232\204d\211\201d\232\204d\211\201e\232\204d\211\201f\232\204d\211\201g\232\204d\211\201h\232\204d\211\201i\232\204d\211\201j\232\204d\211\201k\232\204d\211\201l\232\204d\211\201m\232\204d\211\201n\232\204d\211\201o\232\204d\211\201p\232\204d\211\201q\232\204d\211\201r\232\204d\211\201s\232\204d\211\201t\232\204d\211\201u\232\204d\211\201v\232\204d\211\201w\232\204d\211\201x\232\204d\211\201y\232\204d\211\201z\232\204d\211\201{\232\204d\211\201|\232\204d\211\201}\232\204d\211\201~\232\204d\211\201\232\204d\211\201\200\232\204d\211\201\201\232\204d\211\201\202\232\204d\211\201\203\232\204d\211\201\204\232\204d\211\201\205\232\204d\211\201\206\232\204d\211\201\207\232\204d\211\201\210\232\204d\211\201\211\232\204d\211\201\212\232\204d\211\201\213\232\204d\211\201\214\232\204d\211\201\215\232\204d\211\201\216\232\204d\211\201\217\232\204d\211\201\220\232\204d\211\201\221\232\204d\211\201\222\232\204d\211\201\223\232\204d\211\201\224\232\204d\211\201\225\232\204d\211\201\226\232\204d\211\201\227\232\204d\211\201\230\232\203l\305\201\231D\202\211\201\232\232\203z\305\307D\202\305\201\231D\207" [phps-mode-lex-analyzer--bookkeeping T_VARIABLE T_STRING gethash 0 font-lock-face font-lock-variable-name-face font-lock-warning-face T_STRING_VARNAME T_NAME_RELATIVE T_NAME_QUALIFIED T_NAME_FULLY_QUALIFIED T_COMMENT END font-lock-comment-face T_DOC_COMMENT font-lock-doc-face T_ATTRIBUTE T_INLINE_HTML nil T_CONSTANT_ENCAPSED_STRING T_ENCAPSED_AND_WHITESPACE T_NUM_STRING T_DNUMBER T_LNUMBER font-lock-string-face T_DOLLAR_OPEN_CURLY_BRACES T_CURLY_OPEN T_OBJECT_OPERATOR T_NULLSAFE_OBJECT_OPERATOR T_PAAMAYIM_NEKUDOTAYIM T_NS_SEPARATOR T_EXIT T_DIE T_RETURN T_YIELD_FROM T_YIELD T_TRY T_CATCH T_FINALLY T_THROW T_IF T_ELSEIF T_ENDIF T_ELSE T_WHILE T_ENDWHILE T_DO T_FUNCTION T_FN T_CONST T_FOREACH T_ENDFOREACH T_FOR T_ENDFOR T_DECLARE T_ENDDECLARE T_INSTANCEOF T_AS T_SWITCH T_ENDSWITCH T_CASE T_DEFAULT T_BREAK T_CONTINUE T_GOTO T_ECHO T_PRINT T_CLASS T_INTERFACE T_TRAIT T_EXTENDS T_IMPLEMENTS T_NEW T_CLONE T_VAR T_EVAL T_INCLUDE_ONCE T_INCLUDE T_REQUIRE_ONCE T_REQUIRE T_NAMESPACE T_USE T_INSTEADOF T_GLOBAL T_ISSET T_EMPTY T_HALT_COMPILER T_STATIC T_ABSTRACT T_FINAL T_PRIVATE T_PROTECTED T_PUBLIC T_UNSET T_LIST T_ARRAY T_CALLABLE font-lock-keyword-face T_OPEN_TAG T_OPEN_TAG_WITH_ECHO T_CLOSE_TAG T_START_HEREDOC T_END_HEREDOC T_ELLIPSIS T_COALESCE T_DOUBLE_ARROW T_INC T_DEC T_IS_IDENTICAL T_IS_NOT_IDENTICAL T_IS_EQUAL T_IS_NOT_EQUAL T_SPACESHIP T_IS_SMALLER_OR_EQUAL T_IS_GREATER_OR_EQUAL T_PLUS_EQUAL T_MINUS_EQUAL T_MUL_EQUAL T_POW_EQUAL T_POW T_DIV_EQUAL T_CONCAT_EQUAL T_MOD_EQUAL T_SL_EQUAL T_SR_EQUAL T_AND_EQUAL T_OR_EQUAL T_XOR_EQUAL T_COALESCE_EQUAL T_BOOLEAN_OR T_BOOLEAN_AND T_BOOLEAN_XOR T_LOGICAL_XOR T_LOGICAL_OR T_LOGICAL_AND T_SL T_SR T_CLASS_C T_TRAIT_C T_FUNC_C T_METHOD_C T_LINE T_FILE T_DIR T_NS_C T_INT_CAST T_DOUBLE_CAST T_STRING_CAST T_ARRAY_CAST T_OBJECT_CAST T_BOOL_CAST T_UNSET_CAST font-lock-constant-face T_ERROR] 8 (#$ . 4558)]) #@75 Return latest processed tokens or else just return one giant error token. (defvar phps-mode-lex-analyzer--cached-lex-analyzer nil (#$ . 9893)) (defalias 'phps-mode-lex-analyzer--cached-lex-analyzer #[0 "\300\207" [nil] 1]) (byte-code "\301\300\302M\207" [phps-mode-lex-analyzer--cached-lex-analyzer (t (let ((old-start (point))) (if phps-mode-lex-analyzer--tokens (progn (phps-mode-debug-message (message "Updating semantic lexer tokens from point %s, tokens: %s, point-max: %s" old-start phps-mode-lex-analyzer--tokens (point-max))) (dolist (token phps-mode-lex-analyzer--tokens) (let ((start (car (cdr token))) (end (cdr (cdr token))) (token-name (car token))) (let ((token-syntax-color (phps-mode-lex-analyzer--get-token-syntax-color token))) (if token-syntax-color (phps-mode-lex-analyzer--set-region-syntax-color start end token-syntax-color) (phps-mode-lex-analyzer--clear-region-syntax-color start end))) (semantic-lex-push-token (semantic-lex-token token-name start end)))) (setq semantic-lex-end-point (point-max))) (phps-mode-lex-analyzer--set-region-syntax-color (point-min) (point-max) (list 'font-lock-face 'font-lock-warning-face)) (semantic-lex-push-token (semantic-lex-token 'T_ERROR (point-min) (point-max)))))) #[0 "\306``dB\307`\203i\211\203c\211@\211A@AA@\310!\211\2032\311#\210\2027\312\"\210\210\211BB B\211@\211\211A@\247\204R\211AA\262\202V\211A\262A\262\266A\266\202\202\210d\202\223\311ed\313\314D#\210\315edBB B\211@\211\211A@\247\204\213\211AA\262\202\217\211A\262A\262\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 phps-mode-lex-analyzer--get-token-syntax-color phps-mode-lex-analyzer--set-region-syntax-color phps-mode-lex-analyzer--clear-region-syntax-color font-lock-face font-lock-warning-face T_ERROR phps-mode-lex-analyzer--tokens] 12 "Return latest processed tokens or else just return one giant error token."]] 2) #@41 Elisp port of original Zend re2c lexer. (defvar phps-mode-lex-analyzer--re2c-lex-analyzer nil (#$ . 11918)) (defalias 'phps-mode-lex-analyzer--re2c-lex-analyzer #[0 "\300\207" [nil] 1]) (byte-code "\301\300\302M\207" [phps-mode-lex-analyzer--re2c-lex-analyzer (t (phps-mode-lexer--re2c)) #[0 "\306``dB\307\310 \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 phps-mode-lexer--re2c] 5 "Elisp port of original Zend re2c lexer."]] 2) #@76 Run lexer, optionally FORCE-SYNCHRONOUS. (fn &optional FORCE-SYNCHRONOUS) (defalias 'phps-mode-lex-analyzer--re2c-run #[256 "\302\303!\210\304 \305ed\"\306\300!\205\306\301!\205 \203\307\262\310\311\312\313\314\315 !\316\"\317$\311\320\321\314\315 !\322\"\323\324%\311\320\325\314\315\f!\326\"\327\324%\307&\207" [phps-mode-async-process phps-mode-async-process-using-async-el require phps-mode-macros buffer-name buffer-substring-no-properties boundp nil phps-mode-serial-commands make-byte-code 0 "\301\300!\302@\300\"D\207" vconcat vector [phps-mode-lex-analyzer--lex-string phps-mode-lex-analyzer--process-tokens-in-string] 4 257 "\306\300!\205pr\300q\210\211@A@@A@\3078\3108\3118\3128\3138\314\211@\211A@\3078\315 \210 \211\205k\211@\211A@AA\316!\211\203]\317#\210\202b\320\"\210\266A\266\202\202A\262\266\202)\207" [phps-mode-lex-analyzer--tokens phps-mode-lex-analyzer--states phps-mode-lex-analyzer--state phps-mode-lex-analyzer--state-stack phps-mode-lex-analyzer--heredoc-label get-buffer 2 3 4 5 6 t phps-mode-lex-analyzer--reset-imenu phps-mode-lex-analyzer--get-token-syntax-color phps-mode-lex-analyzer--set-region-syntax-color phps-mode-lex-analyzer--clear-region-syntax-color phps-mode-lex-analyzer--heredoc-label-stack phps-mode-lex-analyzer--nest-location-stack phps-mode-lex-analyzer--processed-buffer-p phps-mode-lex-analyzer--imenu phps-mode-lex-analyzer--lines-indent phps-mode-lex-analyzer--bookkeeping] 12 "\n\n(fn RESULT)" "\301\300!\205Nr\300q\210\211@A@\3028\3038\304 \210\205K\305\232\203F\203=\211\2035\306\307\310D#\210\202=\306d\307\310D#\210\311\312\313\314$\202K\311\313#\266\204)\207" [get-buffer 2 3 phps-mode-lex-analyzer--reset-local-variables phps-lexer-error phps-mode-lex-analyzer--set-region-syntax-color font-lock-face font-lock-warning-face display-warning phps-mode :warning "*PHPs Lexer Errors*"] 10] 15 (#$ . 12483) nil]) #@282 Incremental lex region. (fn BUFFER-NAME BUFFER-CONTENTS INCREMENTAL-START-NEW-BUFFER POINT-MAX HEAD-STATES INCREMENTAL-STATE INCREMENTAL-STATE-STACK INCREMENTAL-HEREDOC-LABEL INCREMENTAL-HEREDOC-LABEL-STACK INCREMENTAL-NEST-LOCATION-STACK HEAD-TOKENS &optional FORCE-SYNCHRONOUS) (defalias 'phps-mode-lex-analyzer--incremental-lex-string #[3083 "\302\300!\205\302\301!\205 \203\303\262\304\305\306\307\310\311&\n\312\"\313$\305\314\315\310\311!\316\"\317\320%\305\314\321\310\311!\322\"\323\320%\303&\207" [phps-mode-async-process phps-mode-async-process-using-async-el boundp nil phps-mode-serial-commands make-byte-code 0 "\312\300\301\302\303\304\305\306\307\310\311&\n\313@\300\"D\207" vconcat vector [phps-mode-lex-analyzer--lex-string phps-mode-lex-analyzer--process-tokens-in-string] 11 257 "\306\300!\205pr\300q\210\211@A@@A@\3078\3108\3118\3128\3138\314\211@\211A@\3078\315 \210 \211\203k\211@\211A@AA\316!\211\203]\317#\210\202b\320\"\210\266A\266\202\202A\210\321\266\202)\207" [phps-mode-lex-analyzer--tokens phps-mode-lex-analyzer--states phps-mode-lex-analyzer--state phps-mode-lex-analyzer--state-stack phps-mode-lex-analyzer--heredoc-label get-buffer 2 3 4 5 6 t phps-mode-lex-analyzer--reset-imenu phps-mode-lex-analyzer--get-token-syntax-color phps-mode-lex-analyzer--set-region-syntax-color phps-mode-lex-analyzer--clear-region-syntax-color nil phps-mode-lex-analyzer--heredoc-label-stack phps-mode-lex-analyzer--nest-location-stack phps-mode-lex-analyzer--processed-buffer-p phps-mode-lex-analyzer--imenu phps-mode-lex-analyzer--lines-indent phps-mode-lex-analyzer--bookkeeping] 12 "\n\n(fn RESULT)" "\301\300!\205Nr\300q\210\211@A@\3028\3038\304 \210\205K\305\232\203F\203=\211\2035\306\307\310D#\210\202=\306d\307\310D#\210\311\312\313\314$\202K\311\313#\266\204)\207" [get-buffer 2 3 phps-mode-lex-analyzer--reset-local-variables phps-lexer-error phps-mode-lex-analyzer--set-region-syntax-color font-lock-face font-lock-warning-face display-warning phps-mode :warning "*PHPs Lexer Errors*"] 10] 31 (#$ . 14440)]) #@109 Call lexer analyzer action. See `semantic-lex' for more information. (fn START END &optional DEPTH LENGTH) (defalias 'phps-mode-lex-analyzer--cached-lex #[1026 "\306\307\310#\210`\306\211\211\311\206 (B)\306*dV\203.\312\313d#\210\314 p\315\311\316\317\320\"\321\"\322$\216\323+!\210b\210`W\203F\203[ GX\203F`,\203\270,\211\203\262\211@\211A@AA@\324!\211\203\201\325#\210\202\206\326\"\210\210\211BB B\211@\211\211A@\247\204\241\211AA\262\202\245\211A\262A\262\266A\266\202\202c\210d\202\342\325ed\327\330D#\210\331edBB B\211@\211\211A@\247\204\332\211AA\262\202\336\211A\262A\262\210 =\203\360\312\332 @#\210 \262 b\210-\203\333 \204r\334.!q\210\212.b\210\335 *\203\336-\337\"\210 @/\205A\306C\315\311\340\317\320!\341\"\322$\216\2037\211\342!\240\210\343\344\345\f#!)\262\266\202I)\266\n\203}\n\211A\242\211\211\203j\346\347@A@#\210\n\211A\242\262\202S@0)@)A#b\210`\211\266b\210 \237.\207" [semantic-lex-block-streams semantic-lex-token-stream semantic-lex-block-stack semantic-lex-end-point semantic-lex-current-depth semantic-lex-depth nil run-hook-with-args semantic-lex-reset-functions 0 error "phps-mode-lex-analyzer--cached-lex: end (%d) > point-max (%d)" syntax-table make-byte-code "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table phps-mode-lex-analyzer--get-token-syntax-color phps-mode-lex-analyzer--set-region-syntax-color phps-mode-lex-analyzer--clear-region-syntax-color font-lock-face font-lock-warning-face T_ERROR "phps-mode-lex-analyzer--cached-lex: endless loop at %d, after %S" input-pending-p marker-buffer accept-process-output throw lex "\300\242\205 \301\300\242!\207" [semantic-overlay-delete] semantic-lex-highlight-token semantic-read-event format "%S :: Depth: %d :: SPC - continue" message "phps-mode-lex-analyzer--cached-lex: `%s' block from %S is unterminated" semantic-lex-maximum-depth semantic-lex-analysis-bounds parse-sexp-lookup-properties semantic-lex-syntax-table phps-mode-lex-analyzer--tokens semantic-current-input-throw-symbol semantic--on-input-start-marker semantic-lex-debug semantic-lex-unterminated-syntax-end-function] 20 (#$ . 16586)]) #@109 Call lexer analyzer action. See `semantic-lex' for more information. (fn START END &optional DEPTH LENGTH) (defalias 'phps-mode-lex-analyzer--re2c-lex #[1026 "\306\307\310#\210`\306\211\211\311\206 #B$\306%dV\203.\312\313d#\210\314 p\315\311\316\317\320\"\321\"\322$\216\323&!\210b\210`W\203\301\203[ GX\203\301\324 \210 =\203k\312\325 @#\210 \262 b\210'\203\223\326 \204\215r\327(!q\210\212(b\210\330 *\203\223\331'\332\"\210 @)\205\274\306C\315\311\333\317\320!\334\"\322$\216\203\262\211\335!\240\210\336\337\340\f#!)\262\266\202I)\266\n\203\370\n\211A\242\211\211\203\345\341\342@A@#\210\n\211A\242\262\202\316@*$@$A#b\210`\211\266b\210 \237.\207" [semantic-lex-block-streams semantic-lex-token-stream semantic-lex-block-stack semantic-lex-end-point semantic-lex-current-depth semantic-lex-depth nil run-hook-with-args semantic-lex-reset-functions 0 error "phps-mode-lex-analyzer--re2c-lex: end (%d) > point-max (%d)" syntax-table make-byte-code "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table phps-mode-lexer--re2c "phps-mode-lex-analyzer--re2c-lex: endless loop at %d, after %S" input-pending-p marker-buffer accept-process-output throw lex "\300\242\205 \301\300\242!\207" [semantic-overlay-delete] semantic-lex-highlight-token semantic-read-event format "%S :: Depth: %d :: SPC - continue" message "phps-mode-lex-analyzer--re2c-lex: `%s' block from %S is unterminated" semantic-lex-maximum-depth semantic-lex-analysis-bounds parse-sexp-lookup-properties semantic-lex-syntax-table semantic-current-input-throw-symbol semantic--on-input-start-marker semantic-lex-debug semantic-lex-unterminated-syntax-end-function] 17 (#$ . 18823)]) #@86 Move lexer states after (or equal to) START with modification DIFF. (fn START DIFF) (defalias 'phps-mode-lex-analyzer--move-states #[514 "\205 \301#\211\207" [phps-mode-lex-analyzer--states phps-mode-lex-analyzer--get-moved-states] 6 (#$ . 20576)]) #@101 Return moved lexer STATES after (or equal to) START with modification DIFF. (fn STATES START DIFF) (defalias 'phps-mode-lex-analyzer--get-moved-states #[771 "\300\203\202\237\211\203\201\211@\211@A@\3018\3028\3038\3048\3058 Y\203N\f\\ \\\257\fB\262\f\266\202x V\203q\f\\\257 B\262 \210\202x\nB\262\n\266A\266\202\202\210\207" [nil 2 3 4 5 6] 23 (#$ . 20839)]) #@104 Update tokens with moved lexer tokens after or equal to START with modification DIFF. (fn START DIFF) (defalias 'phps-mode-lex-analyzer--move-tokens #[514 "\205 \301#\211\207" [phps-mode-lex-analyzer--tokens phps-mode-lex-analyzer--get-moved-tokens] 6 (#$ . 21274)]) #@113 Return moved lexer OLD-TOKENS positions after (or equal to) START with DIFF points. (fn OLD-TOKENS START DIFF) (defalias 'phps-mode-lex-analyzer--get-moved-tokens #[771 "\300\203\\\237\211\203[\211@\211@A@AAY\2033\\\\BBB\262\266\202R\211V\203L\211\\BBB\262\210\202RB\262\266A\266\202\202\210\211\207" [nil] 14 (#$ . 21555)]) #@15 Reset change. (defalias 'phps-mode-lex-analyzer--reset-changes #[0 "\301\211\207" [phps-mode-lex-analyzer--change-min nil] 2 (#$ . 21931)]) #@150 Run incremental lexer on BUFFER. Return list of performed operations. Optionally do it FORCE-SYNCHRONOUS. (fn &optional BUFFER FORCE-SYNCHRONOUS) (defalias 'phps-mode-lex-analyzer--process-changes #[512 "\204p\262\306!\205Hrq\210\307 \210\310 \310\n\203.\310\211\211\211\211\211\211\211\n\211\311 \210\312 \210\310\211\310\211\310\211\310\3132\216\f\211\205\213\211@\211@A@AA\211W\203`B\262\202\202W\203}\314\232\203z\211A\262 \242\211A@\262\210\262\315\313\316\"\210\266A\266\202\202B\2620\210\237\262\203\3132\337 \237\211\205\334\211@\211A@\211X\203\317\3178\262 \3208\262\f\3218\262 \3228\262\n\3238\262 B\262\202\324\315\313\316\"\210\210A\266\202\202\236\2620\210\203 \203\324D B\262 \325\326 \327ed\"d &\f\210\202)\330D B\262 \331\262\202)\332D B\262 \331\262\266\n\2027\333CB\262\331\262\203E\334CB\262\335!\210\266\203)\207" [phps-mode-lex-analyzer--tokens phps-mode-lex-analyzer--states phps-mode-lex-analyzer--change-min phps-mode-lex-analyzer--state phps-mode-lex-analyzer--state-stack phps-mode-lex-analyzer--heredoc-label get-buffer phps-mode-lex-analyzer--reset-imenu nil phps-mode-lex-analyzer--cancel-idle-timer phps-mode-lex-analyzer--reset-changes quit T_END_HEREDOC throw "break" 2 3 4 5 6 INCREMENTAL-LEX phps-mode-lex-analyzer--incremental-lex-string buffer-name buffer-substring-no-properties FOUND-NO-HEAD-STATES t FOUND-NO-HEAD-TOKENS FOUND-NO-CHANGE-POINT-MINIMUM RUN-FULL-LEXER phps-mode-lex-analyzer--re2c-run phps-mode-lex-analyzer--heredoc-label-stack phps-mode-lex-analyzer--nest-location-stack] 30 (#$ . 22079)]) #@158 Process current buffer, generate indentations and Imenu, trigger incremental lexer if we have change. FORCE processes without change. (fn &optional FORCE) (defalias 'phps-mode-lex-analyzer--process-current-buffer #[256 "\203\306\211\204 ?\205-?\205-\307\n\310ed\"\"\211@\211A@\3118\210\312 \210\313\211\207" [phps-mode-lex-analyzer--idle-timer phps-mode-lex-analyzer--processed-buffer-p phps-mode-lex-analyzer--tokens phps-mode-lex-analyzer--imenu phps-mode-lex-analyzer--lines-indent phps-mode-lex-analyzer--bookkeeping nil phps-mode-lex-analyzer--process-tokens-in-string buffer-substring-no-properties 2 phps-mode-lex-analyzer--reset-imenu t] 6 (#$ . 23744) nil]) #@112 Move OLD-LINES-INDENTS from START-LINE-NUMBER with DIFF points. (fn OLD-LINES-INDENTS START-LINE-NUMBER DIFF) (defalias 'phps-mode-lex-analyzer--get-moved-lines-indent #[771 "\300\301\302\"\303\205h\304\"\305\203eW\203!\306#\210\307V\203DY\203D\\W\203D\306\304\n\"#\210Y\203W\\\262\306#\210T\262\304\"\262\202\266\207" [make-hash-table :test equal 1 gethash nil puthash 0] 12 (#$ . 24434)]) #@57 Moved imenu from START by DIFF points. (fn START DIFF) (defalias 'phps-mode-lex-analyzer--move-imenu-index #[514 "\205\f\301#\302 \207" [phps-mode-lex-analyzer--imenu phps-mode-lex-analyzer--get-moved-imenu phps-mode-lex-analyzer--reset-imenu] 6 (#$ . 24886)]) #@89 Move lines indent from START-LINE-NUMBER with DIFF points. (fn START-LINE-NUMBER DIFF) (defalias 'phps-mode-lex-analyzer--move-lines-indent #[514 "\205 \301#\211\207" [phps-mode-lex-analyzer--lines-indent phps-mode-lex-analyzer--get-moved-lines-indent] 6 (#$ . 25160)]) #@58 Return lines indent, process buffer if not done already. (defalias 'phps-mode-lex-analyzer--get-lines-indent #[0 "\301 \210\207" [phps-mode-lex-analyzer--lines-indent phps-mode-lex-analyzer--process-current-buffer] 1 (#$ . 25443)]) #@57 Return bookkeeping, process buffer if not done already. (defalias 'phps-mode-lex-analyzer--get-bookkeeping #[0 "\301 \210\207" [phps-mode-lex-analyzer--bookkeeping phps-mode-lex-analyzer--process-current-buffer] 1 (#$ . 25682)]) #@51 Return Imenu, process buffer if not done already. (defalias 'phps-mode-lex-analyzer--get-imenu #[0 "\301 \210\207" [phps-mode-lex-analyzer--imenu phps-mode-lex-analyzer--process-current-buffer] 1 (#$ . 25918)]) #@87 Move imenu-index OLD-INDEX beginning from START with DIFF. (fn OLD-INDEX START DIFF) (defalias 'phps-mode-lex-analyzer--get-moved-imenu #[771 "\300\203d<\2030@<\2030\211\203,\211@\301#\211@B\262\210A\266\202\202\210\202d\211@A<\203L\301A#BB\262\210\202bA\211Y\203Z\211\\\262BB\262\210\266\211\237\207" [nil phps-mode-lex-analyzer--get-moved-imenu] 10 (#$ . 26136)]) #@73 Return the number of lines in buffer between BEG and END. (fn BEG END) (defalias 'phps-mode-lex-analyzer--get-lines-in-buffer #[514 "\300\301\"!\207" [phps-mode-lex-analyzer--get-lines-in-string buffer-substring-no-properties] 6 (#$ . 26552)]) #@52 Return the number of lines in STRING. (fn STRING) (defalias 'phps-mode-lex-analyzer--get-lines-in-string #[257 "\300\211\301\302#\203\300\225\262T\262\202\207" [0 string-match "[\n]"] 7 (#$ . 26805)]) #@269 Generate a list of indentation for each line in INLINE-HTML. Working incrementally on INDENT, TAG-LEVEL, CURLY-BRACKET-LEVEL, SQUARE-BRACKET-LEVEL and ROUND-BRACKET-LEVEL. (fn INLINE-HTML INDENT TAG-LEVEL CURLY-BRACKET-LEVEL SQUARE-BRACKET-LEVEL ROUND-BRACKET-LEVEL) (defalias 'phps-mode-lex-analyzer--get-inline-html-indentation #[1542 "\301\302\303\304#)\266\203\204\305P\262\306\211\302\303\302\304\307 #\203:\306\225\f\306\224O\305\302\303\304#)\266\203\203\226\f\203R S\262\211\306W\203R\306\262\211B\262\210\310\f\f\f\f$\262V\203t\fT\262 \202\212W\203\212\fS\262 \f\306W\203\212\306\262 \262\303\262\302\262\202\211\311\230\203\244T\262 \202\211\312\230\203\262S\262 \202\211\313\230\203\300 T\262\n\202\211\314\230\203\316 S\262\n\202\211\315\230\203\334\nT\262 \202\211\316\230\203\352\nS\262 \202\304\317\"\203\371 T\262\f\202\304\320\"\203 S\262\f\2032\305\302\303\304#)\266\203\2042\302\262\310\f\f\f\f$\262W\2032\303\262\262\266\202\237     \257\207" [inhibit-changing-match-data "\n$" nil t string-match "\n" 0 "\\([\n]\\)\\|\\(<[a-zA-Z]+\\)\\|\\(\\)\\|\\(\\[\\)\\|\\()\\)\\|\\((\\)\\|\\({\\|}\\)" + "(" ")" "[" "]" "{" "}" "<[a-zA-Z]+" "\\(\\)"] 21 (#$ . 27024)]) #@159 Generate indexes for imenu and indentation for TOKENS and STRING with optional NAMESPACE one pass. Complexity: O(n). (fn TOKENS STRING &optional NAMESPACE) (defalias 'phps-mode-lex-analyzer--process-tokens-in-string #[770 "\211\204\300\262\203G\301\211\211\211\302\211\211\211\211\211\301\211\211\211\211\211\211\211\211\211\302\211\211\211\211\301\211\211\302\301\302\211\211\211\211\211\303\304\305\306\"\301\307\301\211\211\211\211\302\301\211\211\211\302\301\302\301\211\302\301\211\211\211\211\211\211\211\211\211\302\211\310G!\237\301\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\211\302\307\301\211\302\301\211\211\211\211\302\301\211\211\211\302\301\211\211\211\304\305\306\"\311sGtGBB-B\262-,\237\211\203>\211@\211@A@AA\301\2118\203\3036W\203\303\312{9SSO!\\\262\311\232\203\3265T\2624T\262\202\356\262\312{SSO!\\\262\2628\203P\3019\313\232\203@\314\232\203=\315\232\203zSO\227\2629\315\232\20459\313\232\203\342\211\316\232\203\342\317\232\204\342\320\232\204\342y\301\211;;D~=S=SO\301\211\211A\315\232\203\234\321\232\204\231\322\232\204\231\323\232\204\231\324\232\204\231\325\232\204\231\326\232\204\231\327\232\204\231\330\232\204\231\331\232\204\231\332\232\204\231\333\232\204\231\334\232\203\234\303\262/\203\263*\204\253&\203\263\3351Q\262*\203\300\336,Q\262A\315\232\203\321\227\316\230\203\321\316\262A\315\232\203\373H\337\232\203\373\202DSFSO\227\211\340\230\203\372\341Q\262 \303\262\210A\313\232\203\202DSFSO\227\211\316\230\203\342Q\262 \303\262\210\204\225&\203M\343(Q\262*\203M)\204M\344P\345\"\204L\346\307#\210\210\203[\347\350 ##\262\203~\203q\347\351 #\262\202~\262\347\351 #\262\203\225\262\262\347\352 @#\262\204\312*\203\271H\353\232\203\271(\204\271\354P\262\203\271\354P\262\355Q\262\203\312\355Q\262A\315\232\203\345\204\333\203\345 \356\232\203\345\303\262A\315\232\203\375E\357\232\203\375H\360\232\203\375\303\262A\315\232\203#B\357\232\203#E\315\232\203#H\361\232\203# \362\230\203#\303\262A\315\232\203IB\315\232\203IE\361\232\203IH\360\232\203I \362\230\203I\303\262A\315\232\203_\\\203_ \356\230\203_\303\262A\315\232\203pH\357\232\203p\303\262A\315\232\203\"\203\303\262(\203\216A\315\232\203\216\303\262!\203\235A\315\232\203\235\303\262\203\254A\315\232\203\254\303\262\203\273A\315\232\203\273\303\262\203\317A\315\232\203\317&\203\317\303\2624\203\336A\315\232\203\336\303\262A\315\232\203\355\203\355\303\262*\203&\204H\353\232\204H\363\232\204H\364\232\204H\365\232\204H\366\232\203\303\262\203;\345\"\211\204.\302\262\211T\262\346 #\266\211\203I\346\307#\210\202\340\345\"\203\\\346\307#\210\202\340\203s\345\"\203s\346\307#\210\202\340\203\331G\307V\203\331\301\211\303\211A\262\242\262\211A\262\242\262\211\203\275\203\275\347\367\f $\262\345\"\203\262\301\262\211A\262\242\262\202\225\211\203\314\346 \302#\210\202\324\346 \307#\210\266\202\340\346\302#\210\266\210S\203\3778\370\232\204\3668\320\232\203\374\303\262,\202\377\301\262,S\203$8\371\232\203\303\262\202\301\2628\353\232\203!\303\262\202$\301\2628\372\232\203.\303\262\203=8\373\232\203=\301\2628\374\232\203Z\317\230\203Z\303\262T\262cTB\262\203i8\373\232\203i\301\262\203\2038\375\230\203\203c@\232\203\203A\2628\376\232\203\232\204\224T\262\303\262\303\262\203\2518\362\232\203\251\301\262\203\2738\377\232\203\273\301\262\301\262\204\3278\201@\232\204\3228\201A\232\203\327bT\262\204\3638\201B\232\204\3568\201C\232\203\363bT\262\2035\20458\201D\232\203?\201E\232\203!8\201F\232\2035?\201E\230\2035bT\262\fT\262 \fB\262\307\262  \203\234c\f@\232\203W8\375\232\203W A\262\f A\262\202\234 \203n8\377\232\203n\301\262\n A\262\202\234` @\232\203\2348\201G\232\204\2228\201C\232\204\2228\201H\232\203\234\nA\262  A\262\203\326\201IU\203\3268\373\232\203\274cT\fB\262\f\202\3238\201J\232\203\320`T B\262 \202\323\303\262\n\301\262 \2038\362\232\203c\232\203\203\376\307\232\203\376\301\262\201I\262 \301\262\2038\362\232\203c\232\203\301\2628\373\230\20418\201K\232\20418\201L\232\2039T\262\202\2718\375\230\203\271$\203g$U\203g&\203g)\203g)\237'B,B\262,\210\301\262'\"\203\237\"U\203\237!\203\237(\203\237(\237'\203\222\"B+B\262+\202\233\"B,B\262,\210\301\262\"\203\264U\203\264\203\264\301\262S\262'\2038\373\230\204\3148\377\230\203\3378\373\230\262&\262%\301\262*\301\262(\202 8\313\232\2048\201M\232\2048\201N\232\2048\201O\232\203 &z9S9SOP\262'\202 #\203E8\373\230\203+\262#\301\262$\301\262)\202 8\313\232\203 !\204 y8S8SO\262\"\202 \203\3008\373\230\204X8\377\230\203\242\203\213!\203oB)B\262)\202\213&\203\201B*B\262*\202\213B+B\262+8\373\230\203\231\262\202\234\301\262\301\262 \202 8\313\232\203 \204 y8S8SO\2627\262\202 &\204\3278\201P\232\203\327\301\262'\303\262(\202 !\204\3618\201Q\232\203\361\301\262\"\301\262!\303\262$\202 !\204 8\201R\232\203 \301\262\"\303\262!\303\262$\202 \204 8\374\232\203 \301\262\303\262 \311\232\203B &\203B %\204B )\203B )\237'B,B\262,\210\301\262'8\317\230\203N bT\262c8\362\230\203b bS\262cS\203b \303\262R8\201S\230\203p Z?\262[8\320\230\203| aT\262b8\201T\230\203\222 aS\262bS\203\222 \303\262R8\201U\232\203\223\ny8S8SO\301\211\201V\201W\206\265 \201X\201YQ\"\203\313 \201Z\300\303\211$\266\202\202\316 \266\202\201V\201[\206\334 \201X\201\\Q\"\203\362 \201Z\300\303\211$\266\205\202\365 \266\205\300\230\262n\201V\201]{:S:SO\"\262mS\203\n\303\262l\201^z9S9SOutttt&\211A@\262u\201I8\262s\201_8\262r\201`8\262q\201a8\262p57V\204Y\nl\203\222\nn\204\222\n6@\211\203\220\n\211@:U\203t\no\203\205\n\345X\"\204\205\n\346\302DY#\210T\262A\266\202\202b\n\266\210D\203\312\n8\373\230\203\277\n\301\262E\302\262D/\204\264\nYS\262Z2A\2623S\203\350\n\303\262R\202\350\nS\203\350\n\307\262D\202\350\n8\201Q\232\203\350\n?\203\337\n?\337\232\204\350\n\303\262E\307\262D\303\26208\201K\232\204 8\201L\232\204 8\373\230\203 cT\262d8\375\230\203; cS\262df\2033 cTg@U\2033 \303\262O2A\2623`S\262afA\262gS\203; \303\262R8\201H\232\204h 8\201b\232\204h 8\201c\232\204h 8\201d\232\204h 8\201e\232\203\232 `S\262a8\201e\232\203\222 d\203\222 eA\262fdA\262e\303\262O2A\2623`S\262aS\203\232 \303\262Rj\203(\fjcU\203(\f8\362\230\204(\f8\317\230\204(\f8\201B\232\203\311 8\262j5\262`\202(\f8\373\230\203\343 i\201f\232\203\fcgB\262g\202\f8\201J\230\203\fi\201f\232\203\374 `fB\262f`T\262a8\2621\202\f8\377\230\204\f\303\262u_6W\203\fYT\262.\301\262k\301\262j\301\262`h\203J\f8\201J\230\203J\f8\2621`T\262ag\203G\f\303\262R\301\262i^\203\255\f8\377\230\204\223\f8\362\230\203f\fb^@W\204\223\f8\201g\230\203\201\fb^@U\203\201\fa]@U\204\223\f8\201T\230\203\333\fa]@W\203\333\f]A\262^\\A\262]]\204\245\f\301\262_[S\262\\\202\333\f5V\203\333\f8\201h\230\204\305\f\201h\230\203\333\f\303\262_b^B\262^a]B\262][T\262\\t\203\357\f8\377\230\203\357\f.\204\357\f\301\262u8\201B\232\2047 8\201@\232\2047 8\201A\232\2047 8\201i\232\2047 8\201f\232\2047 8\201G\232\2047 8\201C\232\2047 8\201j\232\203\274 b\262k8\262j5\262`8\2622\301\2621\303\262/2\203\274 2@AAA@\201J\230\203\274 8\201G\232\204r 8\201C\232\203\231 2@AA@\201B\232\204\257 2@AA@\201C\232\204\257 2@AA@\201G\232\204\257 8\201j\232\203\274 2@AA@\201k\232\203\274 `S\262aS\203\274 \303\262RM\203\2558\377\230\204U8\362\230\203\370 bM@W\204UbM@U\203\370 aL@U\203\370 \362\230\204U\201T\230\204U8\201g\230\203bM@U\203aL@U\204U8\201T\230\203EaL@W\204UaL@U\203EbM@U\203E\201T\230\204U\362\230\204U8\374\232\203\255bM@U\203\255KA\262LLA\262ML\204g\301\262NJS\262KL\203\255K\203\255bM@U\203\255aL@U\203\255\362\230\204\226\201T\230\203\255KA\262LLA\262ML\204\250\301\262NJS\262Kj\204K8\356\230\20458\361\232\20458\201l\232\20458\201m\232\20458\201n\232\20458\201o\232\20458\201p\232\20458\201q\232\20458\201r\232\20458\201s\232\20458\201t\232\20458\201u\232\20458\201v\232\20458\201w\232\20458\201x\232\203K\303\262NbMB\262MaLB\262LJT\262KI\203\221H\203\221G\203\221bI@X\203\221aH@X\203\221\314\232\204\221\337\232\204\221HA\262IGA\262HES\262FE\302U\203\221\301\262JF\203\273\313\232\204\242\317\230\203\270bIB\262IaHB\262H\303\262JET\262F\301\262G8\314\232\204\3118\337\232\203\322\313\232\203\322\303\262GB\203\3718\377\230\203\371cB@U\203\371AA\262BA\204\364\301\262C@S\262A8\201y\232\203\303\262CcBB\262B@T\262A8\201k\232\203P\303\262i8\2622\301\2621S\262hd\203I`Se@U\203I`S\262aS\203D\303\262RdA\262e`eB\262e8\203\201zccfdOIbHN& \262V8\201{\232\203}\303\262x\303\262w8\201|\232\203\214\301\262x\303\262v2\203U3@@X\203\3023\203\271V4@@X\203\2713\211A\2625\210\211T\262\202\234R\203\346O\203\323ZXXZZ\262[\301\262P\202\331ZZ\262[Z\302W\203\302\262[\202-\204\357Z\262.O\203-XXZZ\262.\301\262P\202\n-Z\262.-\302W\203\302\262.\2106V\203\267Y\262Y-\203,-\262Y\301\262.w\2036v\203;u\203>\302\262Yk\203Lm\204Lr\262Y5\302V\203nk\203bm\204bl\203n\3466ZZDU#\210,\203z,\262Z\301\262-U\302V\203\3062\203\221U3@A@V\203\306\3023\203\2363@A@\262P\203\263ZWYZ\\\262[\301\262Q\202\270ZT\262[\211W44F4B\2624\21046V\2038\201U\232\204Yx\203\343w\203\350v\203\353\302\2629\201}\232\203\367\307\262Y57ZS\211\302Y\203\3467Z\\DW#\210\211S\262\202\375\210\302\262Y\2105TV\203M8\201~\232\204M5ZS\211\302V\203L\346Z\\[DV#\210\211S\262\2022\210\201zccfdOIbHN& \262W5UV\203s\262s\303\262T\301\262R\301\262l\302\262D\301\2620\301\262w\301\262/8\201U\232\203m\20446V\203\201V\201{:S:SO\"??\262n\303\262l\2028\201\200\232\204\3148\201\201\232\204\314\301\262T46V\2038\201}\232\203\340\307\262X46ZS\211\302Y\203\3466Z\\[DV#\210\211S\262\202\346\210\302\262X<\262:?\262=>\262<=\262;8\262@6\262?7\262>\2629\2628\2627\2626\211\2625PT\262Q\266A\266\202\202\227\210#\237LE\207\301\211D\207" ["" nil 0 t make-hash-table :test equal 1 copy-sequence END_PARSE phps-mode-lex-analyzer--get-lines-in-string T_STRING T_OBJECT_OPERATOR T_VARIABLE "$this" "(" "[" "$GLOBALS" "$_COOKIE" "$_ENV" "$_FILES" "$_GET" "$_POST" "$_REQUEST" "$_SERVER" "$_SESSION" "$argc" "$argv" "$http_​response_​header" " namespace " " class " T_PAAMAYIM_NEKUDOTAYIM "self" " static id " " id $" " function " " id $this" gethash puthash format "%s anonymous function %s" "%s arrow function %s" "%s defined %s" T_STATIC " static" " id " "=" T_AS "&" T_DOUBLE_ARROW ")" T_PRIVATE T_PROTECTED T_PUBLIC T_VAR "%s defined %s id %s" T_ARRAY T_GLOBAL T_CATCH "{" T_FUNCTION "}" T_FN ";" T_WHILE T_FOR T_IF T_ELSEIF T_ISSET "!" T_EMPTY T_ELSE T_ENDIF 2 ":" T_CURLY_OPEN T_DOLLAR_OPEN_CURLY_BRACES T_NAME_RELATIVE T_NAME_FULLY_QUALIFIED T_NAME_QUALIFIED T_NAMESPACE T_CLASS T_INTERFACE "\"" "]" T_INLINE_HTML string-match "\\(?:" "[ \n ]+" "\\)\\'" replace-match "\\`\\(?:" "\\)" "^[ \f]+\n" phps-mode-lex-analyzer--get-inline-html-indentation 3 4 5 T_ENDWHILE T_ENDFOR T_ENDFOREACH T_ENDSWITCH T_SWITCH "," "." T_FOREACH T_DEFAULT T_CASE T_CONCAT_EQUAL T_POW_EQUAL T_DIV_EQUAL T_PLUS_EQUAL T_MINUS_EQUAL T_MUL_EQUAL T_MOD_EQUAL T_SL_EQUAL T_SR_EQUAL T_AND_EQUAL T_OR_EQUAL T_XOR_EQUAL T_COALESCE_EQUAL T_RETURN + T_START_HEREDOC T_END_HEREDOC T_DOC_COMMENT T_CLOSE_TAG "[ \n][ \f ]+$" T_OPEN_TAG T_OPEN_TAG_WITH_ECHO] 141 (#$ . 28377)]) #@14 Indent line. (defalias 'phps-mode-lex-analyzer--indent-line #[0 "\304 \210\203e \203_\305`!\306 \"\211\203W\211@\n_A@\\\307 \310 \204)\311\262\232?\205R\312\313!\210\314\307 Z\315\"\210\316\"\210\317\"\210\320 \210\321 \262\266\203\202\\\322`!\210\312\262\207\322`!\210\312\207\322`!\210\312\207" [phps-mode-lex-analyzer--processed-buffer-p phps-mode-lex-analyzer--lines-indent tab-width phps-mode-lex-analyzer--allow-after-change-p phps-mode-lex-analyzer--process-current-buffer line-number-at-pos gethash current-indentation line-beginning-position 0 nil indent-line-to t phps-mode-lex-analyzer--move-tokens phps-mode-lex-analyzer--move-states phps-mode-lex-analyzer--move-imenu-index phps-mode-lex-analyzer--reset-changes phps-mode-lex-analyzer--cancel-idle-timer phps-mode-lex-analyzer--alternative-indentation] 9 (#$ . 40703)]) #@68 Apply alternative indentation at POINT here. (fn &optional POINT) (defalias 'phps-mode-lex-analyzer--alternative-indentation #[256 "\211\204`\262\302\303 \232\212\304!\302\305\306\211\211\211 b\210\307\310 \303 \"\262\311V\203\202\302V\203c\203c\312y\210S\262\313 \210\310 \262\303 \262\307\"\262\314\306\305\315#)\266\203\262T\262\202)\204\206\316 \317!\317!\320!\321!\322!\323!\324 !\262b\210\211\302V\203\244\211 W\203\236T\262\202\244 \\\262\211\312U\203\257S\262\211\302U\203\277\203\277 \\\262\203\312 Z\262\203\323T\262\203\343\211\302X\203\343 \\\262\203\363\211\302W\203\363 \\\262\203o [y\210\306\210\312u\210\305\306\302\306\203M\325\326\306\305#\203M\307\302\224\302\225\"\211\327\230\203\"S\262\302U\203?\211\330\230\262\331\306\305\315#)\266\203\262\306\262\211\332\230\203IT\262\210\202\203W\312V\204[\211\203i\304 U\204i Z\262\266b\210\302W\203y\302\262\333!\266 \202\206\333\302!\210\266)`\232\203\234\211\203\231\306\210\202\234\334 \210\207" [inhibit-changing-match-data tab-width 0 line-end-position line-number-at-pos t nil buffer-substring-no-properties line-beginning-position 1 -1 beginning-of-line "^[ \f \n]*$" string-match current-indentation phps-mode-lex-analyzer--string-starts-with-closing-bracket-p phps-mode-lex-analyzer--string-starts-with-opening-doc-comment-p phps-mode-lex-analyzer--string-ends-with-assignment-p phps-mode-lex-analyzer--string-ends-with-opening-bracket-p phps-mode-lex-analyzer--string-ends-with-terminus-p phps-mode-lex-analyzer--get-string-brackets-count search-backward-regexp "\\(;\\|{\\|(\\|)\\|=\\|echo[ ]+\\|print[ ]+\\)" ")" "=" "\\(echo[ ]+\\|print[ ]+\\)" "(" indent-line-to back-to-indentation] 30 (#$ . 41567)]) #@44 Get bracket count for STRING. (fn STRING) (defalias 'phps-mode-lex-analyzer--get-string-brackets-count #[257 "\302\211\303\304\305\306#)\266\203\211\204x\306\307#\203x\302\225\262\302\224\302\225O\211\310\230\204D\211\311\230\204D\211\312\230\204D\211\313\230\204D\306\314\"\203L \\\262\202t\306\315\"\203ZS\262\202t\306\316\"\204h\306\317\"\203oT\262\202t Z\262\210\202\207" [inhibit-changing-match-data tab-width 0 "^[ \f \n]*$" nil t string-match "\\([]{}()[]\\|<[a-zA-Z]+\\|\\|^[ ]/\\*\\*\\|^[ \\* ]*\\*/\\)" "{" "[" "(" "<" "<[a-zA-Z]+" "^[ \\* ]*\\*/" "^/\\*\\*" "^[ ]*\\*"] 10 (#$ . 43401)]) #@44 Get bracket count for STRING. (fn STRING) (defalias 'phps-mode-lex-analyzer--string-starts-with-closing-bracket-p #[257 "\301\302\303\304#)\207" [inhibit-changing-match-data "^[ ]*\\([]})[]\\|\\)" nil t string-match] 8 (#$ . 44063)]) #@58 Does string start with opening doc comment? (fn STRING) (defalias 'phps-mode-lex-analyzer--string-starts-with-opening-doc-comment-p #[257 "\301\302\303\304#)\207" [inhibit-changing-match-data "^[ ]*/\\*\\*" nil t string-match] 8 (#$ . 44326)]) #@44 Get bracket count for STRING. (fn STRING) (defalias 'phps-mode-lex-analyzer--string-ends-with-opening-bracket-p #[257 "\301\302\303\304#)\207" [inhibit-changing-match-data "\\([[{(]\\|<[a-zA-Z]+\\)[ ]*$" nil t string-match] 8 (#$ . 44583)]) #@44 Get bracket count for STRING. (fn STRING) (defalias 'phps-mode-lex-analyzer--string-ends-with-assignment-p #[257 "\301\302\303\304#)\207" [inhibit-changing-match-data "=>?[ ]*$" nil t string-match] 8 (#$ . 44837)]) #@44 Get bracket count for STRING. (fn STRING) (defalias 'phps-mode-lex-analyzer--string-ends-with-terminus-p #[257 "\301\302\303\304#)\207" [inhibit-changing-match-data "\\(;\\|,\\)[ ]*$" nil t string-match] 8 (#$ . 45065)]) #@20 Cancel idle timer. (defalias 'phps-mode-lex-analyzer--cancel-idle-timer #[0 "\205 \301!\210\302\211\207" [phps-mode-lex-analyzer--idle-timer cancel-timer nil] 2 (#$ . 45299)]) #@19 Start idle timer. (defalias 'phps-mode-lex-analyzer--start-idle-timer #[0 "\302\300!\205p\303\304\305$\211\262\207" [phps-mode-idle-interval phps-mode-lex-analyzer--idle-timer boundp run-with-idle-timer nil phps-mode-lex-analyzer--process-changes] 6 (#$ . 45485)]) #@20 Reset imenu index. (defalias 'phps-mode-lex-analyzer--reset-imenu #[0 "\301\300!\205 \205 \302\211\207" [imenu--index-alist boundp nil] 3 (#$ . 45762)]) #@77 Track buffer change from START to STOP with LENGTH. (fn START STOP LENGTH) (defalias 'phps-mode-lex-analyzer--after-change #[771 "\2054\304\301!\203 \203\n\204\305 \210\306\307 !\210 \203$ W\203&\304\301!\2054 ?\2054\310p!\207" [phps-mode-lex-analyzer--allow-after-change-p phps-mode-idle-interval phps-mode-lex-analyzer--idle-timer phps-mode-lex-analyzer--change-min boundp phps-mode-lex-analyzer--start-idle-timer phps-mode-serial--kill-active buffer-name phps-mode-lex-analyzer--process-changes] 5 (#$ . 45925)]) #@31 Get Imenu for current buffer. (defalias 'phps-mode-lex-analyzer--imenu-create-index #[0 "\301 \210\207" [phps-mode-lex-analyzer--imenu phps-mode-lex-analyzer--process-current-buffer] 1 (#$ . 46463)]) #@80 Comment region from BEG to END with optional _ARG. (fn BEG END &optional ARG) (defalias 'phps-mode-lex-analyzer--comment-region #[770 "\203\f\302\303\304\"\210\305 \210 \211\205\371\303\211\211\306\211\203\300\211@\211@A@AA Y\203\267\211\fX\203\267\203U\307\232\204I\310\232\204I\311\232\203O\303\262\202\267\211\262\202\267\203\220\203\220\\\303\212b\210\312c\210)\313\\\262 \\\262\212\211b\210\314c\210)\313\\\262\266\303\262 \303\262\315\232\204\267\307\232\204\267\310\232\204\267\316\232\204\267\317\232\204\267\262 \211\262\304\262\266A\266\202\202\210\205\367\205\367\205\367\\\303\212b\210\312c\210)\313\\\262\\\262\212\211b\210\314c\210)\313\\\266\203\303\262\303\211\262\266\204\207" [phps-mode-lex-analyzer--idle-timer phps-mode-lex-analyzer--tokens phps-mode-lex-analyzer--process-changes nil t phps-mode-lex-analyzer--cancel-idle-timer 0 T_COMMENT T_DOC_COMMENT T_CLOSE_TAG "/* " 3 " */" T_INLINE_HTML T_OPEN_TAG T_OPEN_TAG_WITH_ECHO] 17 (#$ . 46670)]) #@82 Un-comment region from BEG to END with optional ARG. (fn BEG END &optional ARG) (defalias 'phps-mode-lex-analyzer--uncomment-region #[770 "\203\f\302\303\304\"\210\305 \210 \211\205\343\306\211\205\337\211@\211@A@AA\nY\203\326\211 X\203\326\307\232\204;\310\232\203\326\\\303\310\232\203m\212b\210\311\312!\210)\312Z\262\\\262\212\211b\210\311\313!\210)\314Z\262\202\324\315\211T\"\316\230\203\210\212b\210\311\317!\210)S\262\202\264\315\211\320\\\"\321\230\203\245\212b\210\311\320!\210)\320Z\262\202\264\212b\210\311\314!\210)\314Z\262\\\262\315\314Z\"\322\230\203\324\212\211b\210\311\313!\210)\314Z\262\266\266A\266\202\202\262\262\207" [phps-mode-lex-analyzer--idle-timer phps-mode-lex-analyzer--tokens phps-mode-lex-analyzer--process-changes nil t phps-mode-lex-analyzer--cancel-idle-timer 0 T_COMMENT T_DOC_COMMENT delete-char 4 -3 3 buffer-substring-no-properties "#" 1 2 "//" " */"] 16 (#$ . 47725)]) #@75 Just prepare other lexers for lexing region START to END. (fn START END) (defalias 'phps-mode-lex-analyzer--setup #[514 "\301\302!\210?\205\f\303\211\207" [phps-mode-lex-analyzer--state require phps-mode-macros ST_INITIAL] 4 (#$ . 48710)]) #@145 Run lexer on CONTENTS. (fn CONTENTS &optional START END STATES STATE STATE-STACK HEREDOC-LABEL HEREDOC-LABEL-STACK NEST-LOCATION-STACK TOKENS) (defalias 'phps-mode-lex-analyzer--lex-string #[2561 "\306\307!\210\310\311!\312!\203\226r\211q\210\nc\210\203\237\202!\313\203,\202.\314\315\316!\203D\317\320C\321\322\323\324\325!\326\"\327$\216\n\203o \203o\330  \"\331\"\210\202y\313\330ed#\262\211\313\240\210)\210 \262 \262\n\262\237\262\f\262 \262\332 \210)\210\211\257\207" [phps-mode-lexer--generated-tokens phps-mode-lexer--state phps-mode-lexer--states phps-mode-lexer--state-stack phps-mode-lexer--heredoc-label phps-mode-lexer--heredoc-label-stack require phps-mode-macros generate-new-buffer "*PHPs Lexer*" get-buffer nil ST_INITIAL boundp phps-mode-syntax-table phps-mode-lex-analyzer--re2c-lex t make-byte-code 0 "\300\242\205\301 \207" vconcat vector [kill-buffer] 1 semantic-lex append kill-buffer phps-mode-lexer--nest-location-stack semantic-lex-syntax-table semantic-lex-analyzer phps-mode-lex-analyzer--tokens] 18 (#$ . 48961)]) (provide 'phps-mode-lex-analyzer)