@defun featurep feature &optional subfeature
This function returns @code{t} if @var{feature} has been provided in the
-current Emacs session (i.e., if @var{feature} is a member of
+current Emacs session (i.e.@:, if @var{feature} is a member of
@code{features}.) If @var{subfeature} is non-nil, then the function
-returns @code{t} only if that subfeature is provided as well (i.e.
-if @var{subfeature} is a member of the @var{subfeature} property
+returns @code{t} only if that subfeature is provided as well (i.e.@:
+if @var{subfeature} is a member of the @code{subfeature} property
of the @var{feature} symbol.)
@end defun
and the features they require.
Each element is a list and describes one library. The @sc{car} of the
-list is the name of the library, as a string. The rest of the list is
-composed of these kinds of objects:
-
-@itemize @bullet
-@item
-Symbols that were defined by this library.
-@item
-Cons cells of the form @code{(require . @var{feature})} indicating
-features that were required.
-@item
-Cons cells of the form @code{(provide . @var{feature})} indicating
-features that were provided.
-@end itemize
+list is the name of the library, as a string. The rest of the list
+elements have these forms:
+
+@table @code
+@item @var{fun}
+The function @var{fun} was defined by this library.
+@item (t . @var{fun})
+The function @var{fun} was previously an autoload before this library
+redefined it as a function. The following element is always the
+symbol @var{fun}, which signifies that the library defined @var{fun}
+as a function.
+@item (autoload . @var{fun})
+The function @var{fun} was defined as an autoload.
+@item (defvar . @var{var})
+The symbol @var{var} was defined as a variable.
+@item (require . @var{feature})
+The feature @var{feature} was required.
+@item (provide . @var{feature})
+The feature @var{feature} was provided.
+@end table
The value of @code{load-history} may have one element whose @sc{car} is
@code{nil}. This element describes definitions made with
installed library is found by searching @code{load-path}, you should not
include any directory names in @var{library}.
-@var{library} can also be a feature (i.e. a symbol), in which case,
+@var{library} can also be a feature (i.e.@: a symbol), in which case
@var{form} is evaluated when @code{(provide @var{library})} is called.
An error in @var{form} does not undo the load, but does prevent