# `Mutare.Decimal`
[🔗](https://github.com/foxbenjaminfox/mutare_decimal/blob/v0.2.1/lib/mutare/decimal.ex#L1)

Mutation-testing mutators for Decimal calls.

Use all/0 to enable every Decimal-specific family alongside Mutare's built-ins:

    # .mutare.exs
    [mutators: [:builtins] ++ Mutare.Decimal.all()]

The families are:

  * Mutare.Decimal.Arithmetic — same-arity arithmetic call swaps, reported as
    :decimal_arithmetic.
  * Mutare.Decimal.Comparison — Decimal predicate/value comparison swaps and
    compare operand reversal, reported as :decimal_comparison.
  * Mutare.Decimal.DefaultDrop — Decimal default/refinement argument drops, reported as
    :decimal_default_drop.
  * Mutare.Decimal.LimitsDrop — Decimal parse/render limit argument drops, reported as
    :decimal_limits_drop.
  * Mutare.Decimal.ModeSwap — Decimal rounding and string-format mode swaps, reported as
    :decimal_mode_swap.
  * Mutare.Decimal.Classification — Decimal classification predicate swaps, reported as
    :decimal_classification.
  * Mutare.Decimal.ZeroBoundary — Decimal sign predicates broadened around zero, reported as
    :decimal_zero_boundary.
  * Mutare.Decimal.Transform — Decimal transform call removal, reported as
    :decimal_transform.
  * Mutare.Decimal.Sign — Decimal sign-operation and constructor-sign swaps, reported as
    :decimal_sign.
  * Mutare.Decimal.DivRem — Decimal.div_rem/2 tuple-order mutation, reported as
    :decimal_div_rem.
  * Mutare.Decimal.Context — Decimal.Context call mutations, reported as
    :decimal_context.

The mutators match Decimal calls written qualified, aliased, imported, or as pipe stages.

# `all`

```elixir
@spec all() :: [module()]
```

Returns this package's mutator families.

    iex> Mutare.Decimal.all()
    [
      Mutare.Decimal.Arithmetic,
      Mutare.Decimal.Comparison,
      Mutare.Decimal.DefaultDrop,
      Mutare.Decimal.LimitsDrop,
      Mutare.Decimal.ModeSwap,
      Mutare.Decimal.Classification,
      Mutare.Decimal.ZeroBoundary,
      Mutare.Decimal.Transform,
      Mutare.Decimal.Sign,
      Mutare.Decimal.DivRem,
      Mutare.Decimal.Context
    ]

---

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