class CreditCardReader::Detector
Constants
- CARD_BRANDS
Public Instance Methods
detect(number)
click to toggle source
# File lib/credit_card_reader/detector.rb, line 19 def detect(number) Result.new(number: number, brand: detect_brand(number), valid: valid?(number)) end
Private Instance Methods
detect_brand(number)
click to toggle source
# File lib/credit_card_reader/detector.rb, line 25 def detect_brand(number) CARD_BRANDS.each do |brand, pattern| return brand if number =~ pattern end nil end
valid?(number)
click to toggle source
# File lib/credit_card_reader/detector.rb, line 33 def valid?(number) ::Luhn.valid?(number) rescue Luhn::RequirementError false end