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 ofTCPClientUDPClient/1- A UDP version ofTCPClientUDPServer/1- A server version ofUDPClientWebSockets.stream/1- Bidirection stream for a websocket connection.