1- {-# LANGUAGE OverloadedStrings #-}
2-
3- -- TODO: remove once the API is implemented.
4- {-# OPTIONS_GHC -Wno-redundant-constraints #-}
5-
61-- | On disk key-value tables, implemented as Log Structured Merge (LSM) trees.
72--
83-- This module is the API for \"normal\" tables, as opposed to \"monoidal\"
@@ -640,11 +635,7 @@ retrieveBlobs (Internal.Session' (sesh :: Internal.Session m h)) refs =
640635-------------------------------------------------------------------------------}
641636
642637{-# SPECIALISE createSnapshot ::
643- ( SerialiseKey k
644- , SerialiseValue v
645- , SerialiseValue blob
646- , Common.Labellable (k, v, blob)
647- )
638+ Common.Labellable (k, v, blob)
648639 => SnapshotName
649640 -> Table IO k v blob
650641 -> IO () #-}
@@ -679,9 +670,6 @@ retrieveBlobs (Internal.Session' (sesh :: Internal.Session m h)) refs =
679670-- but the original table remains unchanged.
680671createSnapshot :: forall m k v blob .
681672 ( IOLike m
682- , SerialiseKey k
683- , SerialiseValue v
684- , SerialiseValue blob
685673 , Common. Labellable (k , v , blob )
686674 )
687675 => SnapshotName
@@ -693,11 +681,7 @@ createSnapshot snap (Internal.NormalTable t) =
693681 label = Internal. SnapshotLabel $ Common. makeSnapshotLabel (Proxy @ (k , v , blob ))
694682
695683{-# SPECIALISE openSnapshot ::
696- ( SerialiseKey k
697- , SerialiseValue v
698- , SerialiseValue blob
699- , Common.Labellable (k, v, blob)
700- )
684+ Common.Labellable (k, v, blob)
701685 => Session IO
702686 -> Common.TableConfigOverride
703687 -> SnapshotName
@@ -725,9 +709,6 @@ createSnapshot snap (Internal.NormalTable t) =
725709-- proper snapshots. See 'createSnapshot'.
726710openSnapshot :: forall m k v blob .
727711 ( IOLike m
728- , SerialiseKey k
729- , SerialiseValue v
730- , SerialiseValue blob
731712 , Common. Labellable (k , v , blob )
732713 )
733714 => Session m
@@ -813,4 +794,4 @@ union :: forall m k v blob.
813794 => Table m k v blob
814795 -> Table m k v blob
815796 -> m (Table m k v blob )
816- union = undefined
797+ union = error " union: not yet implemented " $ union @ m @ k @ v
0 commit comments