~ chicken-core (chicken-5) f7cf41912e6cf4c28402f98bd5c7e3de02e59084
commit f7cf41912e6cf4c28402f98bd5c7e3de02e59084 Author: Jim Ursetto <zbigniewsz@gmail.com> AuthorDate: Tue Jan 29 14:35:35 2013 -0600 Commit: Jim Ursetto <zbigniewsz@gmail.com> CommitDate: Tue Jan 29 14:35:35 2013 -0600 manual: note set-read-syntax! can return zero values, from way back in c1dc721cd9 diff --git a/manual/Unit library b/manual/Unit library index 232d42c9..86f92f78 100644 --- a/manual/Unit library +++ b/manual/Unit library @@ -1204,15 +1204,16 @@ to the reader: If {{CHAR-OR-SYMBOL}} is a symbol, then a so-called ''read-mark'' handler is defined. In that case the handler procedure will be called when a character-sequence of the -form - - #!SYMBOL - -is encountered. +form {{#!SYMBOL}} is encountered. You can undo special handling of read-syntax by passing {{#f}} as the second argument (if the syntax was previously defined via {{set-read-syntax!}}). +As a special case, your handler can return zero values, via {{(values)}}. This causes +the reader to completely ignore whatever input you've read, rather than returning some +possibly unspecified value. This can be useful in macro context, reading comments, +conditional compilation, and so forth. Available in Chicken 4.6.6 and later. + Note that all of CHICKEN's special non-standard read-syntax is handled directly by the reader. To disable built-in read-syntax, define a handler that triggers an error (for example).Trap