1use crate::Interface;
2
3#[derive(Debug, Clone)]
4pub(crate) struct InterfaceHandle {
5 pub(crate) index: u32,
6}
7
8impl InterfaceHandle {
9 #[allow(unused)]
10 fn interface(&self) -> Interface {
11 Interface(self.clone())
12 }
13}
14
15cfg_if::cfg_if! {
16 if #[cfg(target_os = "windows")] {
17 mod win32;
18 pub(crate) use win32::*;
19 pub use win32::InterfaceExt;
20 } else if #[cfg(target_os = "linux")] {
21 mod linux;
22 #[allow(unused)]
23 pub(crate) use linux::*;
24 pub use linux::InterfaceExt;
25 } else if #[cfg(target_os = "macos")] {
26 mod darwin;
27 #[allow(unused)]
28 pub(crate) use darwin::*;
29 pub use darwin::{InterfaceExt};
30 }
31}
32
33cfg_if::cfg_if! {
34 if #[cfg(unix)] {
35 pub mod posix;
36 pub(crate) use posix::*;
37 }
38}