This shows you the differences between two versions of the page.
cl:macros:pprint-exit-if-list-exhausted [2019/09/14 05:00] |
cl:macros:pprint-exit-if-list-exhausted [2021/01/26 04:00] (current) |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Local Macro PPRINT-EXIT-IF-LIST-EXHAUSTED ====== | ||
+ | |||
+ | ====Syntax==== | ||
+ | * **pprint-exit-if-list-exhausted** → //**[[CL:Constant Variables:nil]]**// | ||
+ | |||
+ | ====Arguments and Values==== | ||
+ | None. | ||
+ | |||
+ | ====Description==== | ||
+ | Tests whether or not the //list// passed to the //[[CL:Glossary:lexically current logical block]]// has been exhausted; see section {\secref\DynamicControlofOutput}. If this //list// has been reduced to **[[CL:Constant Variables:nil]]**, **pprint-exit-if-list-exhausted** terminates the execution of the //[[CL:Glossary:lexically current logical block]]// except for the printing of the suffix. Otherwise **pprint-exit-if-list-exhausted** returns **[[CL:Constant Variables:nil]]**. | ||
+ | |||
+ | Whether or not **pprint-exit-if-list-exhausted** is //[[CL:Glossary:fbound]]// in the //[[CL:Glossary:global environment]]// is //[[CL:Glossary:implementation-dependent]]//; however, the restrictions on redefinition and //[[CL:Glossary:shadow|shadowing]]// of **pprint-exit-if-list-exhausted** are the same as for //[[CL:Glossary:symbols]]// in the **''common-lisp''** //[[CL:Glossary:package]]// which are //[[CL:Glossary:fbound]]// in the //[[CL:Glossary:global environment]]//. The consequences of attempting to use **pprint-exit-if-list-exhausted** outside of **[[CL:Macros:pprint-logical-block]]** are undefined. | ||
+ | |||
+ | ====Examples==== | ||
+ | None. | ||
+ | |||
+ | ====Side Effects==== | ||
+ | None. | ||
+ | |||
+ | ====Affected By==== | ||
+ | None. | ||
+ | |||
+ | ====Exceptional Situations==== | ||
+ | An error is signaled (at macro expansion time or at run time) if **pprint-exit-if-list-exhausted** is used anywhere other than lexically within a call on **[[CL:Macros:pprint-logical-block]]**. | ||
+ | |||
+ | Also, the consequences of executing **[[CL:Functions:pprint-if-list-exhausted]]** outside of the dynamic extent of the **[[CL:Macros:pprint-logical-block]]** which lexically contains it are undefined. | ||
+ | |||
+ | ====See Also==== | ||
+ | * **[[CL:Macros:pprint-logical-block|Macro PPRINT-LOGICAL-BLOCK]]** | ||
+ | * **[[CL:Macros:pprint-pop|Local Macro PPRINT-POP]]**. | ||
+ | |||
+ | ====Notes==== | ||
+ | None. | ||
+ | |||
+ | \issue{PRETTY-PRINT-INTERFACE} \issue{LEXICAL-CONSTRUCT-GLOBAL-DEFINITION:UNDEFINED} | ||