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

data RawTArrayD

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

instance () => FPtr (TArrayD) where
        type Raw TArrayD = RawTArrayD
        get_fptr :: TArrayD -> Ptr (Raw TArrayD)
get_fptr (TArrayD Ptr RawTArrayD
ptr) = Ptr (Raw TArrayD)
Ptr RawTArrayD
ptr
        cast_fptr_to_obj :: Ptr (Raw TArrayD) -> TArrayD
cast_fptr_to_obj = Ptr (Raw TArrayD) -> TArrayD
Ptr RawTArrayD -> TArrayD
TArrayD