;ELC   
;;; Compiled
;;; in Emacs version 29.4
;;; with all optimizations.



(byte-code "\300\301!\210\300\302!\210\303\304\305\306!\"\210\303\307\310\306!\"\210\303\311\307\"\210\312\311\313\314#\210\315\306\316\307#\317\306\320\321\322$\207" [require cedet-idutils semantic/symref defalias semantic-symref-tool-idutils-p eieio-make-class-predicate semantic-symref-tool-idutils semantic-symref-tool-idutils--eieio-childp eieio-make-child-predicate semantic-symref-tool-idutils-child-p make-obsolete "use (cl-typep ... 'semantic-symref-tool-idutils) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (semantic-symref-tool-baseclass) nil (:documentation "A symref tool implementation using ID Utils.\nThe udutils command set can be used to generate lists of tags in a way\nsimilar to that of `grep'.  This tool will parse the output to generate\nthe hit list.\n\nSee the function `cedet-idutils-search' for more details.")] 6)#@85 Create a new object of class type `semantic-symref-tool-idutils'.

(fn &rest SLOTS)
(defalias 'semantic-symref-tool-idutils #[128 "\300\301\302#\207" [apply make-instance semantic-symref-tool-idutils] 5 (#$ . 962)])
(byte-code "\300\301\302\303#\300\207" [function-put semantic-symref-tool-idutils compiler-macro semantic-symref-tool-idutils--anon-cmacro] 4)#@26 

(fn WHOLE &rest SLOTS)
(defalias 'semantic-symref-tool-idutils--anon-cmacro #[385 "\211@;\204 \207\300\301\302@@#@\303@DABB\304\211@%\207" [macroexp-warn-and-return format "Obsolete name arg %S to constructor %S" identity nil] 8 (#$ . 1327)])
(cl-generic-define-method 'semantic-symref-perform-search nil '((tool semantic-symref-tool-idutils)) nil #[257 "\300\301\302\"\301\303\"\301\304\"\301\305\"$\306\"\207" [cedet-idutils-search eieio-oref searchfor searchtype resulttype searchscope semantic-symref-parse-tool-output] 8 "Perform a search with IDUtils.\n\n(fn TOOL)"])
(defconst semantic-symref-idutils--line-re "^\\(\\(?:[a-zA-Z]:\\)?[^:\n]+\\):\\([0-9]+\\):")
(byte-code "\300\301\302\303\302\304%\210\305\306!\207" [cl-generic-define-method semantic-symref-parse-tool-output-one-line nil ((tool semantic-symref-tool-idutils)) #[257 "\302\303\"\304=\203 \305\306\307\310#\205a \311\312!\207\302\313\"\314=\203* \305\315\307\310#\205a \311\312!\207\302\303\"\316=\203M \305\307\310#\205a \317\311\320!!\321\311\312!	\"\322`\323 \"E\207\305\307\310#\205a \317\311\320!!\321\311\312!	\"B\207" [semantic-symref-idutils--line-re default-directory eieio-oref resulttype file re-search-forward "^\\([^\n]+\\)$" nil t match-string 1 searchtype tagcompletions "^\\([^ ]+\\) " line-and-text string-to-number 2 expand-file-name buffer-substring-no-properties line-end-position] 6 "Parse one line of grep output, and return it as a match list.\nMoves cursor to end of the match.\n\n(fn TOOL)"] provide semantic/symref/idutils] 6)
