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

data RawGraphAttributes

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

instance () => FPtr (GraphAttributes) where
        type Raw GraphAttributes = RawGraphAttributes
        get_fptr :: GraphAttributes -> Ptr (Raw GraphAttributes)
get_fptr (GraphAttributes Ptr RawGraphAttributes
ptr) = Ptr (Raw GraphAttributes)
Ptr RawGraphAttributes
ptr
        cast_fptr_to_obj :: Ptr (Raw GraphAttributes) -> GraphAttributes
cast_fptr_to_obj = Ptr (Raw GraphAttributes) -> GraphAttributes
Ptr RawGraphAttributes -> GraphAttributes
GraphAttributes