blob: a4762a7d0aa4755682d48e5d81525f9fe48327af (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
# errno [![CI](https://github.com/lambda-fairy/rust-errno/actions/workflows/main.yml/badge.svg)](https://github.com/lambda-fairy/rust-errno/actions/workflows/main.yml) [![Cargo](https://img.shields.io/crates/v/errno.svg)](https://crates.io/crates/errno)
Cross-platform interface to the [`errno`][errno] variable. Works on Rust 1.13 or newer.
Documentation is available at <https://docs.rs/errno>.
[errno]: https://en.wikipedia.org/wiki/Errno.h
## Dependency
Add to your `Cargo.toml`:
```toml
[dependencies]
errno = "*"
libc = "*"
```
## Examples
```rust
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);
```
|