aboutsummaryrefslogtreecommitdiff
path: root/src/Data/Array/Mixed.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Data/Array/Mixed.hs')
-rw-r--r--src/Data/Array/Mixed.hs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/Data/Array/Mixed.hs b/src/Data/Array/Mixed.hs
index 1a622fb..6766d90 100644
--- a/src/Data/Array/Mixed.hs
+++ b/src/Data/Array/Mixed.hs
@@ -727,6 +727,9 @@ permFromList (x : xs) k = withSomeSNat (fromIntegral x) $ \case
Just sn -> permFromList xs $ \list -> k (sn `HCons` list)
Nothing -> error $ "Data.Array.Mixed.permFromList: negative number in list: " ++ show x
+permToList :: HList SNat list -> [Int]
+permToList = foldHList (pure . fromSNat')
+
type family TakeLen ref l where
TakeLen '[] l = '[]
TakeLen (_ : ref) (x : xs) = x : TakeLen ref xs