jonathanknowles / jonathanknowles/monoidmap

Add functions similar to `Map.{restrict,without}Keys`.

Open
#250 0 comments 0 reactions 1 assignee Claimed by @jonathanknowles View on GitHub
enhancement
Dominant language
Haskell
Stars
21
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Consider using names that are consistent with existing functions (such as `nullify`).

For example:

```hs
nullify :: Ord k => k -> MonoidMap k v -> MonoidMap k v
nullifyIn :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
nullifyNotIn :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
```

Or:

```hs
nullifyKey :: Ord k => k -> MonoidMap k v -> MonoidMap k v
nullifyKeysIn :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
nullifyKeysNotIn :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
```

```hs
nullifyKey :: Ord k => k -> MonoidMap k v -> MonoidMap k v
nullifyKeys :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
restrictKeys :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
```

Or:

```hs
nullifyKey :: Ord k => k -> MonoidMap k v -> MonoidMap k v
nullifyKeys :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
nullifyKeysExcept :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
```

Or:

```hs
nullifyKey :: Ord k => k -> MonoidMap k v -> MonoidMap k v
nullifyKeys :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
nullifyKeysOutside :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
```

Or:

```hs
nullifyKey :: Ord k => k -> MonoidMap k v -> MonoidMap k v
nullifyKeys :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
isolateKeys :: Ord k => Set k -> MonoidMap k v -> MonoidMap k v
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.