Class: BarcodeValidation::GTIN
- Inherits:
-
DigitSequence
- Object
- Array
- DigitSequence
- BarcodeValidation::GTIN
- Extended by:
- Forwardable
- Includes:
- Mixin::HasCheckDigit
- Defined in:
- lib/barcodevalidation/gtin.rb
Defined Under Namespace
Classes: CheckDigit
Constant Summary collapse
- VALID_LENGTHS =
[8, 12, 13, 14].freeze
Constants included from Mixin::HasCheckDigit
Constants inherited from DigitSequence
Class Method Summary collapse
Instance Method Summary collapse
Methods included from Mixin::HasCheckDigit
Methods inherited from DigitSequence
#==, cast, #initialize, memoization_key
Methods included from Mixin::ValueObject
#eql?, included, #inspect, #pretty_print
Constructor Details
This class inherits a constructor from BarcodeValidation::DigitSequence
Class Method Details
.new(input) ⇒ Object
10 11 12 13 14 |
# File 'lib/barcodevalidation/gtin.rb', line 10 def self.new(input) super rescue BarcodeValidation::Error => e return InvalidGTIN.new(input, error: e) end |
Instance Method Details
#valid? ⇒ Boolean
16 17 18 |
# File 'lib/barcodevalidation/gtin.rb', line 16 def valid? VALID_LENGTHS.include?(length) && check_digit.valid? end |