Data.Schematic.Migration

data Path

data Builder

type family SchemaByKey (fs :: [(Symbol, Schema)]) (s :: Symbol) :: Schema where ...

type family DeleteKey (acc :: [(Symbol, Schema)]) (fn :: Symbol) (fs :: [(Symbol, Schema)]) :: [(Symbol, Schema)] where ...

type family UpdateKey (fn :: Symbol) (fs :: [(Symbol, Schema)]) (s :: Schema) = (r :: [(Symbol, Schema)]) where ...

type family Build (b :: Builder) :: Schema where ...

type family MakeBuilder (s :: Schema) (d :: Diff) :: Builder where ...

type family ApplyAction (a :: Action) (s :: Schema) :: Schema where ...

type family ApplyMigration (m :: Migration) (s :: Schema) :: (Revision, Schema) where ...

type family SchemaByRevision (r :: Revision) (vd :: Versioned) :: Schema where ...

type family InitialSchema (v :: Versioned) = (s :: Schema) where ...

type family ElemOf (e :: k) (l :: [(a, k)]) :: Constraint where ...

type family AllVersions (vd :: Versioned) :: [(Revision, Schema)] where ...

type family AllVersions' (acc :: [(Revision, Schema)]) (ms :: [Migration]) = (r :: [(Revision, Schema)]) where ...

type family TopVersion (rs :: [(Revision, Schema)]) :: Schema where ...

class MigrateSchema a b

data Action

data Diff

type Revision

data Migration

data Versioned

data MList