{-# LANGUAGE ForeignFunctionInterface, TypeFamilies, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances, EmptyDataDecls, ExistentialQuantification, ScopedTypeVariables #-} module HROOT.Graf.TCrown.RawType where import Foreign.Ptr import FFICXX.Runtime.Cast data RawTCrown newtype TCrown = TCrown (Ptr RawTCrown) deriving (TCrown -> TCrown -> Bool (TCrown -> TCrown -> Bool) -> (TCrown -> TCrown -> Bool) -> Eq TCrown forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: TCrown -> TCrown -> Bool == :: TCrown -> TCrown -> Bool $c/= :: TCrown -> TCrown -> Bool /= :: TCrown -> TCrown -> Bool Eq, Eq TCrown Eq TCrown -> (TCrown -> TCrown -> Ordering) -> (TCrown -> TCrown -> Bool) -> (TCrown -> TCrown -> Bool) -> (TCrown -> TCrown -> Bool) -> (TCrown -> TCrown -> Bool) -> (TCrown -> TCrown -> TCrown) -> (TCrown -> TCrown -> TCrown) -> Ord TCrown TCrown -> TCrown -> Bool TCrown -> TCrown -> Ordering TCrown -> TCrown -> TCrown forall a. Eq a -> (a -> a -> Ordering) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> Bool) -> (a -> a -> a) -> (a -> a -> a) -> Ord a $ccompare :: TCrown -> TCrown -> Ordering compare :: TCrown -> TCrown -> Ordering $c< :: TCrown -> TCrown -> Bool < :: TCrown -> TCrown -> Bool $c<= :: TCrown -> TCrown -> Bool <= :: TCrown -> TCrown -> Bool $c> :: TCrown -> TCrown -> Bool > :: TCrown -> TCrown -> Bool $c>= :: TCrown -> TCrown -> Bool >= :: TCrown -> TCrown -> Bool $cmax :: TCrown -> TCrown -> TCrown max :: TCrown -> TCrown -> TCrown $cmin :: TCrown -> TCrown -> TCrown min :: TCrown -> TCrown -> TCrown Ord, Int -> TCrown -> ShowS [TCrown] -> ShowS TCrown -> String (Int -> TCrown -> ShowS) -> (TCrown -> String) -> ([TCrown] -> ShowS) -> Show TCrown forall a. (Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a $cshowsPrec :: Int -> TCrown -> ShowS showsPrec :: Int -> TCrown -> ShowS $cshow :: TCrown -> String show :: TCrown -> String $cshowList :: [TCrown] -> ShowS showList :: [TCrown] -> ShowS Show) instance () => FPtr (TCrown) where type Raw TCrown = RawTCrown get_fptr :: TCrown -> Ptr (Raw TCrown) get_fptr (TCrown Ptr RawTCrown ptr) = Ptr (Raw TCrown) Ptr RawTCrown ptr cast_fptr_to_obj :: Ptr (Raw TCrown) -> TCrown cast_fptr_to_obj = Ptr (Raw TCrown) -> TCrown Ptr RawTCrown -> TCrown TCrown