]> git.eshelyaron.com Git - emacs.git/commitdiff
(File Attributes): UID and GID can be floats.
authorRichard M. Stallman <rms@gnu.org>
Sun, 28 Jan 2007 07:19:16 +0000 (07:19 +0000)
committerRichard M. Stallman <rms@gnu.org>
Sun, 28 Jan 2007 07:19:16 +0000 (07:19 +0000)
(Magic File Names): Explain why deferring all operations to
the standard handler does not work.

lispref/files.texi

index 630eaca9c2aa73c39f054a0b1547bbf3c57456b9..f13888197c70755106889b71f8f6ae3faf43e52b 100644 (file)
@@ -1157,11 +1157,12 @@ links, can be created by using the @code{add-name-to-file} function
 (@pxref{Changing Files}).
 
 @item
-The file's @acronym{UID} as a string or an integer.  If a string
-value cannot be looked up, the integer value is returned.
+The file's @acronym{UID}, normally as a string.  However, if it does
+not correspond to a named user, the value is an integer or a floating
+point number.
 
 @item
-The file's @acronym{GID} likewise.
+The file's @acronym{GID}, likewise.
 
 @item
 The time of last access, as a list of two integers.
@@ -2554,7 +2555,7 @@ whose match starts last in the file name gets precedence.  This rule
 is chosen so that handlers for jobs such as uncompression are handled
 first, before handlers for jobs such as remote file access.
 
-Here are the operations that a magic file name handler gets to handle:
+  Here are the operations that a magic file name handler gets to handle:
 
 @ifnottex
 @noindent
@@ -2704,6 +2705,14 @@ avoids inefficiency, but its main purpose is for autoloaded handler
 functions, so that they won't be loaded except when they have real
 work to do.
 
+  Simply deferring all operations to the usual primitives does not
+work.  For instance, if the file name handler applies to
+@code{file-exists-p}, then it must handle @code{load} itself, because
+the usual @code{load} code won't work properly in that case.  However,
+if the handler uses the @code{operations} property to say it doesn't
+handle @code{file-exists-p}, then it need not handle @code{load}
+nontrivially.
+
 @defvar inhibit-file-name-handlers
 This variable holds a list of handlers whose use is presently inhibited
 for a certain operation.