12.1.6 String Ports
String input and output ports do not need to be explicitly closed. The
file-position procedure works for string ports in
position-setting mode.
Creates an input port that reads characters from
bstr (see
Byte Strings). Modifying
bstr afterward does not
affect the byte stream produced by the port. The optional
name argument is used as the name for the returned port.
Creates an input port that reads bytes from the UTF-8 encoding (see
Encodings and Locales) of
str. The optional
name
argument is used as the name for the returned port.
Creates an output port that accumulates the output into a byte
string. The optional name argument is used as the name for
the returned port.
Returns the bytes accumulated in
out so far in a
freshly allocated byte string (including any bytes written after the
port’s current position, if any). The
out port must be a
string output port produced by
open-output-bytes (or
open-output-string) or a structure whose
prop:output-port property refers to such an output port
(transitively).
If reset? is true, then all bytes are removed from the port,
and the port’s position is reset to 0; if reset? is
#f, then all bytes remain in the port for further
accumulation (so they are returned for later calls to
get-output-bytes or get-output-string), and the
port’s position is unchanged.
The start-pos and end-pos arguments specify the
range of bytes in the port to return; supplying start-pos and
end-pos is the same as using subbytes on the result
of get-output-bytes, but supplying them to
get-output-bytes can avoid an allocation. The
end-pos argument can be #f, which corresponds to not
passing a second argument to subbytes.