* frames.texi (Visibility of Frames): Document tty-top-frame.
* loading.texi (Autoload): Document autoloadp, autoload-do-load.
* symbols.texi (Symbol Plists): Document function-get.
+2012-10-30 Chong Yidong <cyd@gnu.org>
+
+ * symbols.texi (Symbol Plists): Document function-get.
+
+ * loading.texi (Autoload): Document autoloadp, autoload-do-load.
+
+ * frames.texi (Visibility of Frames): Document tty-top-frame.
+
2012-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
* keymaps.texi (Format of Keymaps): Document the multiple
value is @code{t} if @var{frame} is visible, @code{nil} if it is
invisible, and @code{icon} if it is iconified.
-On a text terminal, all frames are considered visible, whether they
-are currently being displayed or not.
+On a text terminal, all frames are considered ``visible'' for the
+purposes of this function, even though only one frame is displayed.
+@xref{Raising and Lowering}.
@end defun
@deffn Command iconify-frame &optional frame
that the minibuffer window is in.
@end defopt
-You can also enable auto-raise (raising automatically when a frame is
-selected) or auto-lower (lowering automatically when it is deselected)
-for any frame using frame parameters. @xref{Management Parameters}.
+ On window systems, you can also enable auto-raising (on frame
+selection) or auto-lowering (on frame deselection) using frame
+parameters. @xref{Management Parameters}.
+
+@cindex top frame
+ The concept of raising and lowering frames also applies to text
+terminal frames. On each text terminal, only the top frame is
+displayed at any one time.
+
+@defun tty-top-frame terminal
+This function returns the top frame on @var{terminal}. @var{terminal}
+should be a terminal object, a frame (meaning that frame's terminal),
+or @code{nil} (meaning the selected frame's terminal). If it does not
+refer to a text terminal, the return value is @code{nil}.
+@end defun
@node Frame Configurations
@section Frame Configurations
specifies the file to load to get the real definition of @var{function}.
If @var{filename} does not contain either a directory name, or the
-suffix @code{.el} or @code{.elc}, then @code{autoload} insists on adding
-one of these suffixes, and it will not load from a file whose name is
-just @var{filename} with no added suffix. (The variable
+suffix @code{.el} or @code{.elc}, this function insists on adding one
+of these suffixes, and it will not load from a file whose name is just
+@var{filename} with no added suffix. (The variable
@code{load-suffixes} specifies the exact required suffixes.)
The argument @var{docstring} is the documentation string for the
symbol @var{function}.
@cindex function cell in autoload
-If @var{function} already has a non-void function definition that is not
-an autoload object, @code{autoload} does nothing and returns @code{nil}.
-If the function cell of @var{function} is void, or is already an autoload
-object, then it is defined as an autoload object like this:
+if @var{function} already has non-void function definition that is not
+an autoload object, this function does nothing and returns @code{nil}.
+Otherwise, it constructs an autoload object (@pxref{Autoload Type}),
+and stores it as the function definition for @var{function}. The
+autoload object has this form:
@example
(autoload @var{filename} @var{docstring} @var{interactive} @var{type})
not a macro or a keymap.
@end defun
+@defun autoloadp object
+This function returns non-@code{nil} if @var{object} is an autoload
+object. For example, to check if @code{run-prolog} is defined as an
+autoloaded function, evaluate
+
+@smallexample
+(autoloadp (symbol-function 'run-prolog))
+@end smallexample
+@end defun
+
@cindex autoload errors
The autoloaded file usually contains other definitions and may require
or provide one or more features. If the file is not completely loaded
assumed to contain a trailer starting with a formfeed character.
@end defvar
+ The following function may be used to explicitly load the library
+specified by an autoload object:
+
+@defun autoload-do-load autoload &optional name macro-only
+This function performs the loading specified by @var{autoload}, which
+whould be an autoload object. The optional argument @var{name}, if
+non-@code{nil}, should be a symbol whose function value is
+@var{autoload}; in that case, the return value of this function is the
+symbol's new function value. If the value of the optional argument
+@var{macro-only} is @code{macro}, this function avoids loading a
+function, only a macro.
+@end defun
+
@node Repeated Loading
@section Repeated Loading
@cindex repeated loading
See @code{put} for an example.
@end defun
+@defun function-get symbol property
+This function is identical to @code{get}, except that if @var{symbol}
+is the name of a function alias, it looks in the property list of the
+symbol naming the actual function. @xref{Defining Functions}.
+@end defun
+
@defun put symbol property value
This function puts @var{value} onto @var{symbol}'s property list under
the property name @var{property}, replacing any previous property value.
describing the cycle.
** Miscellaneous new functions:
-
++++
*** `autoloadp'
++++
*** `autoload-do-load'
+++
*** `buffer-narrowed-p' tests if the buffer is narrowed.
++++
*** `file-name-base' returns a file name sans directory and extension.
++++
*** `function-get' fetches a function property, following aliases.
+++
*** `posnp' tests if an object is a `posn'.
*** `system-users' returns the user names on the system.
+++
*** `system-groups' returns the group names on the system.
++++
*** `tty-top-frame' returns the topmost frame of a text terminal.
** New macros `setq-local' and `defvar-local'.