Safe Haskell | Safe-Inferred |
---|---|
Language | GHC2021 |
Synopsis
- data Replacer m a where
- tryParseQuery :: forall r. Member Replacer r => Query -> Sem r (Query, Set (Ref Table))
- interceptSqlReadTryParseRawQueries :: forall b r a. Members [SqlRead b, SqlParse, Log, Output ExtraDependencies, Replacer] r => Sem r a -> Sem r a
- interceptSqlWriteTryParseRawQueries :: forall b r a. Members [SqlWrite b, Output ExtraDependencies, Replacer] r => Sem r a -> Sem r a
- replacer :: Members [Replacer, Output ExtraDependencies] r => Query -> (Query -> Sem r a) -> Sem r a
- interpretReplacer :: Members [SqlParse, Log] r => Replacer m a -> Sem r a
- interceptTryParseRawQueries :: forall b r a. Members [SqlRead b, SqlParse, SqlWrite b, Log, Output ExtraDependencies] r => Sem r a -> Sem r a
Documentation
interceptSqlReadTryParseRawQueries :: forall b r a. Members [SqlRead b, SqlParse, Log, Output ExtraDependencies, Replacer] r => Sem r a -> Sem r a #
Parse top level QueryRaw
instances and replace them with 'Query.'
TODO: This can only handle top level raw queries. What if raw queries appear deep within non-raw queries? We'd need a monadic interleaving traversal to reach all such cases and parse them.
interceptSqlWriteTryParseRawQueries :: forall b r a. Members [SqlWrite b, Output ExtraDependencies, Replacer] r => Sem r a -> Sem r a #