diff options
Diffstat (limited to 'doc/misc/cl.texi')
-rw-r--r-- | doc/misc/cl.texi | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi index 1c202961889..78bc8fb9479 100644 --- a/doc/misc/cl.texi +++ b/doc/misc/cl.texi @@ -2627,10 +2627,10 @@ In this package, @code{cl-locally} is no different from @code{progn}. @end defmac @defmac cl-the type form -Type information provided by @code{cl-the} is ignored in this package; -in other words, @code{(cl-the @var{type} @var{form})} is equivalent to -@var{form}. Future byte-compiler optimizations may make use of this -information. +@code{cl-the} returns the value of @code{form}, first checking (if +optimization settings permit) that it is of type @code{type}. Future +byte-compiler optimizations may also make use of this information to +improve runtime efficiency. For example, @code{mapcar} can map over both lists and arrays. It is hard for the compiler to expand @code{mapcar} into an in-line loop @@ -4255,6 +4255,7 @@ This function returns the underlying data structure for @code{struct-type}, which is a symbol. It returns @code{vector} or @code{list}, or @code{nil} if @code{struct-type} is not actually a structure. +@end defun @defun cl-struct-slot-info struct-type This function returns a list of slot descriptors for structure @@ -4263,6 +4264,7 @@ where @code{name} is the name of the slot and @code{opts} is the list of slot options given to @code{defstruct}. Dummy entries represent the slots used for the struct name and that are skipped to implement @code{:initial-offset}. +@end defun @defun cl-struct-slot-offset struct-type slot-name Return the offset of slot @code{slot-name} in @code{struct-type}. The @@ -4270,6 +4272,7 @@ returned zero-based slot index is relative to the start of the structure data type and is adjusted for any structure name and :initial-offset slots. Signal error if struct @code{struct-type} does not contain @code{slot-name}. +@end defun @defun cl-struct-slot-value struct-type slot-name inst Return the value of slot @code{slot-name} in @code{inst} of @@ -4278,6 +4281,7 @@ Return the value of slot @code{slot-name} in @code{inst} of @code{setf} place. @code{cl-struct-slot-value} uses @code{cl-struct-slot-offset} internally and can signal the same errors. +@end defun @defun cl-struct-set-slot-value struct-type slot-name inst value Set the value of slot @code{slot-name} in @code{inst} of @@ -4286,6 +4290,7 @@ Set the value of slot @code{slot-name} in @code{inst} of which to set the given slot. Return @code{value}. @code{cl-struct-slot-value} uses @code{cl-struct-set-slot-offset} internally and can signal the same errors. +@end defun @node Assertions @chapter Assertions and Errors |