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
39
40
41
42
43
44
45
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
#![allow(deref_nullptr)]

//!
//! This module provides immediate bindings to libnvpair library.
//! It is not intended for direct use, but rather serves as an FFI layer.
//!
include!(concat!(env!("OUT_DIR"), "/nvpair.rs"));

impl From<boolean_t> for bool {
    fn from(value: boolean_t) -> Self {
        match value {
            boolean_t::B_FALSE => false,
            boolean_t::B_TRUE => true,
        }
    }
}

impl From<&boolean_t> for bool {
    fn from(value: &boolean_t) -> Self {
        match value {
            boolean_t::B_FALSE => false,
            boolean_t::B_TRUE => true,
        }
    }
}

impl From<bool> for boolean_t {
    fn from(value: bool) -> Self {
        match value {
            false => boolean_t::B_FALSE,
            true => boolean_t::B_TRUE,
        }
    }
}

impl From<&bool> for boolean_t {
    fn from(value: &bool) -> Self {
        match value {
            false => boolean_t::B_FALSE,
            true => boolean_t::B_TRUE,
        }
    }
}