spice-0.3.0.0: src/FRP/Spice/Graphics/Renderable.hs
module FRP.Spice.Graphics.Renderable where
----------
-- Code --
{-|
A container around IO to suggest that one should perform rendering in a
rendering function.
-}
newtype Render = Render (IO ())
{-|
Performing the IO contained in a @'Render'@.
-}
runRender :: Render -> IO ()
runRender (Render action) = action
{-|
A class that provides an API to convert a datatype into a @'Render'@.
-}
class Renderable a where
toRender :: a -> Render