diff --git a/src/Database/LSMTree/Internal/ChecksumHandle.hs b/src/Database/LSMTree/Internal/ChecksumHandle.hs index 55d8e95b0..3956934a0 100644 --- a/src/Database/LSMTree/Internal/ChecksumHandle.hs +++ b/src/Database/LSMTree/Internal/ChecksumHandle.hs @@ -209,13 +209,13 @@ writeFilter hfs filterHandle bf = {-# SPECIALISE writeIndexHeader :: HasFS IO h -> ForIndex (ChecksumHandle RealWorld h) - -> Proxy# i + -> IndexType -> IO () #-} writeIndexHeader :: (MonadSTM m, PrimMonad m) => HasFS m h -> ForIndex (ChecksumHandle (PrimState m) h) - -> Proxy# i + -> IndexType -> m () writeIndexHeader hfs indexHandle indexTypeProxy = writeToHandle hfs (unForIndex indexHandle) $ diff --git a/src/Database/LSMTree/Internal/Config.hs b/src/Database/LSMTree/Internal/Config.hs index bcd758fd5..6eb4b8d0c 100644 --- a/src/Database/LSMTree/Internal/Config.hs +++ b/src/Database/LSMTree/Internal/Config.hs @@ -319,13 +319,13 @@ instance NFData FencePointerIndex where rnf OrdinaryIndex = () withIndexTypeProxyForRun :: FencePointerIndex - -> (forall i . Index i => Proxy# i -> r) + -> (forall i . Index i => IndexType -> r) -> r withIndexTypeProxyForRun CompactIndex cont = cont (proxy# @IndexCompact) withIndexTypeProxyForRun OrdinaryIndex cont = cont (proxy# @IndexOrdinary) withIndexAccTypeProxyForRun :: FencePointerIndex - -> (forall j . IndexAcc j => Proxy# j -> r) + -> (forall j . IndexAcc j => IndexType -> r) -> r withIndexAccTypeProxyForRun CompactIndex cont = cont (proxy# @IndexCompactAcc) withIndexAccTypeProxyForRun OrdinaryIndex cont = cont (proxy# @IndexOrdinaryAcc) diff --git a/src/Database/LSMTree/Internal/Merge.hs b/src/Database/LSMTree/Internal/Merge.hs index 0eec4e5da..3707ee2e5 100644 --- a/src/Database/LSMTree/Internal/Merge.hs +++ b/src/Database/LSMTree/Internal/Merge.hs @@ -90,7 +90,7 @@ type Mappend = SerialisedValue -> SerialisedValue -> SerialisedValue -> HasBlockIO IO h -> RunDataCaching -> RunBloomFilterAlloc - -> Proxy# j + -> IndexType -> Level -> Mappend -> Run.RunFsPaths @@ -104,7 +104,7 @@ new :: -> HasBlockIO m h -> RunDataCaching -> RunBloomFilterAlloc - -> Proxy# j + -> IndexType -> Level -> Mappend -> Run.RunFsPaths diff --git a/src/Database/LSMTree/Internal/MergingRun.hs b/src/Database/LSMTree/Internal/MergingRun.hs index 57c633f02..dfefbeb4f 100644 --- a/src/Database/LSMTree/Internal/MergingRun.hs +++ b/src/Database/LSMTree/Internal/MergingRun.hs @@ -118,7 +118,7 @@ instance NFData MergeKnownCompleted where -> ResolveSerialisedValue -> Run.RunDataCaching -> RunBloomFilterAlloc - -> Proxy# j + -> IndexType -> Merge.Level -> RunFsPaths -> V.Vector (Ref (Run IO h)) @@ -137,7 +137,7 @@ new :: -> ResolveSerialisedValue -> Run.RunDataCaching -> RunBloomFilterAlloc - -> Proxy# j + -> IndexType -> Merge.Level -> RunFsPaths -> V.Vector (Ref (Run m h)) diff --git a/src/Database/LSMTree/Internal/Run.hs b/src/Database/LSMTree/Internal/Run.hs index 8cf14b251..47a51a7e9 100644 --- a/src/Database/LSMTree/Internal/Run.hs +++ b/src/Database/LSMTree/Internal/Run.hs @@ -205,7 +205,7 @@ fromMutable runRunDataCaching builder = do -> HasBlockIO IO h -> RunDataCaching -> RunBloomFilterAlloc - -> Proxy# j + -> IndexType -> RunFsPaths -> WriteBuffer -> Ref (WriteBufferBlobs IO h) @@ -223,7 +223,7 @@ fromWriteBuffer :: -> HasBlockIO m h -> RunDataCaching -> RunBloomFilterAlloc - -> Proxy# j + -> IndexType -> RunFsPaths -> WriteBuffer -> Ref (WriteBufferBlobs m h) @@ -256,7 +256,7 @@ data FileFormatError = FileFormatError FS.FsPath String HasFS IO h -> HasBlockIO IO h -> RunDataCaching - -> Proxy# i + -> IndexType -> RunFsPaths -> IO (Ref (Run IO h)) #-} -- | Load a previously written run from disk, checking each file's checksum @@ -272,7 +272,7 @@ openFromDisk :: => HasFS m h -> HasBlockIO m h -> RunDataCaching - -> Proxy# i + -> IndexType -> RunFsPaths -> m (Ref (Run m h)) openFromDisk fs hbio runRunDataCaching indexTypeProxy runRunFsPaths = do diff --git a/src/Database/LSMTree/Internal/RunAcc.hs b/src/Database/LSMTree/Internal/RunAcc.hs index b8c9b4b13..21f94fb51 100644 --- a/src/Database/LSMTree/Internal/RunAcc.hs +++ b/src/Database/LSMTree/Internal/RunAcc.hs @@ -93,7 +93,7 @@ data RunBloomFilterAlloc = -- output run. new :: NumEntries -> RunBloomFilterAlloc - -> Proxy# j + -> IndexType -> ST s (RunAcc s) new (NumEntries nentries) alloc indexAccTypeProxy = do mbloom <- case alloc of diff --git a/src/Database/LSMTree/Internal/RunBuilder.hs b/src/Database/LSMTree/Internal/RunBuilder.hs index 83cd69984..500ecfd8e 100644 --- a/src/Database/LSMTree/Internal/RunBuilder.hs +++ b/src/Database/LSMTree/Internal/RunBuilder.hs @@ -76,7 +76,7 @@ data RunBuilder m h = RunBuilder { -> RunFsPaths -> NumEntries -> RunBloomFilterAlloc - -> Proxy# j + -> IndexType -> IO (RunBuilder IO h) #-} -- | Create an 'RunBuilder' to start building a run. -- @@ -88,7 +88,7 @@ new :: -> RunFsPaths -> NumEntries -- ^ an upper bound of the number of entries to be added -> RunBloomFilterAlloc - -> Proxy# j + -> IndexType -> m (RunBuilder m h) new hfs hbio runBuilderFsPaths numEntries alloc indexAccTypeProxy = do runBuilderAcc <- ST.stToIO $ RunAcc.new numEntries alloc indexAccTypeProxy