403Webshell
Server IP : 217.160.0.212  /  Your IP : 216.73.216.141
Web Server : Apache
System : Linux www 6.18.51-i1-ampere #1196 SMP Fri Sep 11 20:43:55 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/srecode/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/emacs/28.2/lisp/cedet/srecode/document.elc
;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!\210\300\307!\210\300\310!\210\300\311!\210\312\313\314\315\316\317\316\320&\210\321\322\323\324\325DD\326\327\330%\210\321\331\323\324\332DD\333\327\334%\210\321\322\323\324\335DD\326\327\336%\210\321\337\323\324\340DD\341\327\342%\210\321\343\323\324\344DD\345\327\346%\210\321\347\323\324\350DD\351\327\352%\210\321\353\323\324\354DD\355\327\356%\207" [require srecode/args srecode/dictionary srecode/extract srecode/insert srecode/semantic semantic semantic/tag semantic/doc pulse custom-declare-group document nil "File and tag browser frame." :group texinfo srecode custom-declare-variable srecode-document-autocomment-common-nouns-abbrevs funcall function #[0 "\300\207" [(("sock\\(et\\)?" . "socket") ("addr\\(ess\\)?" . "address") ("buf\\(f\\(er\\)?\\)?" . "buffer") ("cur\\(r\\(ent\\)?\\)?" . "current") ("dev\\(ice\\)?" . "device") ("doc" . "document") ("i18n" . "internationalization") ("file" . "file") ("line" . "line") ("l10n" . "localization") ("msg\\|message" . "message") ("name" . "name") ("next\\|nxt" . "next") ("num\\(ber\\)?" . "number") ("port" . "port") ("host" . "host") ("obj\\|object" . "object") ("previous\\|prev" . "previous") ("str\\(ing\\)?" . "string") ("use?r" . "user") ("\\(^\\|\\s-\\)id\\($\\|\\s-\\)" . "Identifier"))] 1 #1=""] "List of common English abbreviations or full words.\nThese are nouns (as opposed to verbs) for use in creating expanded\nversions of names.  This is an alist with each element of the form:\n (MATCH . RESULT)\nMATCH is a regexp to match in the type field.\nRESULT is a string." :type (repeat (cons (regexp :tag "Regexp") (string :tag "Doc Text"))) srecode-document-autocomment-function-alist #[0 "\300\207" [(("abort" . "Aborts the") ("realloc" . "moves or ") ("alloc\\(ate\\)?" . "Allocates and initializes a new ") ("clean" . "Cleans up the") ("clobber" . "Removes") ("close" . "Cleanly closes") ("check" . "Checks the") ("comp\\(are\\)?" . "Compares the") ("create" . "Creates a new ") ("find" . "Finds ") ("free" . "Frees up space") ("gen\\(erate\\)?" . "Generates a new ") ("get\\|find" . "Looks for the given ") ("gobble" . "Removes") ("he?lp" . "Provides help for") ("li?ste?n" . "Listens for ") ("connect" . "Connects to ") ("acc?e?pt" . "Accepts a ") ("load" . "Loads in ") ("match" . "Check that parameters match") ("name" . "Provides a name which ") ("new" . "Allocates a ") ("parse" . "Parses the parameters and returns ") ("print\\|display" . "Prints out") ("read" . "Reads from") ("reset" . "Resets the parameters and returns") ("scan" . "Scans the ") ("setup\\|init\\(ialize\\)?" . "Initializes the ") ("select" . "Chooses the ") ("send" . "Sends a") ("re?c\\(v\\|ieves?\\)" . "Receives a ") ("to" . "Converts ") ("update" . "Updates the ") ("wait" . "Waits for ") ("write" . "Writes to"))] 1 #1#] "List of names to string match against the function name.\nThis is an alist with each element of the form:\n (MATCH . RESULT)\nMATCH is a regexp to match in the type field.\nRESULT is a string.\n\nCertain prefixes may always mean the same thing, and the same comment\ncan be used as a beginning for the description.  Regexp should be\nlower case since the string they are compared to is downcased.\nA string may end in a space, in which case, last-alist is searched to\nsee how best to describe what can be returned.\nDoesn't always work correctly, but that is just because English\ndoesn't always work correctly." (repeat (cons (regexp :tag "Regexp") (string :tag "Doc Text"))) #[0 "\300\207" [(("sock\\(et\\)?" . "socket") ("addr\\(ess\\)?" . "address") ("buf\\(f\\(er\\)?\\)?" . "buffer") ("cur\\(r\\(ent\\)?\\)?" . "current") ("dev\\(ice\\)?" . "device") ("file" . "file") ("line" . "line") ("msg\\|message" . "message") ("name" . "name") ("next\\|nxt" . "next") ("port" . "port") ("host" . "host") ("obj\\|object" . "object") ("previous\\|prev" . "previous") ("str\\(ing\\)?" . "string") ("use?r" . "user") ("num\\(ber\\)?" . "number") ("\\(^\\|\\s-\\)id\\($\\|\\s-\\)" . "Identifier"))] 1 #1#] (repeat (cons (regexp :tag "Regexp") (string :tag "Doc Text"))) srecode-document-autocomment-return-first-alist #[0 "\300\207" [(("static" . "Locally defined function which ") ("Bool\\|BOOL" . "Status of "))] 1 #1#] "List of regexp matches for types.\nThey provide a little bit of text when typing information is\ndescribed.\nThis is an alist with each element of the form:\n (MATCH . RESULT)\nMATCH is a regexp to match in the type field.\nRESULT is a string." (repeat (cons (regexp :tag "Regexp") (string :tag "Doc Text"))) srecode-document-autocomment-return-last-alist #[0 "\300\207" [(("static[ 	\n]+struct \\([a-zA-Z0-9_]+\\)" . "%s") ("struct \\([a-zA-Z0-9_]+\\)" . "%s") ("static[ 	\n]+union \\([a-zA-Z0-9_]+\\)" . "%s") ("union \\([a-zA-Z0-9_]+\\)" . "%s") ("static[ 	\n]+enum \\([a-zA-Z0-9_]+\\)" . "%s") ("enum \\([a-zA-Z0-9_]+\\)" . "%s") ("static[ 	\n]+\\([a-zA-Z0-9_]+\\)" . "%s") ("\\([a-zA-Z0-9_]+\\)" . "of type %s"))] 1 #1#] "List of regexps which provide the type of the return value.\nThis is an alist with each element of the form:\n (MATCH . RESULT)\nMATCH is a regexp to match in the type field.\nRESULT is a string, which can contain %s, which is replaced with\n`match-string' 1." (repeat (cons (regexp :tag "Regexp") (string :tag "Doc Text"))) srecode-document-autocomment-param-alist #[0 "\300\207" [(("[Cc]txt" . "Context") ("[Ii]d" . "Identifier of") ("[Tt]ype" . "Type of") ("[Nn]ame" . "Name of") ("argc" . "Number of arguments") ("argv" . "Argument vector") ("envp" . "Environment variable vector"))] 1 #1#] "Alist of common variable names appearing as function parameters.\nThis is an alist with each element of the form:\n (MATCH . RESULT)\nMATCH is a regexp to match in the type field.\nRESULT is a string of text to use to describe MATCH.\nWhen one is encountered, document-insert-parameters will automatically\nplace this comment after the parameter name." (repeat (cons (regexp :tag "Regexp") (string :tag "Doc Text"))) srecode-document-autocomment-param-type-alist #[0 "\300\207" [(("const" . "Constant") ("void" . "Empty") ("char[ ]*\\*" . "String ") ("\\*\\*" . "Pointer to ") ("\\*" . "Pointer ") ("char[ ]*\\([^ 	*]\\|$\\)" . "Character") ("int\\|long" . "Number of") ("FILE" . "File of") ("float\\|double" . "Value of") ("Bool\\|BOOL" . "Flag") ("Window" . "Window") ("GC" . "Graphic Context") ("Widget" . "Widget"))] 1 #1#] "Alist of input parameter types and strings describing them.\nThis is an alist with each element of the form:\n (MATCH . RESULT)\nMATCH is a regexp to match in the type field.\nRESULT is a string." (repeat (cons (regexp :tag "Regexp") (string :tag "Doc Text")))] 8)
#@364 Insert some comments.
Whack any comments that may be in the way and replace them.
If the region is active, then insert group function comments.
If the cursor is in a comment, figure out what kind of comment it is
  and replace it.
If the cursor is in a function, insert a function comment.
If the cursor is on a one line prototype, then insert post-fcn comments.
(defalias 'srecode-document-insert-comment #[0 "\304 \210\305 \204	\306=\204\n\203*\203*`\307 V\203$\310\307 `\"\207\310`\307 \"\207\211\311\232\203K\212\312 \210\313 )\203@\312 \210\202K\314 \211\203J\315!\210\210\313 \203\201\313 \316\211A@\262=\266\202\203j\317\313 !\203j\320 \207\313 \321\211A@\262=\266\202\203}\322 \207\323\324!\207\325\326!\211;\205\224\211G\327U?\205\224\330!\207" [srecode-handle-region-when-non-active-flag last-command transient-mark-mode mark-active semantic-fetch-tags srecode-calculate-context mouse-drag-region mark srecode-document-insert-group-comments ("declaration" "comment") back-to-indentation semantic-current-tag semantic-find-tag-by-overlay-next semantic-go-to-tag variable srecode-document-one-line-tag-p srecode-document-insert-variable-one-line-comment function srecode-document-insert-function-comment error "Not sure what to comment" read-string "Section Title (RET to skip): " 0 srecode-document-insert-section-comment] 5 (#$ . 6786) nil])
#@60 Insert a section comment with TITLE.

(fn &optional TITLE)
(defalias 'srecode-document-insert-section-comment #[256 "\301!\210\301\302\"\210\303 \204\304\305\"\210\306 \307\303 \310\311\302$\211\204$\304\312!\210\203.\313\314#\210\315\"\207" [major-mode srecode-load-tables-for-mode document srecode-table error "No template table found for mode %s" srecode-create-dictionary srecode-template-get-table "section-comment" "declaration" "No templates for inserting section comments" srecode-dictionary-set-value "TITLE" srecode-insert-fcn] 7 (#$ . 8171) "sSection Title: "])
#@51 Strip stray whitespace from around STR.

(fn STR)
(defalias 'srecode-document-trim-whitespace #[257 "\300\301\"\203\302\303\304\211$\262\300\305\"\203\302\303\304\211$\262\207" [string-match "^\\(\\s-\\|\n\\)+" replace-match "" t "\\(\\s-\\|\n\\)+$"] 6 (#$ . 8762)])
#@250 Insert or replace a function comment.
FCN-IN is the Semantic tag of the function to add a comment too.
If FCN-IN is not provided, the current tag is used instead.
It is assumed that the comment occurs just in front of FCN-IN.

(fn &optional FCN-IN)
(defalias 'srecode-document-insert-function-comment #[256 "\211C\303!\210\303\304\"\210\305 \204\306\307\"\210\310 \311\305 \312\313\304$\211\204&\306\314!\210\242\2043\315 \210\316 \240\210\242\203H\242\317\211A@\262=\266\202\204L\306\320!\210p\321\242!=\204Y\306\322!\210\323\242!\210\324 \210\325u\210\326\242\327\"\330\242!C\203F\211\211A@\247\204\203\211AA\262\202\207\211A\262@\262\211\211A@\247\204\233\211AA\262\202\237\211A\262A\262\331\212b\210\332\333!)!\3341\272\335#0\202\274\210\333\336\n\242\211\3378\262\340!\203\325\341!\266\202\202\332\211\342H\266\202\"\212b\210\343 \210\316 )\211\204D\344\"\210\345V\203\374\346\347!\203D\345V\203b\210\350 \210\351 \210\203)\204)\346\352!\203\240\210|\210b\266\202F\203D\346\353!\203D|\210b\210\331\354\355\"!\240\210\266\324 \210\242\356\357#\360\"*\207" [major-mode srecode-semantic-apply-tag-augment-hook srecode-semantic-selected-tag srecode-load-tables-for-mode document srecode-table error "No template table found for mode %s" srecode-create-dictionary srecode-template-get-table "function-comment" "declaration" "No templates for inserting function comments" semantic-fetch-tags semantic-current-tag function "No tag of class `function' to insert comment for" semantic-tag-buffer "Only insert comments for tags in the current buffer" semantic-go-to-tag beginning-of-line -1 semantic-documentation-comment-preceding-tag lex srecode-document-function-name-comment srecode-document-trim-whitespace semantic-doc-snarf-comment-for-tag nil (error) srecode-extract count-lines 4 overlayp overlay-start 0 back-to-indentation pulse-momentary-highlight-region 2 y-or-n-p "Replace this comment? " delete-horizontal-space delete-blank-lines "Convert old-style comment to Template with old text? " "Refresh pre-existing comment (recycle old doc)? " srecode-dictionary-lookup-name "DOC" make-closure #[514 "\302\303\300\242=\203\301\242\202\304!#\207" [V0 V1 srecode-dictionary-set-value "DOC" srecode-document-parameter-comment] 7 "\n\n(fn TAG DICT)"] srecode-insert-fcn] 17 (#$ . 9046) nil])
#@244 Insert or replace a variable comment.
VAR-IN is the Semantic tag of the function to add a comment too.
If VAR-IN is not provided, the current tag is used instead.
It is assumed that the comment occurs just after VAR-IN.

(fn &optional VAR-IN)
(defalias 'srecode-document-insert-variable-one-line-comment #[256 "\304!\210\304\305\"\210\306 \204\307\310\"\210\311 \312\306 \313\314\305$\211\204$\307\315!\210\204/\316 \210\317 \262\203B\320\211A@\262=\266\202\204F\307\321!\210p\322!=\204R\307\323!\210\211\3248\262\325!\203g\326!\266\202\202l\211\327H\266\202b\210\330\331\332 \"\210\333\334!\211\203\310\211\211\211A@\247\204\214\211AA\262\202\220\211A\262@\262\211\211A@\247\204\244\211AA\262\202\250\211A\262A\262\335\"\210\336\337!\204\272\307\340!\210\341#\210|\210b\266\210\342\210\343 \210\344	\345\"\210`\332 W\203\336\342\210\346\347\"*\207" [major-mode comment-column srecode-semantic-apply-tag-augment-hook srecode-semantic-selected-tag srecode-load-tables-for-mode document srecode-table error "No template table found for mode %s" srecode-create-dictionary srecode-template-get-table "variable-same-line-comment" "declaration" "No templates for inserting variable comments" semantic-fetch-tags semantic-current-tag variable "No tag of class `variable' to insert comment for" semantic-tag-buffer "Only insert comments for tags in the current buffer" 4 overlayp overlay-end 1 skip-syntax-forward "-" point-at-eol semantic-doc-snarf-comment-for-tag lex pulse-momentary-highlight-region y-or-n-p "A comment already exists.  Replace? " "Quit" srecode-extract nil delete-horizontal-space move-to-column t #[514 "\300\301\302!#\207" [srecode-dictionary-set-value "DOC" srecode-document-parameter-comment] 7 "\n\n(fn TAG DICT)"] srecode-insert-fcn] 10 (#$ . 11447) nil])
#@237 Insert group comments around the active between BEG and END.
If the region includes only parts of some tags, expand out
to the beginning and end of the tags on the region.
If there is only one tag in the region, complain.

(fn BEG END)
(defalias 'srecode-document-insert-group-comments #[514 "\301!\210\301\302\"\210\303 \204\304\305\"\210\306 \307\310\211\212b\210\311 \206#\312 )\212b\210\311 \206/\313 )\310\203u\203u\211\3148\262\315!\203R\316!\266\202\202W\211\317H\266\202\211\3148\262\315!\203l\320!\266\202\202q\211\321H\266\202V\203{\310\262\310\262\203=\203\252\203\252\322\211A@\262=\266\202\203\252\262\312!\262\313\n!\262\202\317\323!=\203\276\262\313\n!\262\202\317\323!=\203\317\262\312!\262\203\326\324\262\211\3148\262\315!\203\353\320!\266\202\202\360\211\321H\266\202\262\211\3148\262\315!\203\316!\266\202\202\f\211\317H\266\202\262\325\303 \326\n\302$\262\325\303 \327\n\302$\262\203+\204/\304\330!\210\331	\332\333\334!#\210\211b\210\310\210\335\n\"\210b\210\336 \210\335\n\"\207" [major-mode srecode-load-tables-for-mode document srecode-table error "No template table found for mode %s" srecode-create-dictionary "declaration" nil semantic-current-tag semantic-find-tag-by-overlay-next semantic-find-tag-by-overlay-prev 4 overlayp overlay-end 1 overlay-start 0 type semantic-find-tag-parent-by-overlay "classdecl" srecode-template-get-table "group-comment-start" "group-comment-end" "No templates for inserting group comments" srecode-dictionary-set-value "GROUPNAME" read-string "Name of group: " srecode-insert-fcn beginning-of-line] 16 (#$ . 13286) "r"])
#@302 Create documentation for the function defined in TAG.
If we can identify a verb in the list followed by some
name part then check the return value to see if we can use that to
finish off the sentence.  That is, any function with `alloc' in it will be
allocating something based on its type.

(fn TAG)
(defalias 'srecode-document-function-name-comment #[257 "\304\211\305\211@\262\211\306\307\3108\262\"\266\203\206\305\211<\203$\211@\262\203H\311@@\227\"\203A@AP\262\312\262\304\262A\262\202$	\262\203\205\311@@\227\"\203~\203g@A\227\202k@AP\262\211GSH\313U\203{\312\262\304\262A\262\202K\n\262\203\265\311@@\227\"\203\256\203\244@A\227\202\250@AP\262\304\262A\262\202\210\203\350\262\203\350\311@@\227\"\203\341\314\315@A\316\317\224\317\225O!\"Q\262\304\262A\262\202\274\207" [srecode-document-autocomment-return-first-alist srecode-document-autocomment-function-alist srecode-document-autocomment-common-nouns-abbrevs srecode-document-autocomment-return-last-alist nil "" :type plist-get 2 string-match t 32 " " format srecode-document-programmer->english 1] 15 (#$ . 14984)])
#@264 Convert tag or string PARAM into a name,comment pair.
Optional COMMENTLIST is list of previously existing comments to
use instead in alist form.  If the name doesn't appear in the list of
standard names, then english it instead.

(fn PARAM &optional COMMENTLIST)
(defalias 'srecode-document-parameter-comment #[513 "\302\303;\203\f\202\211@\262;?\205%\211\304\305\3068\262\"\266\203\211<\2031\211\211@\262\262\203O\307@@\"\203H\310\262@AP\262A\262\2021G\311U\203\225;\204s\211\312\305\3068\262\"\266\203\203s\313P\262	\262\203\225\211\203\225\307@@\"\203\216@AP\262A\262\202v\204\241\314\315!Q\262\207" [srecode-document-autocomment-param-alist srecode-document-autocomment-param-type-alist "" nil :type plist-get 2 string-match t 0 :typemodifiers "array of " " " srecode-document-programmer->english] 14 (#$ . 16161)])
#@336 Take PROGRAMMER and convert it into English.
Works with the following rules:
  1) convert all _ into spaces.
  2) inserts spaces between CamelCasing word breaks.
  3) expands noun names based on common programmer nouns.

  This function is designed for variables, not functions.  This does
not account for verb parts.

(fn PROGRAMMER)
(defalias 'srecode-document-programmer->english #[257 "\211\301\230\203\301\207\302\303\211\211GW\2031H\304U\203 \305\202'\306H!P\262T\262\202\f\262\303\262\302\262GW\203xH\211\307Y\203Z\211\310X\203Z\311\262\306!\202l\203i\303\262\305\306!P\202l\306!\262P\262T\262\202:\303\262\302\262\262\303\262\312\313\"\203\323\314\224\314\225O\314\225\262\303\262\203\271\312@@\227\"\203\262@AP\262\311\262A\262\202\232\204\302P\262\305P\262\303O\262\266\202\204\207" [srecode-document-autocomment-common-nouns-abbrevs "" 0 nil 95 " " char-to-string 97 122 t string-match "^\\s-*\\([^ 	\n]+\\)" 1] 10 (#$ . 17051)])
#@59 Does TAG fit on one line with space on the end?

(fn TAG)
(defalias 'srecode-document-one-line-tag-p #[257 "\212\300!\210\211\211\3018\262\302!\203\303!\266\202\202\211\304H\266\202\305 X\205F\211\211\3018\262\302!\203:\303!\266\202\202?\211\304H\266\202b\205Fi\306W)\207" [semantic-go-to-tag 4 overlayp overlay-end 1 point-at-eol 70] 5 (#$ . 18080)])
(provide 'srecode/document)

Youez - 2016 - github.com/yon3zu
LinuXploit