Sha256: 76894c6d3389b83ef9992d0f286dba3352aa430e9dda20a1d6c9d666730b643b
Contents?: true
Size: 892 Bytes
Versions: 2
Compression:
Stored size: 892 Bytes
Contents
require 'raingrams/ngram' require 'set' module Raingrams class NgramSet < Set def select(&block) selected_ngrams = self.class.new each do |ngram| selected_ngrams << ngram if block.call(ngram) end return selected_ngrams end def prefixed_by(prefix) select { |ngram| ngram.prefixed_by?(prefix) } end def postfixed_by(postfix) select { |ngram| ngram.postfixed_by?(postfix) } end def starts_with(gram) select { |ngram| ngram.starts_with?(gram) } end def ends_with(gram) select { |ngram| ngram.ends_with?(gram) } end def including(gram) select { |ngram| ngram.include?(gram) } end def including_any(*grams) select { |ngram| ngram.includes_any?(*grams) } end def including_all(*grams) select { |ngram| ngram.includes_all?(*grams) } end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
raingrams-0.1.1 | lib/raingrams/ngram_set.rb |
raingrams-0.1.2 | lib/raingrams/ngram_set.rb |