# `QQR.BitMatrix`
[🔗](https://github.com/dannote/qqr/blob/main/lib/qqr/bit_matrix.ex#L1)

2D binary matrix representing QR code modules.

# `t`

```elixir
@type t() :: %QQR.BitMatrix{
  data: tuple(),
  height: non_neg_integer(),
  width: non_neg_integer()
}
```

# `from_list`

```elixir
@spec from_list(non_neg_integer(), non_neg_integer(), [0 | 1]) :: t()
```

# `get`

```elixir
@spec get(t(), integer(), integer()) :: boolean()
```

# `new`

```elixir
@spec new(non_neg_integer(), non_neg_integer()) :: t()
```

# `set`

```elixir
@spec set(t(), non_neg_integer(), non_neg_integer(), boolean()) :: t()
```

# `set_region`

```elixir
@spec set_region(
  t(),
  non_neg_integer(),
  non_neg_integer(),
  non_neg_integer(),
  non_neg_integer(),
  boolean()
) :: t()
```

# `to_svg`

```elixir
@spec to_svg(
  t(),
  keyword()
) :: String.t()
```

Render the matrix as an SVG string. See `QQR.SVG` for options.

# `to_svg_iodata`

```elixir
@spec to_svg_iodata(
  t(),
  keyword()
) :: iodata()
```

Render the matrix as SVG iodata. See `QQR.SVG` for options.

---

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