Cross-platform interface to the errno
variable. Works on Rust 1.56 or newer.
Documentation is available at https://docs.rs/errno.
Add to your Cargo.toml
:
[dependencies]
errno = "*"
The standard library provides Error::last_os_error
which fetches errno
in the same way.
This crate provides these extra features:
- No heap allocations
- Optional
#![no_std]
support - A
set_errno
function
extern crate errno;
use errno::{Errno, errno, set_errno};
// Get the current value of errno
let e = errno();
// Set the current value of errno
set_errno(e);
// Extract the error code as an i32
let code = e.0;
// Display a human-friendly error message
println!("Error {}: {}", code, e);
Enable #![no_std]
support by disabling the default std
feature:
[dependencies]
errno = { version = "*", default-features = false }
The Error
impl will be unavailable.