//! GHOST_Types.h use super::*; use types::{Handle,GhostHandle}; macro_rules! handle { ($name:ident, $inner_name:ident) => { #[cfg(nightly)] pub struct $inner_name(!); #[cfg(not(nightly))] pub struct $inner_name(()); impl GhostHandle for $inner_name{} pub type $name = *mut Handle<$inner_name>; }; } handle!(GHOST_SystemHandle, System); handle!(GHOST_TimerTaskHandle, TimerTask); handle!(GHOST_WindowHandle, Window); handle!(GHOST_EventHandle, Event); handle!(GHOST_RectangleHandle, Rectangle); handle!(GHOST_EventConsumerHandle, EventConsumer); handle!(GHOST_ContextHandle, Context); handle!(GHOST_XrContextHandle, XrContextHandle);