cfunction (net/read stream nbytes &opt buf timeout) Read up to n bytes from a stream, suspending the current fiber until the bytes are available. `n` can also be the keyword `:all` to read into the buffer until end of stream. If less than n bytes are available (and more than 0), will push those bytes and return early. Takes an optional timeout in seconds, after which will return nil. Returns a buffer with up to n more bytes in it, or raises an error if the read failed.
# in a terminal: # $ while true; do date | nc 0.0.0.0 1234 -w 1; sleep 1; done # in a janet repl: (net/server "0.0.0.0" 1234 (fn [conn] (prin (net/read conn 4096)) (net/close conn))) # note: output doesn't actually start until you (quit) your repl's fiber: (quit)