Struct rotor_stream::Stream [] [src]

pub struct Stream<P: Protocol> {
    // some fields omitted
}

Methods

impl<P: Protocol> Stream<P>
[src]

fn new(sock: P::Socket, seed: P::Seed, scope: &mut Scope<P::Context>) -> Result<Self, Box<Error>>

Trait Implementations

impl<P: Protocol> Accepted<P::Socket> for Stream<P> where P: Protocol<Seed=()>
[src]

fn accepted(sock: P::Socket, scope: &mut Scope<Self::Context>) -> Result<Self, Box<Error>>

impl<P: Protocol> Machine for Stream<P>
[src]

type Context = P::Context

Context type for the state machine Read more

type Seed = Void

Seed is piece of data that is needed to initialize the machine Read more

fn create(void: Void, _scope: &mut Scope<Self::Context>) -> Result<Self, Box<Error>>

Create a machine from some data Read more

fn ready(self, _events: EventSet, scope: &mut Scope<Self::Context>) -> Response<Self, Self::Seed>

Socket readiness notification

fn spawned(self, _scope: &mut Scope<Self::Context>) -> Response<Self, Self::Seed>

Called after spawn event Read more

fn timeout(self, scope: &mut Scope<Self::Context>) -> Response<Self, Self::Seed>

Timeout happened

fn wakeup(self, scope: &mut Scope<Self::Context>) -> Response<Self, Self::Seed>

Message received Read more

fn spawn_error(self, _scope: &mut Scope<Self::Context>, error: SpawnError<Self::Seed>) -> Option<Self>

Called instead of spawned, if there is no slab space Read more