A readable-snip<%> object is treated specially by the port
generated by open-input-text-editor: When a
readable-snip<%> object is encountered for the input stream,
its read-special method is called to
generate the read result for the snip, which is returned from the
port as a “special” value in the sense of
read-char-or-special.
Since read and read-syntax build on read-char-or-special, a snip can implement readable-snip<%> so that it produces a whole S-expression or some other kind of value when read is used on a stream containing the snip.
| ||||||||||||||||||||||||||||
source : any/c | ||||||||||||||||||||||||||||
line : (or/c exact-nonnegative-integer? false/c) | ||||||||||||||||||||||||||||
column : (or/c exact-nonnegative-integer? false/c) | ||||||||||||||||||||||||||||
position : (or/c exact-nonnegative-integer? false/c) |
The arguments are the same as the arguments to a procedure returned by
a custom input port’s read-in; see Custom Ports for
details. The result is also the same as the result from a
read-in-produced procedure.