Current section
Files
Jump to
Current section
Files
lib/Console.ex
defmodule Console do
def puts(device \\ :stdio, item) do
pid =
case :erlang.whereis(device) do
:undefined ->
case device do
:stdio ->
new_pid = :erlang.open_port({:spawn, "console"}, [])
:erlang.register(:stdio, new_pid)
new_pid
_ ->
:error
end
pid ->
pid
end
write(pid, item)
end
defp write(console, string) do
send console, {self(), string}
receive do
return_status ->
return_status
end
end
end