IO.stream
You're seeing just the function
stream, go back to IO module for more information.
Returns a line-based IO.Stream on :stdio.
This is equivalent to:
IO.stream(:stdio, :line)
Specs
stream(device(), :line | pos_integer()) :: Enumerable.t()
Converts the IO device into an IO.Stream.
An IO.Stream implements both Enumerable and
Collectable, allowing it to be used for both read
and write.
The device is iterated by the given number of characters or line by line if
:line is given.
This reads from the IO as UTF-8. Check out
IO.binstream/2 to handle the IO as a raw binary.
Note that an IO stream has side effects and every time you go over the stream you may get different results.
Examples
Here is an example on how we mimic an echo server from the command line:
Enum.each(IO.stream(:stdio, :line), &IO.write(&1))