[src]

Struct rustuv::tty::TtyWatcher

pub struct TtyWatcher {
    tty: *uv_tty_t,
    stream: StreamWatcher,
    home: HomeHandle,
    fd: c_int,
}

Fields

tty
stream
home
fd

Methods

impl TtyWatcher

fn new(io: &mut UvIoFactory, fd: c_int, readable: bool) -> Result<TtyWatcher, UvError>

Trait Implementations

impl RtioTTY for TtyWatcher

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

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

fn set_raw(&mut self, raw: bool) -> Result<(), IoError>

fn get_winsize(&mut self) -> Result<(int, int), IoError>

fn isatty(&self) -> bool

impl UvHandle<uv_tty_t> for TtyWatcher

fn uv_handle(&self) -> *uv_tty_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 HomingIO for TtyWatcher

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 Drop for TtyWatcher

fn drop(&mut self)