@c -*-texinfo-*-
@c This is part of the GNU Emacs Lisp Reference Manual.
-@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2003
-@c Free Software Foundation, Inc.
+@c Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1998, 1999, 2002, 2003,
+@c 2004, 2005, 2006 Free Software Foundation, Inc.
@c See the file elisp.texi for copying conditions.
@setfilename ../info/symbols
@node Symbols, Evaluation, Hash Tables, Top
@result{} "buffer-file-name"
(symbol-value 'buffer-file-name)
@result{} "/gnu/elisp/symbols.texi"
-(symbol-plist 'buffer-file-name)
- @result{} (variable-documentation 29529)
(symbol-function 'buffer-file-name)
@result{} #<subr buffer-file-name>
+(symbol-plist 'buffer-file-name)
+ @result{} (variable-documentation 29529)
@end example
@noindent
@code{defun} defines a symbol as a function, creating a lambda
expression and storing it in the function cell of the symbol. This
lambda expression thus becomes the function definition of the symbol.
-(The term ``function definition'', meaning the contents of the function
+(The term ``function definition,'' meaning the contents of the function
cell, is derived from the idea that @code{defun} gives the symbol its
definition as a function.) @code{defsubst} and @code{defalias} are two
other ways of defining a function. @xref{Functions}.
@defun plist-get plist property
This returns the value of the @var{property} property
-stored in the property list @var{plist}.
-A @code{wrong-type-argument} error may be signaled if @var{plist} is
-not a valid property list. For example,
+stored in the property list @var{plist}. For example,
@example
(plist-get '(foo 4) 'foo)
(plist-get '(foo 4 bad) 'bar)
@result{} @code{wrong-type-argument} error
@end example
-@end defun
-@defun safe-plist-get plist property
-This returns the value of the @var{property} property
-stored in the property list @var{plist}. Unlike @code{plist-get}, it
-accepts a malformed @var{plist} argument and always returns @code{nil}
+It accepts a malformed @var{plist} argument and always returns @code{nil}
if @var{property} is not found in the @var{plist}. For example,
@example
-(safe-plist-get '(foo 4 bad) 'bar)
+(plist-get '(foo 4 bad) 'bar)
@result{} nil
@end example
@end defun
@end defun
@defun plist-member plist property
-@tindex plist-member
This returns non-@code{nil} if @var{plist} contains the given
@var{property}. Unlike @code{plist-get}, this allows you to distinguish
between a missing property and a property with the value @code{nil}.