# `Islands.Board.Response`
[🔗](https://github.com/RaymondLoranger/islands_board/blob/main/lib/islands/board/response.ex#L1)

A 4-element tuple reflecting the effect of a guess (hit or miss) on a board.

# `guess_check`

```elixir
@type guess_check() :: {:hit, Islands.Island.t()} | {:miss, Islands.Coord.t()}
```

Preliminary response to a guess

# `t`

```elixir
@type t() ::
  {:hit | :miss, Islands.Island.type() | :none, :no_win | :win,
   Islands.Board.t()}
```

Full response to a guess

# `check_all_islands`

```elixir
@spec check_all_islands(Islands.Board.t(), Islands.Coord.t()) :: guess_check()
```

Checks if `guess` has hit any island on `board`.

Returns `{:hit, hit_island}`, where hit_island is the island hit by `guess`
once updated, or `{:miss, guess}` if `guess` was a miss.

# `full_response`

```elixir
@spec full_response(guess_check(), Islands.Board.t()) :: t()
```

Converts a preliminary response to a guess into a full response.

---

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