module Graphics.QML.Internal.Types where import Data.Map (Map) import Data.Typeable import Data.Unique import Foreign.Ptr newtype TypeId = TypeId Int deriving (TypeId -> TypeId -> Bool (TypeId -> TypeId -> Bool) -> (TypeId -> TypeId -> Bool) -> Eq TypeId forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: TypeId -> TypeId -> Bool == :: TypeId -> TypeId -> Bool $c/= :: TypeId -> TypeId -> Bool /= :: TypeId -> TypeId -> Bool Eq, Eq TypeId Eq TypeId => (TypeId -> TypeId -> Ordering) -> (TypeId -> TypeId -> Bool) -> (TypeId -> TypeId -> Bool) -> (TypeId -> TypeId -> Bool) -> (TypeId -> TypeId -> Bool) -> (TypeId -> TypeId -> TypeId) -> (TypeId -> TypeId -> TypeId) -> Ord TypeId TypeId -> TypeId -> Bool TypeId -> TypeId -> Ordering TypeId -> TypeId -> TypeId 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 :: TypeId -> TypeId -> Ordering compare :: TypeId -> TypeId -> Ordering $c< :: TypeId -> TypeId -> Bool < :: TypeId -> TypeId -> Bool $c<= :: TypeId -> TypeId -> Bool <= :: TypeId -> TypeId -> Bool $c> :: TypeId -> TypeId -> Bool > :: TypeId -> TypeId -> Bool $c>= :: TypeId -> TypeId -> Bool >= :: TypeId -> TypeId -> Bool $cmax :: TypeId -> TypeId -> TypeId max :: TypeId -> TypeId -> TypeId $cmin :: TypeId -> TypeId -> TypeId min :: TypeId -> TypeId -> TypeId Ord) type UniformFunc = Ptr () -> Ptr (Ptr ()) -> IO () data MemberKey = TypeKey TypeRep | DataKey Unique deriving (MemberKey -> MemberKey -> Bool (MemberKey -> MemberKey -> Bool) -> (MemberKey -> MemberKey -> Bool) -> Eq MemberKey forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a $c== :: MemberKey -> MemberKey -> Bool == :: MemberKey -> MemberKey -> Bool $c/= :: MemberKey -> MemberKey -> Bool /= :: MemberKey -> MemberKey -> Bool Eq, Eq MemberKey Eq MemberKey => (MemberKey -> MemberKey -> Ordering) -> (MemberKey -> MemberKey -> Bool) -> (MemberKey -> MemberKey -> Bool) -> (MemberKey -> MemberKey -> Bool) -> (MemberKey -> MemberKey -> Bool) -> (MemberKey -> MemberKey -> MemberKey) -> (MemberKey -> MemberKey -> MemberKey) -> Ord MemberKey MemberKey -> MemberKey -> Bool MemberKey -> MemberKey -> Ordering MemberKey -> MemberKey -> MemberKey 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 :: MemberKey -> MemberKey -> Ordering compare :: MemberKey -> MemberKey -> Ordering $c< :: MemberKey -> MemberKey -> Bool < :: MemberKey -> MemberKey -> Bool $c<= :: MemberKey -> MemberKey -> Bool <= :: MemberKey -> MemberKey -> Bool $c> :: MemberKey -> MemberKey -> Bool > :: MemberKey -> MemberKey -> Bool $c>= :: MemberKey -> MemberKey -> Bool >= :: MemberKey -> MemberKey -> Bool $cmax :: MemberKey -> MemberKey -> MemberKey max :: MemberKey -> MemberKey -> MemberKey $cmin :: MemberKey -> MemberKey -> MemberKey min :: MemberKey -> MemberKey -> MemberKey Ord) data ClassInfo = ClassInfo { ClassInfo -> TypeRep cinfoObjType :: TypeRep, ClassInfo -> Map MemberKey Int cinfoSignals :: Map MemberKey Int } data Strength = Strong | Weak