GS1.CheckDigit (gs1_barcode v0.1.2)

View Source

GS1 Modulo-10 check digit code validation. Accepts digit-only binary strings.

Summary

Functions

Calculates check digit.

Validates a digit-only binary string.

Functions

calculate(code)

@spec calculate(String.t() | pos_integer()) ::
  {:ok, non_neg_integer()} | {:error, term()}

Calculates check digit.

Examples

iex> GS1.CheckDigit.calculate("01234567890")
{:ok, 5}

iex> GS1.CheckDigit.calculate("ABC")
{:error, :non_digit}

iex> GS1.CheckDigit.calculate(5762654)
{:ok, 3}

valid?(code)

@spec valid?(String.t()) :: boolean()

Validates a digit-only binary string.

Examples

iex> GS1.CheckDigit.valid?("012345678905")
true