class Dentaku::TokenMatcher

def match(token_stream, offset = 0)

def match(token_stream, offset = 0)
  matched_tokens = []
  matched = false
  while self == token_stream[matched_tokens.length + offset] && matched_tokens.length < @max
    matched_tokens << token_stream[matched_tokens.length + offset]
  end
  if @range.cover?(matched_tokens.length)
    matched = true
  end
  [matched, matched_tokens]
end