This module provides tools for port I/O.
This library is unstable; compatibility will not be maintained. See Unstable: May Change Without Warning for more information.
(read-all [reader port]) → list? reader : (-> any/c) = read port : input-port? = (current-input-port)
This function produces a list of all the values produced by calling (reader) while current-input-port is set to port, up until it produces eof.
(read-all-syntax [reader port]) → (syntax/c list?) reader : (-> (or/c syntax? eof-object?)) = read port : input-port? = (current-input-port)
This function produces a syntax object containing a list of all the syntax objects produced by calling (reader) while current-input-port is set to port, up until it produces eof. The source location of the result spans the entire portion of the port that was read.
(port->srcloc port [source span]) → srcloc? port : port? source : any/c = (object-name port) span : exact-nonnegative-integer? = 0
Produces a srcloc structure representing the current position of a port, using the provided source and span values to fill in missing fields. This function relies on port-next-location, so line counting must be enabled for port to get meaningful results.