napkin-0.5.12
Copyright(c) Soostone Inc 2020
LicenseAllRightsReserved
Stabilityexperimental
PortabilityPOSIX
Safe HaskellNone
LanguageHaskell2010

Napkin.Run.Execute

Description

 
Synopsis

Documentation

type SpecBackend bk drop t1 t2 t3 t4 t5 t6 t7 t8 t9 = (Command (CreateViewAs (BackendViewMeta bk)) t3 bk, Command (CreateMaterializedViewAs (BackendMaterializedViewMeta bk)) t3 bk, Command CheckTableExists Bool bk, Command Grant t1 bk, Command (CreateTableAs (BackendTableMeta bk)) t4 bk, Command InsertIntoQuery t6 bk, Command drop t5 bk, Command DropView t2 bk, Command DropTable t5 bk, Command CopyTable t9 bk, Command DeleteFrom t8 bk, Command RenameTable t7 bk, Command GetRelationSchema (Fields Field) bk, Drop (CreateTableAs (BackendTableMeta bk)) drop, RenderSql (Ref Table) bk, RenderSql Query bk, RenderSql SExp bk, Backend bk, MustacheBackend bk, Typeable bk, RunBackendEffect bk, Show (BackendTableMeta bk), Show (BackendViewMeta bk), Show (BackendMaterializedViewMeta bk)) #

What we seem to need to be able to call executeSpec; it's basically all about choosing a backend that satisfies the needed operations.

executeSpec :: forall m bk drop t1 t2 t3 t4 t5 t6 t7 t8 t9. (MonadFix m, MonadBaseControl IO m, MonadMask m, Katip m, MonadReader ComboEnv m, SpecBackend bk drop t1 t2 t3 t4 t5 t6 t7 t8 t9, MonadQueryStats m, RunBackendEffect bk) => RuntimeEnv -> bk -> MetadataBeamConnection -> SpecRuntime bk -> ValidatedInterpretedSpec bk -> Set (Ref Table) -> m Success #