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

data RawTGlobal

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

instance () => FPtr (TGlobal) where
        type Raw TGlobal = RawTGlobal
        get_fptr :: TGlobal -> Ptr (Raw TGlobal)
get_fptr (TGlobal Ptr RawTGlobal
ptr) = Ptr (Raw TGlobal)
Ptr RawTGlobal
ptr
        cast_fptr_to_obj :: Ptr (Raw TGlobal) -> TGlobal
cast_fptr_to_obj = Ptr (Raw TGlobal) -> TGlobal
Ptr RawTGlobal -> TGlobal
TGlobal