Awesome
Structurez
A playground for data structures
Treeset
An ordered set wrapping :gb_sets
AgentDict
A dict backed by an Agent. WARNING: This should make you cringe. It's essentially a mutable Dict. Only use this when you need concurrent access. There are a lot of other terrible ways to use it.
TCPClient.stream/1
Streamz.Net.TCPClient.stream/1
accepts a keyword list with :host
and :port
set. It will connect the the host and port and supports Enumerable and Collectable. This enables a bunch of cool things.
Connecting:
n = TCPClient.stream([host: "localhost", port: 4444])
Reading data:
n |> Enum.each &IO.inspect(&1)
Writing data:
["Hello", "World"] |> Enum.into(n)
Echo Client (writes any data it receives back to the server):
n |> Enum.into(n)
Up Next
There are tons of possibilities. Here's what is on the current radar.
TCPServer/1
- A server version ofTCPClient
UDPClient/1
- A UDP version ofTCPClient
UDPServer/1
- A server version ofUDPClient
WebSockets.stream/1
- Bidirection stream for a websocket connection.