use core::ffi::c_void;
use core::ptr;
use cty::c_ulong;
#[non_exhaustive]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub struct XlibHandle {
pub window: c_ulong,
pub display: *mut c_void,
}
#[non_exhaustive]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub struct XcbHandle {
pub window: u32, pub connection: *mut c_void,
}
#[non_exhaustive]
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
pub struct WaylandHandle {
pub surface: *mut c_void,
pub display: *mut c_void,
}
impl XlibHandle {
pub fn empty() -> Self {
Self {
window: 0,
display: ptr::null_mut(),
}
}
}
impl XcbHandle {
pub fn empty() -> Self {
Self {
window: 0,
connection: ptr::null_mut(),
}
}
}
impl WaylandHandle {
pub fn empty() -> Self {
Self {
surface: ptr::null_mut(),
display: ptr::null_mut(),
}
}
}