pub enum Accept<M, A> where A: TryAccept, M: Machine {
Server(A),
Connection(M),
}
Socket acceptor State Machine
TODO(tailhook) Currently this panics when there is no slab space when
accepting a connection. This may be fixed by sleeping and retrying
Variants
Server(A)
Connection(M)
Methods
impl<M, A> Accept<M, A> where A: TryAccept + Evented + Any, M: Machine
fn new<S>(sock: A, scope: &mut S) -> Response<Accept<M, A>, Void> where S: GenericScope
Trait Implementations
impl<M, A, S> Machine for Accept<M, A> where A: TryAccept<Output=S> + Evented + Any, M: Machine + Accepted<S>, S: StreamSocket
type Context = M::Context
type Seed = S
fn create(sock: S, scope: &mut Scope<Accept<M, A>::Context>) -> Response<Accept<M, A>, Void>
fn ready(self, events: EventSet, scope: &mut Scope<Accept<M, A>::Context>) -> Response<Accept<M, A>, Accept<M, A>::Seed>
fn spawned(self, _scope: &mut Scope<Accept<M, A>::Context>) -> Response<Accept<M, A>, Accept<M, A>::Seed>
fn timeout(self, scope: &mut Scope<Accept<M, A>::Context>) -> Response<Accept<M, A>, Accept<M, A>::Seed>
fn wakeup(self, scope: &mut Scope<Accept<M, A>::Context>) -> Response<Accept<M, A>, Accept<M, A>::Seed>
impl<M, A> Debug for Accept<M, A> where A: Debug + TryAccept, M: Debug + Machine
Formats the value using the given formatter.