[][src]Crate daemon_engine

Re-exports

pub use crate::server::Server;
pub use crate::connection::Connection;
pub use crate::tcp::TcpServer;
pub use crate::tcp::TcpInfo;
pub use crate::tcp::TcpConnection;
pub use crate::udp::UdpConnection;
pub use crate::udp::UdpInfo;
pub use crate::unix::UnixServer;
pub use crate::unix::UnixInfo;
pub use crate::unix::UnixConnection;
pub use crate::error::Error as DaemonError;

Modules

codecs

Codecs implement protocol handling over connectors

connection

Connection provides a generic connection over a stream and codec This is used to implement clients (ie. for a command line utility)

error

Error implements errors returned by the daemon

server

Server provides a generic server over a stream and codec This is used to implement daemon servers (ie. long running processes w/ network communication)

tcp

TCP implements a TCP socket server and connection

udp

UDP implements a UDP socket connection As UDP is connection-less, no server is required

unix

Unix implements a Unix socket server and connection

Traits

AsyncWait

AsyncWait implements a .wait() equivalent that works from any contex. This is required because at some point in the past .wait() stopped doing this, and thus calling it in a polling context causes everything to lock up. see: https://github.com/tokio-rs/tokio-core/issues/182 and related issues.

Type Definitions

JsonCodec

JsonCodec re-exports the JSON codec for convenience This is an alias of JsonCodec with default JsonError, use codecs::json::JsonCodec to specify error type manually