| 
 | 
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.
method
(send a-readable-snip read-special source line column position) → any/c source : any/c line : (or/c exact-nonnegative-integer? #f) column : (or/c exact-nonnegative-integer? #f) position : (or/c exact-nonnegative-integer? #f) 
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.