%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/db-file.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.

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


(byte-code "\300\301!\210\300\302!\210\300\303!\207" [require semantic/db cedet-files data-debug] 2)
#@58 Version of semanticdb we are writing files to disk with.
(defvar semanticdb-file-version semantic-version (#$ . 509))
#@59 Version of semanticdb we are not reverse compatible with.
(defvar semanticdb-file-incompatible-version "1.4" (#$ . 633))
(byte-code "\302\303\304\305\306\307\310\311&\210\302\312\313\314\306\307\310\315&\210\302\316\317\320\306\307\310\321&\210\322\323\324\325#\210\326\325\211\203M	@\323N\203F\324N\204F\327\324\323N#\210	A\211\204/*\330\323\324\331#\210\302\324\325\332\306\307\310\333&\207" [prop --dolist-tail-- custom-declare-variable semanticdb-default-file-name "semantic.cache" "File name of the semantic tag cache." :group semanticdb :type string semanticdb-default-save-directory (locate-user-emacs-file "semanticdb" ".semanticdb") "Directory name where semantic cache files are stored.\nBy default, it is either ~/.emacs.d/semanticdb, or ~/.semanticdb depending\non which exists.\nIf this value is nil, files are saved in the current directory.  If the value\nis a valid directory, then it overrides `semanticdb-default-file-name' and\nstores caches in a coded file name in this directory." (choice :tag "Default-Directory" :menu-tag "Default-Directory" (const :tag "Use current directory" :value nil) (directory)) semanticdb-persistent-path '(always) "List of valid paths that semanticdb will cache tags to.\nWhen `global-semanticdb-minor-mode' is active, tag lists will\nbe saved to disk when Emacs exits.  Not all directories will have\ntags that should be saved.\nThe value should be a list of valid paths.  A path can be a string,\nindicating a directory in which to save a variable.  An element in the\nlist can also be a symbol.  Valid symbols are `never', which will\ndisable any saving anywhere, `always', which enables saving\neverywhere, or `project', which enables saving in any directory that\npasses a list of predicates in `semanticdb-project-predicate-functions'." (repeat (choice (string :tag "Directory") (const never) (const always) (const project))) defvaralias semanticdb-save-database-hooks semanticdb-save-database-functions nil (saved-value saved-variable-comment) put make-obsolete-variable "24.3" "Abnormal hook run after a database is saved.\nEach function is called with one argument, the object representing\nthe database recently written." hook] 9)
#@148 Character used for directory separation.
Obsoleted in some versions of Emacs.  Needed in others.
NOTE: This should get deleted from semantic soon.
(defvar semanticdb-dir-sep-char (byte-code "\300\301!\203	\301J\207\302\207" [boundp directory-sep-char 47] 2) (#$ . 2846))
#@144 If DIR is broken, fix it.
Force DIR to end with a /.
Note: Same as `file-name-as-directory'.
NOTE: This should get deleted from semantic soon.
(defalias 'semanticdb-fix-pathname #[(dir) "\301!\207" [dir file-name-as-directory] 2 (#$ . 3125)])
(byte-code "\300\301\302\303!\"\210\300\304\305\303!\"\210\300\306\304\"\210\307\306\310\311#\210\312\303\313\304#\314\303\315\316\317$\207" [defalias semanticdb-project-database-file-p eieio-make-class-predicate semanticdb-project-database-file semanticdb-project-database-file--eieio-childp eieio-make-child-predicate semanticdb-project-database-file-child-p make-obsolete "use (cl-typep ... \\='semanticdb-project-database-file) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (semanticdb-project-database eieio-persistent) ((file-header-line :initform ";; SEMANTICDB Tags save file") (do-backups :initform nil) (semantic-tag-version :initarg :semantic-tag-version :initform "1.4" :documentation "The version of the tags saved.\nThe default value is 1.4.  In semantic 1.4 there was no versioning, so\nwhen those files are loaded, this becomes the version number.\nTo save the version number, we must hand-set this version string.") (semanticdb-version :initarg :semanticdb-version :initform "1.4" :documentation "The version of the object system saved.\nThe default value is 1.4.  In semantic 1.4, there was no versioning,\nso when those files are loaded, this becomes the version number.\nTo save the version number, we must hand-set this version string.")) (:documentation "Database of file tables saved to disk.")] 6)
#@71 Create a new object of class type `semanticdb-project-database-file'.
(defalias 'semanticdb-project-database-file #[(&rest slots) "\301\302\303#\207" [slots apply make-instance semanticdb-project-database-file] 4 (#$ . 4731)])
(byte-code "\300\301\302\303#\300\207" [function-put semanticdb-project-database-file compiler-macro semanticdb-project-database-file--anon-cmacro] 4)
(defalias 'semanticdb-project-database-file--anon-cmacro #[(whole &rest slots) "@;\204	\207\302\303\304@	@#	@\305@DABB\"\207" [slots whole macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 5])
(cl-generic-define-method 'semanticdb-create-database nil '((dbc (subclass semanticdb-project-database-file)) directory) nil #[(dbc directory) "\306!\307	\"\310\n!\206\311\n!\205\312\n!\211\2041\313	\314\315!!\316P\317\n\320\321\322\f\323
&\n\324\325#\210*\207" [directory dbc fn db semantic-tag-version semanticdb-file-version file-truename semanticdb-cache-filename semanticdb-file-loaded-p file-exists-p semanticdb-load-database make-instance file-name-nondirectory directory-file-name "/" :file :tables nil :semantic-tag-version :semanticdb-version eieio-oset reference-directory] 12 "Create a new semantic database for DIRECTORY and return it.\nIf a database for DIRECTORY has already been loaded, return it.\nIf a database for DIRECTORY exists, then load that database, and return it.\nIf DIRECTORY doesn't exist, create a new one."])
#@29 Load the database FILENAME.
(defalias 'semanticdb-load-database #[(filename) "\3061j\307\310\"\311	!\312	\313\"\312	\314\"\n\203)\315\n@\316	#\210\nA\211\204
\f\232\2036\232\204f\317\320!\210\321\322\f\"\204[\321\323\"\203f\324	!\210\315	\313#\210\325\326\"\210\202f\325\327\"\210\330	!\210\331	,0\207\325\332#\210)\331\207" [filename r c tv fv semanticdb-file-version (error) eieio-persistent-read semanticdb-project-database-file semanticdb-get-database-tables eieio-oref semantic-tag-version semanticdb-version eieio-oset parent-db require inversion inversion-test semanticdb-file semantic-tag semanticdb-flush-database-tables message "Semanticdb file is old.  Starting over for %s" "semanticdb file is old.  Starting over for %s" delete-instance nil "Cache Error: [%s] %s, Restart" foo] 5 (#$ . 6205)])
#@68 Return the project belonging to FILENAME if it was already loaded.
(defalias 'semanticdb-file-loaded-p #[(filename) "\301\302\303#\207" [filename eieio-instance-tracker-find file semanticdb-database-list] 4 (#$ . 7047)])
(byte-code "\300\301\302\303\302\304%\210\300\305\302\306\302\307%\210\300\310\302\311\302\312%\210\300\310\302\313\302\314%\207" [cl-generic-define-method semanticdb-file-directory-exists-p nil ((DB semanticdb-project-database-file) &optional suppress-questions) #[(DB &optional suppress-questions) "\304\305\306\"!\211\204\307\202F\310	!\203\311\202F\n\204'\312\303!\203+\203+\307\202F\313\314\315	\"!\203=\316	\311\"\210\311\202F\312\303!\203E\311\307)\207" [DB dest suppress-questions semanticdb--inhibit-make-directory file-name-directory eieio-oref file nil file-exists-p t boundp y-or-n-p format "Create directory %s for SemanticDB? " make-directory] 5 "Does the directory the database DB needs to write to exist?\nIf SUPPRESS-QUESTIONS, then do not ask to create the directory."] semanticdb-save-db ((DB semanticdb-project-database-file) &optional suppress-questions) #[(DB &optional suppress-questions) "\305\306\"\307!\205\241\310!\205\241\311\n\"\205\241\312!\205\241\3131=\31412\315\206,!00\202\2300\316\317\f	#)\202\230\211<\203[\fA@;\203[\320\321\fA@\"\203[\316\fA@!\202\227\f<\203x\fA@;\203x\320\322\fA@\"\203x\316\fA@!\202\227\n\204\207\323\324\325\fA@\"!\203\221\316\326\fA@	#\202\227\327\330\fA@\")\210\331\332\206\240\")\207" [DB objname suppress-questions semanticdb-current-database foo eieio-oref file semanticdb-dirty-p semanticdb-live-p semanticdb-file-directory-exists-p semanticdb-write-directory-p (error) (file-error) eieio-persistent-save message "%S: %s" string-match "write[- ]protected" "no such directory" y-or-n-p format "Skip Error: %s ?" "Save Error: %S: %s" error "%S" run-hook-with-args semanticdb-save-database-functions] 5 "Write out the database DB to its file.\nIf DB is not specified, then use the current database."] semanticdb-live-p ((obj semanticdb-project-database)) #[(obj) "\301\302\"\205
\303\304\302\"!\207" [obj slot-boundp reference-directory file-exists-p eieio-oref] 4 "Return non-nil if the file associated with OBJ is live.\nLive databases are objects associated with existing directories."] ((obj semanticdb-table)) #[(obj) "\302!\303	!\206
\304	!)\207" [obj full-filename semanticdb-full-filename find-buffer-visiting file-exists-p] 2 "Return non-nil if the file associated with OBJ is live.\nLive files are either buffers in Emacs, or files existing on the filesystem."]] 6)
#@138 Run the data debugger on tables that issue errors.
This variable is set to nil after the first error is encountered
to prevent overload.
(defvar semanticdb-data-debug-on-write-error nil (#$ . 9668))
(byte-code "\300\301\302\303\304\305%\210\300\306\302\307\304\310%\210\300\311\302\312\302\313%\210\300\314\302\315\302\316%\210\300\317\302\320\302\321%\210\300\322\302\323\302\324%\210\300\325\302\326\302\327%\207" [cl-generic-define-method object-write nil ((obj semanticdb-table)) t #[(#1=#:cl--cnm obj) "\306!\205~\307!\203.r\307!q\210\212\310 \210\311	!\203'	\203'\312\313\314 #\210\312\315d#\210*\316\317!!\312\320\n\3218\262#\210\312\322\n\3238\262#\210)\3241U 0\202x
\203j\325\326!\210\327\330!\210\331\332\333#\210\334\335\336\337!\"\210\340\341\fA@\")\210\312\342\334#\207" [obj semantic-show-unmatched-syntax-mode fattr #1# tableerror semanticdb-data-debug-on-write-error semanticdb-live-p semanticdb-in-buffer-p semantic-fetch-tags boundp eieio-oset unmatched-syntax semantic-show-unmatched-lex-tokens-fetch pointmax file-attributes semanticdb-full-filename fsize 7 lastmodtime 5 (error) require data-debug data-debug-new-buffer "*SEMANTICDB ERROR*" data-debug-insert-thing "*" "" nil message "Error Writing Table: %s" eieio-object-name error "%S" dirty] 6 "When writing a table, we have to make sure we deoverlay it first.\nRestore the overlays after writing.\nArgument OBJ is the object to write."] semanticdb-write-directory-p ((obj semanticdb-project-database-file)) #[(#2=#:cl--cnm obj) "\3052|	\203y	@;\203\"\306\n\307\"	@\230\203r\310\305\311\"\210\202r	@\312=\203N\203?\313\303\306\n\307\"\"\203r\310\305\311\"\210\202rG\314U\203r\310\305\311\"\210\202r	@\315=\203]\310\305\316\"\210\202r	@\317=\203l\310\305\311\"\210\202r\320\321	@\"\210	A\211\204\n\f 0)\207" [semanticdb-persistent-path path obj semanticdb-project-predicate-functions #2# found eieio-oref reference-directory throw t project run-hook-with-args-until-success 1 never nil always error "Invalid path %S"] 6 "Return non-nil if OBJ should be written to disk.\nUses `semanticdb-persistent-path' to determine the return value."] semanticdb-file-table ((obj semanticdb-project-database-file) filename) #[(obj filename) "\302\303!\304\305	\306\"#\207" [filename obj object-assoc file-name-nondirectory file eieio-oref tables] 6 "From OBJ, return FILENAME's associated table object."] semanticdb-file-name-non-directory ((dbclass (subclass semanticdb-project-database-file))) #[(dbclass) "\207" [semanticdb-default-file-name] 1 "Return the file name DBCLASS will use.\nFile name excludes any directory part."] semanticdb-file-name-directory ((dbclass (subclass semanticdb-project-database-file)) directory) #[(dbclass directory) "\203\303	!\304\n\305!\")\207	\207" [semanticdb-default-save-directory directory file cedet-directory-name-to-file-name expand-file-name file-name-as-directory] 4 "Return the relative directory to where DBCLASS will save its cache file.\nThe returned path is related to DIRECTORY."] semanticdb-cache-filename ((dbclass (subclass semanticdb-project-database-file)) path) #[(dbclass path) "\302	\"\303!P\207" [dbclass path semanticdb-file-name-directory semanticdb-file-name-non-directory] 3 "For DBCLASS, return a file to a cache file belonging to PATH.\nThis could be a cache file in the current directory, or an encoded file\nname in a secondary directory."] semanticdb-full-filename ((obj semanticdb-project-database-file)) #[(obj) "\301\302\"\207" [obj eieio-oref file] 3 "Fetch the full filename that OBJ refers to."]] 6)
#@130 Cleanup any cache files associated with directories that no longer exist.
Optional NOERROR prevents errors from being displayed.
(defalias 'semanticdb-cleanup-cache-files #[(&optional noerror) "\204\f	\204\f\306\307!\210\205\264\310\n!\311\312#\313\211\"\f\313#\211$\203M$@#\314\315#!!\316\317
!!\204D#\"B\"$A\211$\204)*\"\203\253\320 %\321\216\322\323!&r&q\210\324 \210\325c\210\"\313#\211$\203\207$@\211#\326\261\210$A\211$\204t+\327&\312\211#\210\330\331&!\313\332#\210\333\334!\205\247\335\336\"\"\210\337\340!+\202\263	?\205\263\337\341!,\207" [semanticdb-default-save-directory noerror semanticdb-default-file-name regexp files orig error "No default save directory for semantic-save files" regexp-quote directory-files t nil cedet-file-name-to-directory-name file-name-nondirectory file-exists-p file-name-directory current-window-configuration #[nil "\301!\207" [#1=#:wconfig set-window-configuration] 2] get-buffer-create "*Semanticdb Delete*" erase-buffer "The following Cache files appear to be obsolete.\n\n" "\n" pop-to-buffer fit-window-to-buffer get-buffer-window 1 y-or-n-p "Delete Old Cache Files? " mapc #[(F) "\301\302\"\210\303!\207" [F message "Deleting to %s..." delete-file] 3] message "done." "No obsolete semanticdb.cache files." to-delete F --dolist-tail-- #1# buff] 5 (#$ . 13267) nil])
(provide 'semantic/db-file)

Zerion Mini Shell 1.0