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