comparison lispref/files.texi @ 90743:f83d17e1ace6

Merge from emacs--devo--0 Patches applied: * emacs--devo--0 (patch 615-621) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 197-199) - Merge from emacs--devo--0 - Update from CVS Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-166
author Miles Bader <miles@gnu.org>
date Tue, 30 Jan 2007 22:22:43 +0000
parents 95d0cdf160ea 330094c564c4
children 4ef881a120fe
comparison
equal deleted inserted replaced
90742:d12279146267 90743:f83d17e1ace6
1155 The number of names the file has. Alternate names, also known as hard 1155 The number of names the file has. Alternate names, also known as hard
1156 links, can be created by using the @code{add-name-to-file} function 1156 links, can be created by using the @code{add-name-to-file} function
1157 (@pxref{Changing Files}). 1157 (@pxref{Changing Files}).
1158 1158
1159 @item 1159 @item
1160 The file's @acronym{UID} as a string or an integer. If a string 1160 The file's @acronym{UID}, normally as a string. However, if it does
1161 value cannot be looked up, the integer value is returned. 1161 not correspond to a named user, the value is an integer or a floating
1162 point number.
1162 1163
1163 @item 1164 @item
1164 The file's @acronym{GID} likewise. 1165 The file's @acronym{GID}, likewise.
1165 1166
1166 @item 1167 @item
1167 The time of last access, as a list of two integers. 1168 The time of last access, as a list of two integers.
1168 The first integer has the high-order 16 bits of time, 1169 The first integer has the high-order 16 bits of time,
1169 the second has the low 16 bits. (This is similar to the 1170 the second has the low 16 bits. (This is similar to the
2552 If the specified file name matches more than one handler, the one 2553 If the specified file name matches more than one handler, the one
2553 whose match starts last in the file name gets precedence. This rule 2554 whose match starts last in the file name gets precedence. This rule
2554 is chosen so that handlers for jobs such as uncompression are handled 2555 is chosen so that handlers for jobs such as uncompression are handled
2555 first, before handlers for jobs such as remote file access. 2556 first, before handlers for jobs such as remote file access.
2556 2557
2557 Here are the operations that a magic file name handler gets to handle: 2558 Here are the operations that a magic file name handler gets to handle:
2558 2559
2559 @ifnottex 2560 @ifnottex
2560 @noindent 2561 @noindent
2561 @code{access-file}, @code{add-name-to-file}, 2562 @code{access-file}, @code{add-name-to-file},
2562 @code{byte-compiler-base-file-name},@* 2563 @code{byte-compiler-base-file-name},@*
2702 operations; then only those operations will call the handler. This 2703 operations; then only those operations will call the handler. This
2703 avoids inefficiency, but its main purpose is for autoloaded handler 2704 avoids inefficiency, but its main purpose is for autoloaded handler
2704 functions, so that they won't be loaded except when they have real 2705 functions, so that they won't be loaded except when they have real
2705 work to do. 2706 work to do.
2706 2707
2708 Simply deferring all operations to the usual primitives does not
2709 work. For instance, if the file name handler applies to
2710 @code{file-exists-p}, then it must handle @code{load} itself, because
2711 the usual @code{load} code won't work properly in that case. However,
2712 if the handler uses the @code{operations} property to say it doesn't
2713 handle @code{file-exists-p}, then it need not handle @code{load}
2714 nontrivially.
2715
2707 @defvar inhibit-file-name-handlers 2716 @defvar inhibit-file-name-handlers
2708 This variable holds a list of handlers whose use is presently inhibited 2717 This variable holds a list of handlers whose use is presently inhibited
2709 for a certain operation. 2718 for a certain operation.
2710 @end defvar 2719 @end defvar
2711 2720