{-# LANGUAGE GeneralizedNewtypeDeriving #-}
module Bindings.HDF5.PropertyList.TCPL
    ( module Bindings.HDF5.PropertyList.OCPL

    , TCPL
    , DatatypeCreationPropertyList

    ) where

import Bindings.HDF5.Core
import Bindings.HDF5.PropertyList.OCPL

newtype TCPL = TCPL OCPL
    deriving (TCPL -> TCPL -> Bool
(TCPL -> TCPL -> Bool) -> (TCPL -> TCPL -> Bool) -> Eq TCPL
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: TCPL -> TCPL -> Bool
== :: TCPL -> TCPL -> Bool
$c/= :: TCPL -> TCPL -> Bool
/= :: TCPL -> TCPL -> Bool
Eq, TCPL -> HId_t
(TCPL -> HId_t) -> HId TCPL
forall t. (t -> HId_t) -> HId t
$chid :: TCPL -> HId_t
hid :: TCPL -> HId_t
HId, HId_t -> TCPL
(HId_t -> TCPL) -> FromHId TCPL
forall t. (HId_t -> t) -> FromHId t
$cuncheckedFromHId :: HId_t -> TCPL
uncheckedFromHId :: HId_t -> TCPL
FromHId, TCPL -> Bool
(TCPL -> Bool) -> HDFResultType TCPL
forall t. (t -> Bool) -> HDFResultType t
$cisError :: TCPL -> Bool
isError :: TCPL -> Bool
HDFResultType, FromHId TCPL
HId TCPL
(HId TCPL, FromHId TCPL) => PropertyListOrClass TCPL
forall t. (HId t, FromHId t) => PropertyListOrClass t
PropertyListOrClass, PropertyList TCPL
PropertyList TCPL => ObjectCreationPropertyList TCPL
forall t. PropertyList t => ObjectCreationPropertyList t
ObjectCreationPropertyList)

instance PropertyList TCPL where
    staticPlistClass :: Tagged TCPL PropertyListClassID
staticPlistClass = PropertyListClassID -> Tagged TCPL PropertyListClassID
forall {k} (s :: k) b. b -> Tagged s b
Tagged PropertyListClassID
datatypeCreate

class ObjectCreationPropertyList t => DatatypeCreationPropertyList t where
instance DatatypeCreationPropertyList TCPL