# `mix mojoler.abi`
[🔗](https://github.com/thanos/mojoler/blob/v0.1.0/lib/mix/tasks/mojoler.abi.ex#L1)

Runs `scripts/check-abi.sh`.

The script regenerates the ABI, diffs it against the committed Mojo file,
checks struct layout, rejects a misspelled import, and checks the product
libraries. `run/1` is the `c:Mix.Task.run/1` callback behind `mix mojoler.abi`.

# `run`

```elixir
@spec run([String.t()]) :: nil
```

Runs the ABI check and writes its output.

`args` is ignored.

## Returns

`nil` when the script exits 0.

## Raises

  * `Mix.Error` when the script exits non-zero

## Examples

    iex> Mix.Tasks.Mojoler.Abi.run([])
    nil

---

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