# `Yubin.Address`
[🔗](https://github.com/NexPB/yubin/blob/v0.1.0/lib/yubin/address.ex#L1)

One row of Japan Post postal code data.

`kind` tells which source the row comes from:

  * `:area` - a town in the home/area data (`KEN_ALL`)
  * `:building` - one floor of a high-rise building that has its own codes
  * `:business` - a business that has its own code (`JIGYOSYO`)

`town` is `""` when the code covers the whole city. Kana are full-width katakana.
`floor` is set only for `:building` rows, and is `nil` for the basement or an unknown floor.
`business_name` and `street` are set only for `:business` rows. A business row has
`town_kana: nil` when the area data has no single reading for its town.

# `kind`

```elixir
@type kind() :: :area | :building | :business
```

# `t`

```elixir
@type t() :: %Yubin.Address{
  business_name: String.t() | nil,
  city: String.t(),
  city_kana: String.t() | nil,
  floor: pos_integer() | nil,
  kind: kind(),
  note: String.t() | nil,
  postal_code: String.t(),
  prefecture: Yubin.Prefecture.t(),
  street: String.t() | nil,
  town: String.t(),
  town_kana: String.t() | nil
}
```

---

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