@@ -313,21 +313,21 @@ delete k m = maybe m snd (pop k m)
313313-- | Delete a key and its corresponding value from a map, returning the value
314314-- | as well as the subsequent map.
315315pop :: forall k v . Ord k => k -> Map k v -> Maybe (Tuple v (Map k v ))
316- pop = down Nil
316+ pop k = down Nil
317317 where
318318 comp :: k -> k -> Ordering
319319 comp = compare
320320
321- down :: List (TreeContext k v ) -> k -> Map k v -> Maybe (Tuple v (Map k v ))
322- down = unsafePartial \ctx k m -> case m of
321+ down :: List (TreeContext k v ) -> Map k v -> Maybe (Tuple v (Map k v ))
322+ down = unsafePartial \ctx m -> case m of
323323 Leaf -> Nothing
324324 Two left k1 v1 right ->
325325 case right, comp k k1 of
326326 Leaf , EQ -> Just (Tuple v1 (up ctx Leaf ))
327327 _ , EQ -> let max = maxNode left
328328 in Just (Tuple v1 (removeMaxNode (Cons (TwoLeft max.key max.value right) ctx) left))
329- _ , LT -> down (Cons (TwoLeft k1 v1 right) ctx) k left
330- _ , _ -> down (Cons (TwoRight left k1 v1) ctx) k right
329+ _ , LT -> down (Cons (TwoLeft k1 v1 right) ctx) left
330+ _ , _ -> down (Cons (TwoRight left k1 v1) ctx) right
331331 Three left k1 v1 mid k2 v2 right ->
332332 let leaves =
333333 case left, mid, right of
@@ -340,9 +340,9 @@ pop = down Nil
340340 in Just (Tuple v1 (removeMaxNode (Cons (ThreeLeft max.key max.value mid k2 v2 right) ctx) left))
341341 _ , _ , EQ -> let max = maxNode mid
342342 in Just (Tuple v2 (removeMaxNode (Cons (ThreeMiddle left k1 v1 max.key max.value right) ctx) mid))
343- _ , LT , _ -> down (Cons (ThreeLeft k1 v1 mid k2 v2 right) ctx) k left
344- _ , GT , LT -> down (Cons (ThreeMiddle left k1 v1 k2 v2 right) ctx) k mid
345- _ , _ , _ -> down (Cons (ThreeRight left k1 v1 mid k2 v2) ctx) k right
343+ _ , LT , _ -> down (Cons (ThreeLeft k1 v1 mid k2 v2 right) ctx) left
344+ _ , GT , LT -> down (Cons (ThreeMiddle left k1 v1 k2 v2 right) ctx) mid
345+ _ , _ , _ -> down (Cons (ThreeRight left k1 v1 mid k2 v2) ctx) right
346346
347347 up :: List (TreeContext k v ) -> Map k v -> Map k v
348348 up = unsafePartial \ctxs tree ->
@@ -370,17 +370,17 @@ pop = down Nil
370370
371371 maxNode :: Map k v -> { key :: k , value :: v }
372372 maxNode = unsafePartial \m -> case m of
373- Two _ k v Leaf -> { key: k, value: v }
373+ Two _ k' v Leaf -> { key: k' , value: v }
374374 Two _ _ _ right -> maxNode right
375- Three _ _ _ _ k v Leaf -> { key: k, value: v }
375+ Three _ _ _ _ k' v Leaf -> { key: k' , value: v }
376376 Three _ _ _ _ _ _ right -> maxNode right
377377
378378
379379 removeMaxNode :: List (TreeContext k v ) -> Map k v -> Map k v
380380 removeMaxNode = unsafePartial \ctx m ->
381381 case m of
382382 Two Leaf _ _ Leaf -> up ctx Leaf
383- Two left k v right -> removeMaxNode (Cons (TwoRight left k v) ctx) right
383+ Two left k' v right -> removeMaxNode (Cons (TwoRight left k' v) ctx) right
384384 Three Leaf k1 v1 Leaf _ _ Leaf -> up (Cons (TwoRight Leaf k1 v1) ctx) Leaf
385385 Three left k1 v1 mid k2 v2 right -> removeMaxNode (Cons (ThreeRight left k1 v1 mid k2 v2) ctx) right
386386
0 commit comments