%PDF- %PDF-
Mini Shell

Mini Shell

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

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; 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.

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


(require 'semantic)
#@92 Case insensitive version of `string-lessp'.
Argument S1 and S2 are the strings to compare.
(defalias 'semantic-string-lessp-ci #[(s1 s2) "\302\303!\203\303\304\305	\304\305\306&\307=\207\227	\227\231\207" [s1 s2 fboundp compare-strings 0 nil t -1] 8 (#$ . 428)])
#@57 Return a type string for TAG guaranteed to be a string.
(defalias 'semantic-sort-tag-type #[(tag) "\211\303\304\3058)	\"+\211;\203\n\202)\n<\203(\n@\206)\306\202)\306)\207" [tag attribute ty :type plist-get 2 ""] 4 (#$ . 702)])
#@101 Return t if tag A is < tag B.
First sorts on name, then sorts on the name of the :type of
each tag.
(defalias 'semantic-tag-lessp-name-then-type #[(A B) "\211@)\n\211@)\211\231\203\306\202\350\f\230\205\350\211\307\310	\311	8)
\"+\n\211\307\310	\311	8)
\"+;\203K\202\211\3121y	:\205u	@;\205u	A@9\205u	A@\205u\311	8<\205u\313	8<0\202{\210\314)\203\210\211@)\202\211\314;\203\226\202\324\3151\304	:\205\300	@;\205\300	A@9\205\300	A@\205\300\311	8<\205\300\313	8<0\202\306\210\314)\203\323\211@)\202\324\314;\205\347;\205\347\231,*\207" [A tag B nb na attribute t :type plist-get 2 (error) 3 nil (error) ta tb tas tbs] 4 (#$ . 951)])
#@82 Sort TAGS by name in increasing order with side effects.
Return the sorted list.
(defalias 'semantic-sort-tags-by-name-increasing #[(tags) "\301\302\"\207" [tags sort #[(a b) "\211@)\n\211@)\231\207" [a tag b] 3]] 3 (#$ . 1668)])
#@82 Sort TAGS by name in decreasing order with side effects.
Return the sorted list.
(defalias 'semantic-sort-tags-by-name-decreasing #[(tags) "\301\302\"\207" [tags sort #[(a b) "\211@)\n\211@)\231\207" [b tag a] 3]] 3 (#$ . 1908)])
#@82 Sort TAGS by type in increasing order with side effects.
Return the sorted list.
(defalias 'semantic-sort-tags-by-type-increasing #[(tags) "\301\302\"\207" [tags sort #[(a b) "\302!\302	!\231\207" [a b semantic-sort-tag-type] 3]] 3 (#$ . 2148)])
#@82 Sort TAGS by type in decreasing order with side effects.
Return the sorted list.
(defalias 'semantic-sort-tags-by-type-decreasing #[(tags) "\301\302\"\207" [tags sort #[(a b) "\302!\302	!\231\207" [b a semantic-sort-tag-type] 3]] 3 (#$ . 2402)])
#@82 Sort TAGS by name in increasing order with side effects.
Return the sorted list.
(defalias 'semantic-sort-tags-by-name-increasing-ci #[(tags) "\301\302\"\207" [tags sort #[(a b) "\303\211@)\n\211@)\"\207" [a tag b semantic-string-lessp-ci] 4]] 3 (#$ . 2656)])
#@82 Sort TAGS by name in decreasing order with side effects.
Return the sorted list.
(defalias 'semantic-sort-tags-by-name-decreasing-ci #[(tags) "\301\302\"\207" [tags sort #[(a b) "\303\211@)\n\211@)\"\207" [b tag a semantic-string-lessp-ci] 4]] 3 (#$ . 2926)])
#@82 Sort TAGS by type in increasing order with side effects.
Return the sorted list.
(defalias 'semantic-sort-tags-by-type-increasing-ci #[(tags) "\301\302\"\207" [tags sort #[(a b) "\302\303!\303	!\"\207" [a b semantic-string-lessp-ci semantic-sort-tag-type] 4]] 3 (#$ . 3196)])
#@82 Sort TAGS by type in decreasing order with side effects.
Return the sorted list.
(defalias 'semantic-sort-tags-by-type-decreasing-ci #[(tags) "\301\302\"\207" [tags sort #[(a b) "\302\303!\303	!\"\207" [b a semantic-string-lessp-ci semantic-sort-tag-type] 4]] 3 (#$ . 3480)])
#@93 Sort TAGS by name, then type in increasing order with side effects.
Return the sorted list.
(defalias 'semantic-sort-tags-by-name-then-type-increasing #[(tags) "\301\302\"\207" [tags sort #[(a b) "\302	\"\207" [a b semantic-tag-lessp-name-then-type] 3]] 3 (#$ . 3764)])
#@93 Sort TAGS by name, then type in increasing order with side effects.
Return the sorted list.
(defalias 'semantic-sort-tags-by-name-then-type-decreasing #[(tags) "\301\302\"\207" [tags sort #[(a b) "\302	\"\207" [b a semantic-tag-lessp-name-then-type] 3]] 3 (#$ . 4042)])
#@233 Scan a list of TAGS, removing duplicate names.
This must first sort the tags by name alphabetically ascending.
For more complex uniqueness testing used by the semanticdb
typecaching system, see `semanticdb-typecache-merge-streams'.
(defalias 'semantic-unique-tag-table-by-name #[(tags) "\304\305!!\306\211\203,	\203 \n@\211@)	@\211@)\230\204%\n@	B\nA\211\204\f	\237*\207" [tags uniq sorted tag semantic-sort-tags-by-name-increasing copy-sequence nil] 4 (#$ . 4321)])
#@316 Scan a list of TAGS, removing duplicates.
This must first sort the tags by position ascending.
TAGS are removed only if they are equivalent, as can happen when
multiple tag sources are scanned.
For more complex uniqueness testing used by the semanticdb
typecaching system, see `semanticdb-typecache-merge-streams'.
(defalias 'semantic-unique-tag-table #[(tags) "\303\304!\305\"\306\211\203&	\203\307\n@	@\"\204\n@	B\nA\211\204
	\237*\207" [tags uniq sorted sort copy-sequence #[(a b) "\304!\204\305\207\304	!\204\306\207\211\307\n8)\310!\203%\311!\202(\312H*	\211\307\n8)\310!\203>\311!\202A\312H*W\207" [a b tag o semantic-tag-with-position-p t nil 4 overlayp overlay-start 0] 4] nil semantic-equivalent-tag-p] 4 (#$ . 4806)])
#@236 Flatten the tags table TABLE.
All tags in TABLE, and all components of top level tags
in TABLE will appear at the top level of list.
Tags promoted to the top of the list will still appear
unmodified as components of their parent tags.
(defalias 'semantic-flatten-tags-table #[(&optional table) "\302!\211C\303\304\"\210\305\306	\237\"*\207" [table lists semantic-something-to-tag-table mapc #[(tag) "\303!\211\205\304	@!\205\305	!\nB\211)\207" [tag components lists semantic-tag-components semantic-tag-with-position-p semantic-flatten-tags-table] 3] apply append] 4 (#$ . 5574)])
#@439 Function used to get a symbol describing the class of a tag.
This function must take one argument of a semantic tag.
It should return a symbol found in `semantic-symbol->name-assoc-list'
which `semantic-bucketize' uses to bin up tokens.
To create new bins for an application augment
`semantic-symbol->name-assoc-list', and
`semantic-symbol->name-assoc-list-for-type-parts' in addition
to setting this variable (locally in your function).
(defvar semantic-bucketize-tag-class #[(tok) "\211A@)\207" [tok tag] 2] (#$ . 6173))
#@530 Sort TAGS into a group of buckets based on tag class.
Unknown classes are placed in a Misc bucket.
Type bucket names are defined by either `semantic-symbol->name-assoc-list'.
If PARENT is specified, then TAGS belong to this PARENT in some way.
This will use `semantic-symbol->name-assoc-list-for-type-parts' to
generate bucket names.
Optional argument FILTER is a filter function to be applied to each bucket.
The filter function will take one argument, which is a list of tokens, and
may re-organize the list with side-effects.
(defalias 'semantic-bucketize #[(tags &optional parent filter) "\203	\202	\n\211\306\fGT\307\"\307\211\f
\307\310\307\f\203<\f@@BB\fAT\202\"\203m@!\211
\236\211\fA\206U\311
@
HBI\210A\211\204A\310\211
GW\203\236
H\203\225S8A\206\212\312
H!BBT\211\202q
\311H\203\265\313\206\253\312
\311H!BB\237.\207" [parent semantic-symbol->name-assoc-list-for-type-parts semantic-symbol->name-assoc-list name-list sn bins make-vector nil 1 0 nreverse "Misc" ask tagtype nsn num out tags semantic-bucketize-tag-class filter] 6 (#$ . 6705)])
#@185 In `semantic-adopt-external-members', the type of 'type for metaparents.
A metaparent is a made-up type semantic token used to hold the child list
of orphaned members of a named type.
(defvar semantic-orphaned-member-metaparent-type "class" (#$ . 7854))
(make-variable-buffer-local 'semantic-orphaned-member-metaparent-type)
#@515 Function called when an externally defined orphan is found.
By default, the token is always marked with the `adopted' property.
This function should be locally bound by a program that needs
to add additional behaviors into the token list.
This function is called with two arguments.  The first is TOKEN which is
a shallow copy of the token to be modified.  The second is the PARENT
which is adopting TOKEN.  This function should return TOKEN (or a copy of it)
which is then integrated into the revised token list.
(defvar semantic-mark-external-member-function nil (#$ . 8186))
#@785 Rebuild TAGS so that externally defined members are regrouped.
Some languages such as C++ and CLOS permit the declaration of member
functions outside the definition of the class.  It is easier to study
the structure of a program when such methods are grouped together
more logically.

This function uses `semantic-tag-external-member-p' to
determine when a potential child is an externally defined member.

Note: Applications which use this function must account for token
types which do not have a position, but have children which *do*
have positions.

Applications should use `semantic-mark-external-member-function'
to modify all tags which are found as externally defined to some
type.  For example, changing the token type for generating extra
buckets with the bucket function.
(defalias 'semantic-adopt-external-members #[(tags) "\306\211\211\211\f\203\336\307\f@!\211\203\f@\306\"
\206&\"\211\"@)\"\211\"A@)\310\"\"\311\"8)!\310\"\"\312\"8)!\"\"\313\"8)\257*\314\"#$\315$\316\317#\210#\203s#GS#\233$C\241\210\202{$CBB*\202\327\f@\211\"A@)\320=\203\322\f@\306\"
\206\235\"\211\"@)\"\211\"A@)\310\"\"\311\"8)!\310\"\"\312\"8)!\"\"\313\"8)\257*	B\211@\nB\202\327\f@	B\fA\211\204\f\n\203\230\314\n@\211\"@)\"\211%A&%\203K'\203\321\322&\"&\n@\323\324\n@\211\"\323(\"\325\"\"\311\"8)(\"+&\")(\211\"\211\"AA)\211*:\203E*\326\327*@()#!\240\210,%\306\240\210\324\nA\321\330\331\n@\211\"\323(\"\325\"\"\311\"8)(\"+!\306+\211\203\215\f@\211\"A@)\320=\203\206\f@+B+\fA\211\204r+\237*\"\"*\202\336\203 @@\203@\211@,\306\211\211-./\332\333
\320\334\323/\335.@\336.A-&\f-0A&0\"\337\"\340\317#\210)'\203\352\321\341&\"&0\323&)(\211\"\211\"AA)\211*:\203*\326\327*@()#!\240\210,0	B+A\211\204\234	\237,\207" [tmp out decent-list parent-buckets tags name nil semantic-tag-external-member-parent copy-sequence 2 3 4 assoc semantic--tag-put-property-no-side-effect adopted t type mapcar #[(tok) "	\n@\"\207" [semantic-mark-external-member-function tok decent-list] 3] :members append plist-get semantic-tag-make-plist plist-put #[(tok) "\303	\206
\n\211@)\n\211A@)\304\n\305\n8)!\304\n\306\n8)!\n\307\n8)\257*\207" [tok name tag nil copy-sequence 2 3 4] 7] semantic-something-to-tag-table apply semantic-tag :type :superclasses :interfaces semantic--tag-put-property :faux-flag #[(tok) "	\n\"\207" [semantic-mark-external-member-function tok fauxtag] 3] tag a tagcopy bucket bucketkids semantic-mark-external-member-function attribute value plist-cdr result semantic-orphaned-member-metaparent-type attributes parents members fauxtag] 14 (#$ . 8771)])
#@454 Return a parent for TAG when TAG is an external member.
TAG is an external member if it is defined at a toplevel and
has some sort of label defining a parent.  The parent return will
be a string.

The default behavior, if not overridden with
`tag-member-parent' gets the `parent' extra
specifier of TAG.

If this function is overridden, use
`semantic-tag-external-member-parent-default' to also
include the default behavior, and merely extend your own.
(defalias 'semantic-tag-external-member-parent #[(tag) "\305\211\306\307\310!\306\204\"\211\262\204\"	\262\n\205 \311\n\"\262\203M\211\204M\302N\203<\311\302N\"\211\262\204\"\211\312N\206F\211\313N\262\262\202\"\266\203\211\262\205a\211\203_N\205aJ\266\203\206\326\211\211\314N\262\205\326\211\211\314N\262\306\307\310!\306\204\225\211\262\204\225	\262\n\205\223\311\n\"\262\203\300\211\204\300\302N\203\257\311\302N\"\211\262\204\225\211\312N\206\271\211\313N\262\262\202\225\266\203\211\262\205\324\211\203\322N\205\324J\266\203\262\211\203\343\f!\202\346\315\f!)\207" [mode-local-active-mode major-mode mode-local-symbol-table #1=#:override tag semantic-tag-external-member-parent nil override-flag symbol-name intern-soft mode-local-parent derived-mode-parent mode-local--overload-obsolete semantic-tag-external-member-parent-default] 13 (#$ . 11492)])
(put 'semantic-tag-external-member-parent 'mode-local-overload t)
#@74 Return the name of TAGs parent only if TAG is not defined in its parent.
(defalias 'semantic-tag-external-member-parent-default #[(tag) "\303\304\3058)	\"*\211;\205\n)\207" [tag attribute tp :parent plist-get 2] 4 (#$ . 12949)])
#@458 Return non-nil if PARENT is the parent of TAG.
TAG is an external member of PARENT when it is somehow tagged
as having PARENT as its parent.
PARENT and TAG must both be semantic tags.

The default behavior, if not overridden with
`tag-external-member-p' is to match :parent attribute in
the name of TAG.

If this function is overridden, use
`semantic-tag-external-member-children-p-default' to also
include the default behavior, and merely extend your own.
(defalias 'semantic-tag-external-member-p #[(parent tag) "\306\211\307\310\311!\307\204\"\211\262\204\"	\262\n\205 \312\n\"\262\203M\211\204M\302N\203<\312\302N\"\211\262\204\"\211\313N\206F\211\314N\262\262\202\"\266\203\211\262\205a\211\203_N\205aJ\266\203\206\326\211\211\315N\262\205\326\211\211\315N\262\307\310\311!\307\204\225\211\262\204\225	\262\n\205\223\312\n\"\262\203\300\211\204\300\302N\203\257\312\302N\"\211\262\204\225\211\313N\206\271\211\314N\262\262\202\225\266\203\211\262\205\324\211\203\322N\205\324J\266\203\262\211\203\344\f
\"\202\350\316\f
\")\207" [mode-local-active-mode major-mode mode-local-symbol-table #1=#:override parent tag semantic-tag-external-member-p nil override-flag symbol-name intern-soft mode-local-parent derived-mode-parent mode-local--overload-obsolete semantic-tag-external-member-p-default] 13 (#$ . 13194)])
(put 'semantic-tag-external-member-p 'mode-local-overload t)
#@48 Return non-nil if PARENT is the parent of TAG.
(defalias 'semantic-tag-external-member-p-default #[(parent tag) "\303!\211;\205\n\211@)	\230)\207" [tag tp parent semantic-tag-external-member-parent] 3 (#$ . 14653)])
#@779 Return the list of children which are not *in* TAG.
If optional argument USEDB is non-nil, then also search files in
the Semantic Database.  If USEDB is a list of databases, search those
databases.

Children in this case are functions or types which are members of
TAG, such as the parts of a type, but which are not defined inside
the class.  C++ and CLOS both permit methods of a class to be defined
outside the bounds of the class' definition.

The default behavior, if not overridden with
`tag-external-member-children' is to search using
`semantic-tag-external-member-p' in all top level definitions
with a parent of TAG.

If this function is overridden, use
`semantic-tag-external-member-children-default' to also
include the default behavior, and merely extend your own.
(defalias 'semantic-tag-external-member-children #[(tag &optional usedb) "\306\211\307\310\311!\307\204\"\211\262\204\"	\262\n\205 \312\n\"\262\203M\211\204M\302N\203<\312\302N\"\211\262\204\"\211\313N\206F\211\314N\262\262\202\"\266\203\211\262\205a\211\203_N\205aJ\266\203\206\326\211\211\315N\262\205\326\211\211\315N\262\307\310\311!\307\204\225\211\262\204\225	\262\n\205\223\312\n\"\262\203\300\211\204\300\302N\203\257\312\302N\"\211\262\204\225\211\313N\206\271\211\314N\262\262\202\225\266\203\211\262\205\324\211\203\322N\205\324J\266\203\262\211\203\344\f
\"\202\350\316\f
\")\207" [mode-local-active-mode major-mode mode-local-symbol-table #1=#:override tag usedb semantic-tag-external-member-children nil override-flag symbol-name intern-soft mode-local-parent derived-mode-parent mode-local--overload-obsolete semantic-tag-external-member-children-default] 13 (#$ . 14881)])
(put 'semantic-tag-external-member-children 'mode-local-overload t)
#@168 Return list of external children for TAG.
Optional argument USEDB specifies if the semantic database is used.
See `semantic-tag-external-member-children' for details.
(defalias 'semantic-tag-external-member-children-default #[(tag &optional usedb) "\203+\306\307!\203+\310 \203+\306\311!\203+\312	\211@)	\"\211\205)\313\314\315\316\n\"\")\207\317\320\321\322	D\323BBEp\324!\325\211\203Z\f@!\203Q@
BA\211\204C
\237,\207" [usedb tag m table predicate result require semantic/db-mode semanticdb-minor-mode-p semantic/db-find semanticdb-find-tags-external-children-of-type apply append mapcar cdr lambda (tok) semantic-tag-external-member-p quote (tok) semantic-something-to-tag-table nil tags] 6 (#$ . 16698)])
#@334 Return a list of real tags that faux TAG might represent.

In some languages, a method can be defined on an object which is
not in the same file.  In this case,
`semantic-adopt-external-members' will create a faux-tag.  If it
is necessary to get the tag from which for faux TAG was most
likely derived, then this function is needed.
(defalias 'semantic-tag-external-class #[(tag) "\305!\204
\306\307\305D\"\210\310\211\311\312\313!\311\204/	\211\262\204/\n\262\205-\314\"\262\203Z\211\204Z\303N\203I\314\303N\"\211\262\204/\211\315N\206S\211\316N\262\262\202/\266\203\211\262\205n\211\203lN\205nJ\266\203\206\343\211\211\317N\262\205\343\211\211\317N\262\311\312\313!\311\204\242	\211\262\204\242\n\262\205\240\314\"\262\203\315\211\204\315\303N\203\274\314\303N\"\211\262\204\242\211\315N\206\306\211\316N\262\262\202\242\266\203\211\262\205\341\211\203\337N\205\341J\266\203\262\211\203\360\f!\202\363\320!)\207" [tag mode-local-active-mode major-mode mode-local-symbol-table #1=#:override semantic-tag-faux-p signal wrong-type-argument semantic-tag-external-class nil override-flag symbol-name intern-soft mode-local-parent derived-mode-parent mode-local--overload-obsolete semantic-tag-external-class-default] 13 (#$ . 17439)])
(put 'semantic-tag-external-class 'mode-local-overload t)
#@106 Return a list of real tags that faux TAG might represent.
See `semantic-tag-external-class' for details.
(defalias 'semantic-tag-external-class-default #[(tag) "\303\304!\205\"\305 \205\"\306\307	\211A@)\310	\211@)!\"\311\n\312\"*\207" [semanticdb-search-system-databases tag m require semantic/db-mode semanticdb-minor-mode-p nil semanticdb-find-tags-by-class semanticdb-find-tags-by-name semanticdb-strip-find-results name] 5 (#$ . 18817)])
(provide 'semantic/sort)

Zerion Mini Shell 1.0