graphql-engine-1.0.0: GraphQL API over Postgres
Safe HaskellSafe-Inferred
LanguageHaskell2010

Hasura.Backends.Postgres.Translate.Select.Internal.JoinTree

Description

Stuff gutted from Translate.Select

Synopsis

Documentation

withWriteJoinTree :: MonadWriter SelectWriter m => (JoinTree -> b -> JoinTree) -> m (a, b) -> m a Source #

This is the lowest level function which deals with MonadWriter SelectWriter, which contains JoinTree whose purpose is to essentially create the selection tree across relationships.

Each type of relationship uses a different kind of update function; see withWriteObjectRelation, withWriteArrayRelation, withWriteArrayConnection, and withWriteComputedFieldTableSet.

See the definition of JoinTree for details before diving further (particularly its components and Monoid instance).