libudev/
lib.rs

1extern crate libudev_sys as ffi;
2extern crate libc;
3
4pub use context::Context;
5pub use device::{Device, Properties, Property, Attributes, Attribute};
6pub use enumerator::{Enumerator, Devices};
7pub use error::{Result, Error, ErrorKind};
8pub use monitor::{Monitor, MonitorSocket, EventType, Event};
9
10macro_rules! try_alloc {
11    ($exp:expr) => {{
12        let ptr = $exp;
13
14        if ptr.is_null() {
15            return Err(::error::from_errno(::libc::ENOMEM));
16        }
17
18        ptr
19    }}
20}
21
22mod context;
23mod device;
24mod enumerator;
25mod error;
26mod monitor;
27
28mod handle;
29mod util;