mod common;
mod error;
pub mod traits;
#[cfg(target_os = "linux")]
pub mod linux;
#[cfg(target_os = "macos")]
pub mod macos;
#[cfg(target_os = "windows")]
pub mod windows;
mod interface;
pub use error::IoError;
pub use interface::{list_interfaces, Interface};
#[cfg(target_os = "linux")]
pub use linux::{L2Receiver, L2Sender, L3Receiver, L3Sender};
#[cfg(target_os = "linux")]
pub type DefaultL2Reader = linux::L2Receiver;
#[cfg(target_os = "macos")]
pub type DefaultL2Reader = macos::BpfReader;
#[cfg(target_os = "windows")]
pub type DefaultL2Reader = windows::NpcapReader;
#[cfg(target_os = "linux")]
pub type DefaultL2Writer = linux::L2Sender;
#[cfg(target_os = "macos")]
pub type DefaultL2Writer = macos::BpfWriter;
#[cfg(target_os = "windows")]
pub type DefaultL2Writer = windows::NpcapWriter;
#[cfg(target_os = "linux")]
pub type DefaultL3Reader = linux::L3Receiver;
#[cfg(target_os = "macos")]
pub type DefaultL3Reader = macos::BsdL3Receiver;
#[cfg(target_os = "windows")]
pub type DefaultL3Reader = windows::WinL3Receiver;
#[cfg(target_os = "linux")]
pub type DefaultL3Writer = linux::L3Sender;
#[cfg(target_os = "macos")]
pub type DefaultL3Writer = macos::BsdL3Sender;
#[cfg(target_os = "windows")]
pub type DefaultL3Writer = windows::WinL3Sender;