{-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE UndecidableInstances #-} module Hasura.RQL.IR.Delete ( AnnDel, AnnDelG (..), adTable, adWhere, adOutput, adAllCols, ) where import Control.Lens.TH (makeLenses) import Data.Kind (Type) import Hasura.Prelude import Hasura.RQL.IR.BoolExp import Hasura.RQL.IR.Returning import Hasura.RQL.Types.Backend import Hasura.RQL.Types.Column import Hasura.SQL.Backend data AnnDelG (b :: BackendType) (r :: Type) v = AnnDel { _adTable :: TableName b, _adWhere :: (AnnBoolExp b v, AnnBoolExp b v), _adOutput :: MutationOutputG b r v, _adAllCols :: [ColumnInfo b] } deriving (Functor, Foldable, Traversable) type AnnDel b = AnnDelG b Void (SQLExpression b) deriving instance (Show (MutationOutputG b r a), Backend b, Show (BooleanOperators b a), Show a) => Show (AnnDelG b r a) $(makeLenses ''AnnDelG)