Sha256: dad2572498faa9fadcc22e86efe391670b21e623655f3c2255232ee98cf6c637

Contents?: true

Size: 621 Bytes

Versions: 9

Compression:

Stored size: 621 Bytes

Contents

require 'textmood'

module MOOD
  @@MOOD = PStore.new("db/moods.pstore")
  def self.[] k
    @@MOOD.transaction { |db| db[k] }
  end
  def self.keys
    @@MOOD.transaction { |db| db.keys }
  end
  def self.incr k, n
    @@MOOD.transaction { |db| x = db[k].to_f; db[k] = x + n[0] || 1 }
  end
  def self.decr k, *n
    @@MOOD.transaction { |db| x = db[k].to_f; db[k] = x + n[0] || 1 }
  end
  def self.update k, s
    MOOD.incr(k, MOOD[s])
  end
  def self.[] p
    TextMood.new(language: "en", ternary_output: true, start_ngram: 1, end_ngram: 4).analyze(p).to_f
  end
end

module Meiou
  def self.mood
    MOOD
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
meiou-0.2.3 lib/meiou/mood.rb
meiou-0.2.2 lib/meiou/mood.rb
meiou-0.2.0 lib/meiou/mood.rb
meiou-0.1.9 lib/meiou/mood.rb
meiou-0.1.8 lib/meiou/mood.rb
meiou-0.1.7 lib/meiou/mood.rb
meiou-0.1.5 lib/meiou/mood.rb
meiou-0.1.3 lib/meiou/mood.rb
meiou-0.1.0 lib/meiou/mood.rb