Skip to content

Commit 1c9a3d7

Browse files
committed
add type annotations
1 parent 4c9ad04 commit 1c9a3d7

File tree

7 files changed

+12
-5
lines changed

7 files changed

+12
-5
lines changed

lib/polish_validators/common.ex

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ defmodule PolishValidators.Common do
2424
{ :error, "Invalid length" }
2525
2626
"""
27+
@spec validate_length(String.t, integer() | list(integer)) :: {atom, String.t}
2728
def validate_length(string, valid_length) do
2829
valid_length = cond do
2930
is_number(valid_length) -> [valid_length]
@@ -48,6 +49,7 @@ defmodule PolishValidators.Common do
4849
{ :error, "Wrong checksum" }
4950
5051
"""
52+
@spec validate_checksum(integer(), integer()) :: {atom, String.t}
5153
def validate_checksum(checksum, control_digit) do
5254
if (checksum == control_digit) do
5355
{ :ok, "Valid" }
@@ -65,6 +67,7 @@ defmodule PolishValidators.Common do
6567
[1, 2, 3]
6668
6769
"""
70+
@spec to_integers_list(String.t) :: list(integer)
6871
def to_integers_list(number) do
6972
to_string(number)
7073
|> split("", trim: true)

lib/polish_validators/iban.ex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ defmodule PolishValidators.Iban do
2424
{ :error, "Invalid length" }
2525
2626
"""
27+
@spec validate(String.t) :: {atom, String.t}
2728
def validate(iban) when is_binary(iban) do
2829
iban_length = replace_prefix(iban, "PL", "")
2930
|> validate_length(26)

lib/polish_validators/nip.ex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ defmodule PolishValidators.Nip do
2424
{ :error, "Invalid length" }
2525
2626
"""
27+
@spec validate(String.t) :: {atom, String.t}
2728
def validate(nip) when is_binary(nip) do
2829
nip_length = validate_length(nip, 10)
2930

lib/polish_validators/pesel.ex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ defmodule PolishValidators.Pesel do
2424
{ :error, "Invalid length" }
2525
2626
"""
27+
@spec validate(String.t) :: {atom, String.t}
2728
def validate(pesel) when is_binary(pesel) do
2829
pesel_length = validate_length(pesel, 11)
2930

lib/polish_validators/regon.ex

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ defmodule PolishValidators.Regon do
3333
{ :error, "Invalid length" }
3434
3535
"""
36+
@spec validate(String.t) :: {atom, String.t}
3637
def validate(regon) when is_binary(regon) do
3738
regon_length = validate_length(regon, [9, 14])
3839

mix.exs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ defmodule PolishValidators.Mixfile do
44
def project do
55
[
66
app: :polish_validators,
7-
version: "0.1.0",
7+
version: "0.1.1",
88
elixir: "~> 1.5",
99
start_permanent: Mix.env == :prod,
1010
description: description(),
@@ -40,9 +40,8 @@ defmodule PolishValidators.Mixfile do
4040
defp deps do
4141
[
4242
{:ex_doc, "~> 0.11", only: :dev},
43-
{:earmark, "~> 0.1", only: :dev}
44-
# {:dep_from_hexpm, "~> 0.3.0"},
45-
# {:dep_from_git, git: "https://github.com/elixir-lang/my_dep.git", tag: "0.1.0"},
43+
{:earmark, "~> 0.1", only: :dev},
44+
{:dialyxir, "~> 0.3", only: [:dev]}
4645
]
4746
end
4847
end

mix.lock

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
1-
%{"earmark": {:hex, :earmark, "0.2.1", "ba6d26ceb16106d069b289df66751734802777a3cbb6787026dd800ffeb850f3", [], [], "hexpm"},
1+
%{"dialyxir": {:hex, :dialyxir, "0.5.1", "b331b091720fd93e878137add264bac4f644e1ddae07a70bf7062c7862c4b952", [], [], "hexpm"},
2+
"earmark": {:hex, :earmark, "0.2.1", "ba6d26ceb16106d069b289df66751734802777a3cbb6787026dd800ffeb850f3", [], [], "hexpm"},
23
"ex_doc": {:hex, :ex_doc, "0.12.0", "b774aabfede4af31c0301aece12371cbd25995a21bb3d71d66f5c2fe074c603f", [], [{:earmark, "~> 0.2", [hex: :earmark, repo: "hexpm", optional: false]}], "hexpm"}}

0 commit comments

Comments
 (0)