Struct rotor_capnp::Persistent
[−]
[src]
pub struct Persistent<P>(_, _, _)
where
P: Protocol,
<P as Protocol>::Socket: ActiveStream;
Persistent client connection
TODO(tailhook) this should include name resolution
Methods
impl<P> Persistent<P> where
P: Protocol,
<P as Protocol>::Socket: ActiveStream,
<<P as Protocol>::Socket as ActiveStream>::Address: Debug,
[src]
P: Protocol,
<P as Protocol>::Socket: ActiveStream,
<<P as Protocol>::Socket as ActiveStream>::Address: Debug,
fn new<S>(
_scope: &mut S,
address: <<P as Protocol>::Socket as ActiveStream>::Address,
seed: <P as Protocol>::Seed
) -> Response<Persistent<P>, Void> where
S: GenericScope,
_scope: &mut S,
address: <<P as Protocol>::Socket as ActiveStream>::Address,
seed: <P as Protocol>::Seed
) -> Response<Persistent<P>, Void> where
S: GenericScope,
fn connect<S>(
scope: &mut S,
address: <<P as Protocol>::Socket as ActiveStream>::Address,
seed: <P as Protocol>::Seed
) -> Response<Persistent<P>, Void> where
S: GenericScope,
scope: &mut S,
address: <<P as Protocol>::Socket as ActiveStream>::Address,
seed: <P as Protocol>::Seed
) -> Response<Persistent<P>, Void> where
S: GenericScope,
impl<P> Persistent<P> where
P: Protocol,
<P as Protocol>::Socket: ActiveStream,
[src]
P: Protocol,
<P as Protocol>::Socket: ActiveStream,
fn transport(&mut self) -> Option<Transport<<P as Protocol>::Socket>>
Get a Transport
object of the underlying stream
This method is only useful if you want to manipulate buffers externally (like pushing to the buffer from another thread). Just be sure to wake up state machine after manipulating buffers.
Returns None
if stream is not currently connected
Trait Implementations
impl<P> Replaceable for Persistent<P> where
P: Protocol + Protocol,
<P as Protocol>::Seed: Clone,
<<P as Protocol>::Socket as ActiveStream>::Address: Clone,
<<P as Protocol>::Socket as ActiveStream>::Address: Debug,
<P as Protocol>::Socket: ActiveStream,
[src]
P: Protocol + Protocol,
<P as Protocol>::Seed: Clone,
<<P as Protocol>::Socket as ActiveStream>::Address: Clone,
<<P as Protocol>::Socket as ActiveStream>::Address: Debug,
<P as Protocol>::Socket: ActiveStream,
fn empty(&self) -> Persistent<P>
impl<P> Machine for Persistent<P> where
P: Protocol + Protocol,
<P as Protocol>::Seed: Clone,
<P as Protocol>::Socket: ActiveStream,
<<P as Protocol>::Socket as ActiveStream>::Address: Debug,
[src]
P: Protocol + Protocol,
<P as Protocol>::Seed: Clone,
<P as Protocol>::Socket: ActiveStream,
<<P as Protocol>::Socket as ActiveStream>::Address: Debug,
type Context = <P as Protocol>::Context
type Seed = Void
fn create(
seed: <Persistent<P> as Machine>::Seed,
_scope: &mut Scope<<P as Protocol>::Context>
) -> Response<Persistent<P>, Void>
seed: <Persistent<P> as Machine>::Seed,
_scope: &mut Scope<<P as Protocol>::Context>
) -> Response<Persistent<P>, Void>
fn ready(
self,
events: EventSet,
scope: &mut Scope<<P as Protocol>::Context>
) -> Response<Persistent<P>, <Persistent<P> as Machine>::Seed>
self,
events: EventSet,
scope: &mut Scope<<P as Protocol>::Context>
) -> Response<Persistent<P>, <Persistent<P> as Machine>::Seed>
fn spawned(
self,
_scope: &mut Scope<<P as Protocol>::Context>
) -> Response<Persistent<P>, <Persistent<P> as Machine>::Seed>
self,
_scope: &mut Scope<<P as Protocol>::Context>
) -> Response<Persistent<P>, <Persistent<P> as Machine>::Seed>
fn timeout(
self,
scope: &mut Scope<<P as Protocol>::Context>
) -> Response<Persistent<P>, <Persistent<P> as Machine>::Seed>
self,
scope: &mut Scope<<P as Protocol>::Context>
) -> Response<Persistent<P>, <Persistent<P> as Machine>::Seed>
fn wakeup(
self,
scope: &mut Scope<<P as Protocol>::Context>
) -> Response<Persistent<P>, <Persistent<P> as Machine>::Seed>
self,
scope: &mut Scope<<P as Protocol>::Context>
) -> Response<Persistent<P>, <Persistent<P> as Machine>::Seed>