moffy-samples-gtk3-run-0.1.0.0: src/Stopgap/Data/Ptr.hs
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -Wall -fno-warn-tabs #-}
module Stopgap.Data.Ptr where
import Foreign.Ptr
class IsPtr a where
type Tag a
toPtr :: a -> Ptr (Tag a)
fromPtr :: Ptr (Tag a) -> a
data Null = Null
instance IsPtr Null where
type Tag Null = Null
toPtr Null = nullPtr
fromPtr _ = Null