From 95c0985952cddfc3c0e3b0a6a9f8913dac6c9da3 Mon Sep 17 00:00:00 2001 From: Joshua Peek Date: Mon, 23 Jul 2012 10:46:54 -0500 Subject: [PATCH] Drop defaults in classifier hash --- lib/linguist/classifier.rb | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/lib/linguist/classifier.rb b/lib/linguist/classifier.rb index 03958301..3c518c24 100644 --- a/lib/linguist/classifier.rb +++ b/lib/linguist/classifier.rb @@ -24,9 +24,9 @@ module Linguist def initialize @tokens_total = 0 @languages_total = 0 - @tokens = Hash.new { |h, k| h[k] = Hash.new(0) } - @language_tokens = Hash.new(0) - @languages = Hash.new(0) + @tokens = {} + @language_tokens = {} + @languages = {} end # Public: Compare Classifier objects. @@ -56,10 +56,14 @@ module Linguist tokens = Tokenizer.tokenize(data) tokens.each do |token| + @tokens[language] ||= {} + @tokens[language][token] ||= 0 @tokens[language][token] += 1 + @language_tokens[language] ||= 0 @language_tokens[language] += 1 @tokens_total += 1 end + @languages[language] ||= 0 @languages[language] += 1 @languages_total += 1