{-# LANGUAGE ForeignFunctionInterface, TypeFamilies,
  MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances,
  EmptyDataDecls, ExistentialQuantification, ScopedTypeVariables #-}
module HROOT.Graf.TBox.RawType where
import Foreign.Ptr
import FFICXX.Runtime.Cast

data RawTBox

newtype TBox = TBox (Ptr RawTBox)
                 deriving (TBox -> TBox -> Bool
(TBox -> TBox -> Bool) -> (TBox -> TBox -> Bool) -> Eq TBox
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: TBox -> TBox -> Bool
== :: TBox -> TBox -> Bool
$c/= :: TBox -> TBox -> Bool
/= :: TBox -> TBox -> Bool
Eq, Eq TBox
Eq TBox
-> (TBox -> TBox -> Ordering)
-> (TBox -> TBox -> Bool)
-> (TBox -> TBox -> Bool)
-> (TBox -> TBox -> Bool)
-> (TBox -> TBox -> Bool)
-> (TBox -> TBox -> TBox)
-> (TBox -> TBox -> TBox)
-> Ord TBox
TBox -> TBox -> Bool
TBox -> TBox -> Ordering
TBox -> TBox -> TBox
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 :: TBox -> TBox -> Ordering
compare :: TBox -> TBox -> Ordering
$c< :: TBox -> TBox -> Bool
< :: TBox -> TBox -> Bool
$c<= :: TBox -> TBox -> Bool
<= :: TBox -> TBox -> Bool
$c> :: TBox -> TBox -> Bool
> :: TBox -> TBox -> Bool
$c>= :: TBox -> TBox -> Bool
>= :: TBox -> TBox -> Bool
$cmax :: TBox -> TBox -> TBox
max :: TBox -> TBox -> TBox
$cmin :: TBox -> TBox -> TBox
min :: TBox -> TBox -> TBox
Ord, Int -> TBox -> ShowS
[TBox] -> ShowS
TBox -> String
(Int -> TBox -> ShowS)
-> (TBox -> String) -> ([TBox] -> ShowS) -> Show TBox
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> TBox -> ShowS
showsPrec :: Int -> TBox -> ShowS
$cshow :: TBox -> String
show :: TBox -> String
$cshowList :: [TBox] -> ShowS
showList :: [TBox] -> ShowS
Show)

instance () => FPtr (TBox) where
        type Raw TBox = RawTBox
        get_fptr :: TBox -> Ptr (Raw TBox)
get_fptr (TBox Ptr RawTBox
ptr) = Ptr (Raw TBox)
Ptr RawTBox
ptr
        cast_fptr_to_obj :: Ptr (Raw TBox) -> TBox
cast_fptr_to_obj = Ptr (Raw TBox) -> TBox
Ptr RawTBox -> TBox
TBox