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