# `Mutare.Mutators.MapKeyword`
[🔗](https://github.com/foxbenjaminfox/mutare/blob/v0.5.0/lib/mutare/mutators/map_keyword.ex#L1)

Renames `Map` and `Keyword` writes according to how they handle present and absent keys:

| function | key present | key absent |
| --- | --- | --- |
| `put` | overwrite | insert |
| `put_new` | leave unchanged | insert |
| `replace` | overwrite | ignore |
| `replace!` | overwrite | raise |

The following `/3` pairs are exchanged:

  * `put` ↔ `put_new`
  * `put` ↔ `replace`
  * `put_new` ↔ `replace`
  * `replace` ↔ `replace!`

The same pairs apply to both `Map` and `Keyword`. Direct, aliased, and imported calls are supported; an alias that resolves to another module does not match.

This family is enabled by default. Its family name is `map_keyword`.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
