User Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

cl:macros:pprint-exit-if-list-exhausted [2019/09/14 05:00]
cl:macros:pprint-exit-if-list-exhausted [2019/09/20 16: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}