Struct termios::Termios
[−]
[src]
pub struct Termios { /* fields omitted */ }Unix terminal I/O control structure.
The Termios structure is a thin wrapper for the OS-specific termios struct. The only safe
way to obtain a Termios structure is to fill one from a file descriptor with
Termios::from_fd(), after which it can be treated just like the POSIX
termios struct. It provides access to the standard fields of the termios struct (c_iflag,
c_oflag, c_cflag, c_lflag, and c_cc) through the Deref and DerefMut traits.
Example
The following is an example of how one might setup a file descriptor for a serial port:
use std::io; use std::os::unix::io::RawFd; fn setup_serial(fd: RawFd) -> io::Result<()> { use termios::*; let mut termios = try!(Termios::from_fd(fd)); termios.c_cflag |= CREAD | CLOCAL; termios.c_lflag &= !(ICANON | ECHO | ECHOE | ECHOK | ECHONL | ISIG | IEXTEN); termios.c_oflag &= !OPOST; termios.c_iflag &= !(INLCR | IGNCR | ICRNL | IGNBRK); termios.c_cc[VMIN] = 0; termios.c_cc[VTIME] = 0; try!(cfsetspeed(&mut termios, B9600)); try!(tcsetattr(fd, TCSANOW, &mut termios)); Ok(()) }
Methods
impl Termios[src]
pub fn from_fd(fd: RawFd) -> Result<Self>[src]
Creates a Termios structure based on the current settings of a file descriptor.
fd must be an open file descriptor for a terminal device.
Trait Implementations
impl Debug for Termios[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result[src]
Formats the value using the given formatter. Read more
impl Copy for Termios[src]
impl Clone for Termios[src]
fn clone(&self) -> Termios[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more
impl Eq for Termios[src]
impl PartialEq for Termios[src]
fn eq(&self, __arg_0: &Termios) -> bool[src]
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &Termios) -> bool[src]
This method tests for !=.
impl Deref for Termios[src]
type Target = termios
The resulting type after dereferencing.
fn deref(&self) -> &termios[src]
Dereferences the value.