{-# LANGUAGE DataKinds , DeriveAnyClass , DeriveGeneric , DuplicateRecordFields , FlexibleInstances , InstanceSigs , MultiParamTypeClasses , NamedFieldPuns , NumericUnderscores , OverloadedStrings , TypeApplications , ScopedTypeVariables #-} module ClickHaskell.Lock ( LockPart(..) , LockedColumn(..) , LockedParameter(..) ) where import GHC.Generics (Generic) import Data.Text (Text) data LockPart = Table { LockPart -> Text name :: Text , LockPart -> [LockedColumn] columns :: [LockedColumn] } | View { name :: Text , columns :: [LockedColumn] , LockPart -> [LockedParameter] parameters :: [LockedParameter] } deriving ((forall x. LockPart -> Rep LockPart x) -> (forall x. Rep LockPart x -> LockPart) -> Generic LockPart forall x. Rep LockPart x -> LockPart forall x. LockPart -> Rep LockPart x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cfrom :: forall x. LockPart -> Rep LockPart x from :: forall x. LockPart -> Rep LockPart x $cto :: forall x. Rep LockPart x -> LockPart to :: forall x. Rep LockPart x -> LockPart Generic) data LockedColumn = MkLockedColumn { LockedColumn -> Text name :: Text , LockedColumn -> Text columnType :: Text } deriving ((forall x. LockedColumn -> Rep LockedColumn x) -> (forall x. Rep LockedColumn x -> LockedColumn) -> Generic LockedColumn forall x. Rep LockedColumn x -> LockedColumn forall x. LockedColumn -> Rep LockedColumn x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cfrom :: forall x. LockedColumn -> Rep LockedColumn x from :: forall x. LockedColumn -> Rep LockedColumn x $cto :: forall x. Rep LockedColumn x -> LockedColumn to :: forall x. Rep LockedColumn x -> LockedColumn Generic) data LockedParameter = MkLockedParameter { LockedParameter -> Text name :: Text , LockedParameter -> Text parameterType :: Text } deriving ((forall x. LockedParameter -> Rep LockedParameter x) -> (forall x. Rep LockedParameter x -> LockedParameter) -> Generic LockedParameter forall x. Rep LockedParameter x -> LockedParameter forall x. LockedParameter -> Rep LockedParameter x forall a. (forall x. a -> Rep a x) -> (forall x. Rep a x -> a) -> Generic a $cfrom :: forall x. LockedParameter -> Rep LockedParameter x from :: forall x. LockedParameter -> Rep LockedParameter x $cto :: forall x. Rep LockedParameter x -> LockedParameter to :: forall x. Rep LockedParameter x -> LockedParameter Generic)