View Source CountryCodeConverter (country_code_converter v1.0.0)

CountryCodeConverter is a module for converting iso2 / iso3 / ioc country codes.

It can get a country codes for some particular iso code:

iex> {:ok, countries} = CountryCodeConverter.countries(:iso2)
iex> Enum.member?(countries, "BR")
true

You can also convert one code to another:

iex> CountryCodeConverter.convert(:iso2, "BR")
{:ok, %{iso2: "BR", iso3: "BRA", ioc: "BRA"}}

Summary

Functions

Converts provided code to all 3 types: iso2, iso3 and ioc. Returns {:ok, %{iso2: binary(), iso3: binary(), ioc: binary()}} or {:error, binary()}.

Return a country list for a given iso code.

Types

@type code() :: :iso2 | :iso3 | :ioc
@type res() :: %{iso2: binary(), iso3: binary(), ioc: binary()}

Functions

@spec convert(code(), binary()) :: {:ok, res()} | {:error, binary()}

Converts provided code to all 3 types: iso2, iso3 and ioc. Returns {:ok, %{iso2: binary(), iso3: binary(), ioc: binary()}} or {:error, binary()}.

Parameters

  • iso: ISO code, can be one of [:iso2, :iso3, :ioc]
  • code: code of country in provided ISO, in e.g. ("BRA")

Examples

iex> CountryCodeConverter.convert(:iso2, "BR")
{:ok, %{iso2: "BR", iso3: "BRA", ioc: "BRA"}}
@spec countries(code()) :: {:ok, [binary()]} | {:error, binary()}

Return a country list for a given iso code.

Returns {:ok, [binary()]} or {:error, binary()}.

Parameters

  • iso: ISO code, can be one of [:iso2, :iso3, :ioc]

Examples

iex> {:ok, countries} = CountryCodeConverter.countries(:iso2)
iex> Enum.member?(countries, "BR")
true