Initial commit
This commit is contained in:
29
lib/iban_ex/iban.ex
Normal file
29
lib/iban_ex/iban.ex
Normal file
@@ -0,0 +1,29 @@
|
||||
defmodule IbanEx.Iban do
|
||||
alias IbanEx.Formatter
|
||||
alias IbanEx.{Serialize}
|
||||
|
||||
@type t :: %__MODULE__{
|
||||
country_code: <<_::16>>,
|
||||
check_digits: String.t(),
|
||||
bank_code: String.t(),
|
||||
branch_code: String.t() | nil,
|
||||
national_check: String.t() | nil,
|
||||
account_number: String.t()
|
||||
}
|
||||
defstruct country_code: "UA", check_digits: nil, bank_code: nil, branch_code: nil, national_check: nil, account_number: nil
|
||||
|
||||
@spec to_map(IbanEx.Iban.t()) :: map()
|
||||
defdelegate to_map(iban), to: Serialize
|
||||
|
||||
@spec to_string(IbanEx.Iban.t()) :: binary()
|
||||
defdelegate to_string(iban), to: Serialize
|
||||
|
||||
@spec pretty(IbanEx.Iban.t()) :: binary()
|
||||
defdelegate pretty(iban), to: Formatter
|
||||
|
||||
@spec splitted(IbanEx.Iban.t()) :: binary()
|
||||
defdelegate splitted(iban), to: Formatter
|
||||
|
||||
@spec compact(IbanEx.Iban.t()) :: binary()
|
||||
defdelegate compact(iban), to: Formatter
|
||||
end
|
||||
Reference in New Issue
Block a user