Sha256: 12ab54d3394f34a5a8cffc135d3511d20ed169c5ed7fbfb5017bd966d22cacda
Contents?: true
Size: 520 Bytes
Versions: 1
Compression:
Stored size: 520 Bytes
Contents
require 'forwardable' module RussianPost module Barcode class Base extend Forwardable def_delegator :barcode, :=~ attr_reader :barcode, :digits def self.format /.*/ end def initialize(barcode) @barcode = barcode.strip.upcase @digits = barcode.scan(/\d/).map { |d| d.to_i } end def valid? (barcode =~ self.class.format || false) && digits.last == checkdigit end def to_s barcode end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
russianpost-0.7.0 | lib/russianpost/barcode/base.rb |