graphql-engine/server/src-lib/Hasura/GraphQL/Execute
Antoine Leblanc 0e3beb028d Extract generic containers from the codebase
### Description

There were several places in the codebase where we would either implement a generic container, or express the need for one. This PR extracts / creates all relevant containers, and adapts the relevant parts of the code to make use of said new generic containers. More specifically, it introduces the following modules:
- `Data.Set.Extended`, for new functions on `Data.Set`
- `Data.HashMap.Strict.Multi`, for hash maps that accept multiple values
- `Data.HashMap.Strict.NonEmpty`, for hash maps that can never be constructed as empty
- `Data.Trie`, for a generic implementation of a prefix tree

This PR makes use of those new containers in the following parts of the code:
- `Hasura.GraphQL.Execute.RemoteJoin.Types`
- `Hasura.RQL.Types.Endpoint*`

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/3828
GitOrigin-RevId: e6c1b971bcb3f5ab66bc91d0fa4d0e9df7a0c6c6
2022-03-01 16:04:22 +00:00
..
Action server: Support returning scalar types in actions 2022-02-15 14:40:34 +00:00
LiveQuery Source typename customization (close graphql-engine#6974) 2021-10-29 14:43:14 +00:00
RemoteJoin Extract generic containers from the codebase 2022-03-01 16:04:22 +00:00
Action.hs Reduce boolean blindness by promoting data type StringifyNumbers 2022-02-23 20:19:24 +00:00
Backend.hs Reduce boolean blindness by promoting data type StringifyNumbers 2022-02-23 20:19:24 +00:00
Common.hs server: add explicit export lists in OSS server and enforce with warning 2021-11-04 16:09:38 +00:00
Inline.hs server, pro: actually reformat the code-base using ormolu 2021-09-23 22:57:37 +00:00
Instances.hs server: Renames the experimental backend modules 2022-02-25 16:09:17 +00:00
Mutation.hs Generalize remote schemas IR 2022-02-25 20:38:46 +00:00
Query.hs Generalize remote schemas IR 2022-02-25 20:38:46 +00:00
Remote.hs Generalize remote schemas IR 2022-02-25 20:38:46 +00:00
RemoteJoin.hs server, pro: actually reformat the code-base using ormolu 2021-09-23 22:57:37 +00:00
Resolve.hs server, pro: actually reformat the code-base using ormolu 2021-09-23 22:57:37 +00:00
Types.hs server, pro: actually reformat the code-base using ormolu 2021-09-23 22:57:37 +00:00