mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-12-18 04:51:35 +03:00
84027dad04
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/2889 GitOrigin-RevId: 49c5d59a6f817832f11b1773b078aa24cc650ab5
30 lines
957 B
Haskell
30 lines
957 B
Haskell
module Hasura.RQL.IR.Update
|
|
( AnnotatedUpdateNode,
|
|
AnnotatedUpdateNodeG (..),
|
|
)
|
|
where
|
|
|
|
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 AnnotatedUpdateNodeG (b :: BackendType) (r :: BackendType -> Type) v = AnnotatedUpdateNode
|
|
{ uqp1Table :: !(TableName b),
|
|
uqp1Where :: !(AnnBoolExp b v, AnnBoolExp b v),
|
|
uqp1Check :: !(AnnBoolExp b v),
|
|
-- | All the backend-specific data related to an update mutation
|
|
uqp1BackendIR :: BackendUpdate b v,
|
|
-- we don't prepare the arguments for returning
|
|
-- however the session variable can still be
|
|
-- converted as desired
|
|
uqp1Output :: !(MutationOutputG b r v),
|
|
uqp1AllCols :: ![ColumnInfo b]
|
|
}
|
|
deriving (Functor, Foldable, Traversable)
|
|
|
|
type AnnotatedUpdateNode b = AnnotatedUpdateNodeG b (Const Void) (SQLExpression b)
|