-- | -- Module : Wayland.Server -- Description: Low-level API for implementing the Wayland protocol. module Wayland.Server ( -- * The Display Monad DisplayM , withDisplay , bindSocket , -- * Processing Requests Request(..) , RequestHandler , fromRequest , processRequests , requestTermination , -- * Managing Objects Global , registerGlobal , unregisterGlobal , createObject , destroyObject , sendEvent , flushEvents , -- * Event Sources EventSource , registerSignalEvent , -- * Interface Descriptions InterfaceDesc(..) , MessageDesc(..) , ArgumentDesc(..) , Nullability(..) , -- * Object Types Object(..) , AnyObject , NewObject , RequestClass , EventClass , ArgumentMarshaller(..) , ArgumentDemarshaller(..) ) where import Wayland.Server.Interface import Wayland.Server.Object import Wayland.Server.Display