From 371aa5343c1c778425876e99fb00445bbd1c6edf Mon Sep 17 00:00:00 2001 From: crumbtoo Date: Mon, 13 Nov 2023 17:36:06 -0700 Subject: [PATCH] auxiliary view functions for heap lookups --- src/Data/Heap.hs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/Data/Heap.hs b/src/Data/Heap.hs index 4d920b9..9acd7b9 100644 --- a/src/Data/Heap.hs +++ b/src/Data/Heap.hs @@ -8,6 +8,8 @@ module Data.Heap , hLookupUnsafe , addresses , hSize + , hView + , hViewUnsafe ) where ---------------------------------------------------------------------------------- @@ -67,3 +69,11 @@ addresses (Heap _ m) = M.keys m hSize :: Heap a -> Int hSize (Heap _ m) = M.size m +-- | Intended for use with view patterns +hView :: Heap a -> Addr -> Maybe a +hView = flip hLookup + +-- | Intended for use with view patterns +hViewUnsafe :: Heap a -> Addr -> a +hViewUnsafe = flip hLookupUnsafe +