Module: Valvat::Checksum
- Defined in:
- lib/valvat/checksum.rb,
lib/valvat/checksum/at.rb,
lib/valvat/checksum/be.rb,
lib/valvat/checksum/bg.rb,
lib/valvat/checksum/cy.rb,
lib/valvat/checksum/de.rb,
lib/valvat/checksum/dk.rb,
lib/valvat/checksum/ee.rb,
lib/valvat/checksum/es.rb,
lib/valvat/checksum/fi.rb,
lib/valvat/checksum/fr.rb,
lib/valvat/checksum/gb.rb,
lib/valvat/checksum/gr.rb,
lib/valvat/checksum/hr.rb,
lib/valvat/checksum/hu.rb,
lib/valvat/checksum/ie.rb,
lib/valvat/checksum/it.rb,
lib/valvat/checksum/lt.rb,
lib/valvat/checksum/lu.rb,
lib/valvat/checksum/mt.rb,
lib/valvat/checksum/nl.rb,
lib/valvat/checksum/pl.rb,
lib/valvat/checksum/pt.rb,
lib/valvat/checksum/ro.rb,
lib/valvat/checksum/se.rb,
lib/valvat/checksum/si.rb
Defined Under Namespace
Classes: AT, BE, BG, Base, CY, DE, DK, EE, ES, FI, FR, GB, GR, HR, HU, IE, IT, LT, LU, MT, NL, PL, PT, RO, SE, SI
Constant Summary collapse
- ALGORITHMS =
Dir[File.join(__dir__, 'checksum', '*.rb')].each_with_object({}) do |path, algos| require path.gsub(/\.rb$/, '') classname = File.basename(path, '.rb').upcase algos[classname] = ['Valvat', 'Checksum', classname].inject(Object, :const_get) end.freeze
Class Method Summary collapse
Class Method Details
.validate(vat) ⇒ Object
65 66 67 68 69 |
# File 'lib/valvat/checksum.rb', line 65 def self.validate(vat) vat = Valvat(vat) algo = ALGORITHMS[vat.iso_country_code] Valvat::Syntax.validate(vat) && !!(algo.nil? || algo.new(vat).validate) end |