Description: | cqueues is a type of event loop for Lua. It doesn't use callbacks but instead
you communicate with an event controller by the yielding and resumption of
Lua coroutines using objects.
cqueues are stackable. Each instantiated cqueue is a poll-able object which
can be polled from another cqueue, or another event loop system entirely.
The design is meant to be non-intrusive, composable, and embeddable within
existing applications.
cqueues includes a sockets library with DNS, buffering, end-of-line
translation, SSL/TLS, and descriptor passing support builtin.
Domain querying, connection establishment, and SSL negotiation are handled
transparently as part of a state machine entered with every I/O operation,
so users can read and write immediately upon instantiating the object,
as if opening a regular file.
cqueues also includes modules for handling signals, threads, and file change
notifications using native kernel facilities and accessible through easy
to use interfaces which abstract the different kernel facilities. |