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

data RawTAttMarker

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

instance () => FPtr (TAttMarker) where
        type Raw TAttMarker = RawTAttMarker
        get_fptr :: TAttMarker -> Ptr (Raw TAttMarker)
get_fptr (TAttMarker Ptr RawTAttMarker
ptr) = Ptr (Raw TAttMarker)
Ptr RawTAttMarker
ptr
        cast_fptr_to_obj :: Ptr (Raw TAttMarker) -> TAttMarker
cast_fptr_to_obj = Ptr (Raw TAttMarker) -> TAttMarker
Ptr RawTAttMarker -> TAttMarker
TAttMarker