[src]

Struct rustuv::pipe::PipeWatcher

pub struct PipeWatcher {
    stream: StreamWatcher,
    home: HomeHandle,
    // some fields omitted
}

Fields

stream
home

Methods

impl PipeWatcher

fn new(io: &mut UvIoFactory, ipc: bool) -> PipeWatcher

fn new_home(loop_: &Loop, home: HomeHandle, ipc: bool) -> PipeWatcher

fn open(io: &mut UvIoFactory, file: c_int) -> Result<PipeWatcher, UvError>

fn connect(io: &mut UvIoFactory, name: &CString) -> Result<PipeWatcher, UvError>

fn handle(&self) -> *uv_pipe_t

Trait Implementations

impl RtioPipe for PipeWatcher

fn read(&mut self, buf: &mut [u8]) -> Result<uint, IoError>

fn write(&mut self, buf: &[u8]) -> Result<(), IoError>

fn clone(&self) -> ~RtioPipe<Send>

impl HomingIO for PipeWatcher

fn home<'a>(&'a mut self) -> &'a mut HomeHandle

fn go_to_IO_home(&mut self) -> uint

This function will move tasks to run on their home I/O scheduler. Note that this function does not pin the task to the I/O scheduler, but rather it simply moves it to running on the I/O scheduler.

fn fire_homing_missile(&mut self) -> HomingMissile

Fires a single homing missile, returning another missile targeted back at the original home of this task. In other words, this function will move the local task to its I/O scheduler and then return an RAII wrapper which will return the task home.

impl UvHandle<uv_pipe_t> for PipeWatcher

fn uv_handle(&self) -> *uv_pipe_t

fn uv_loop(&self) -> Loop

fn alloc(_: Option<Self>, ty: uv_handle_type) -> *T

unsafe fn from_uv_handle<'a>(h: &'a *T) -> &'a mut Self

fn install(~self) -> ~Self

fn close_async_(&mut self)

fn close(&mut self)

impl Drop for PipeWatcher

fn drop(&mut self)