Sha256: 6dab7a8ada691ae120445a56d56c38d49963d39605d69ade849cefcff22a85ea
Contents?: true
Size: 445 Bytes
Versions: 9
Compression:
Stored size: 445 Bytes
Contents
require 'dentaku/token' module Dentaku class TokenScanner def initialize(category, regexp, converter=nil) @category = category @regexp = %r{\A(#{ regexp })}i @converter = converter end def scan(string) if m = @regexp.match(string) value = raw = m.to_s value = @converter.call(raw) if @converter return Token.new(@category, value, raw) end false end end end
Version data entries
9 entries across 9 versions & 1 rubygems