Sha256: 47225e68ee47c234ddaaefc9189b325cac8805c0570cd5b5378a285e94fac331
Contents?: true
Size: 1.26 KB
Versions: 4
Compression:
Stored size: 1.26 KB
Contents
require 'sastrawi/dictionary/array_dictionary' require 'sastrawi/stemmer/cached_stemmer' require 'sastrawi/stemmer/stemmer' require 'sastrawi/stemmer/cache/array_cache' ## # Stemmer factory helps creating a pre-configured stemmer module Sastrawi module Stemmer class StemmerFactory def create_stemmer(is_dev = false) stemmer = Sastrawi::Stemmer::Stemmer.new(create_default_dictionary(is_dev)) cache_result = Sastrawi::Stemmer::Cache::ArrayCache.new cached_stemmer = Sastrawi::Stemmer::CachedStemmer.new(cache_result, stemmer) cached_stemmer end def create_default_dictionary(is_dev = false) words = get_words(is_dev) dictionary = Sastrawi::Dictionary::ArrayDictionary.new(words) dictionary end def get_words(is_dev = false) get_words_from_file end def get_words_from_file root_directory = File.expand_path('../../../..', __FILE__) dictionary_file_path = File.join(root_directory, 'data/base-word.txt') dictionary_content = [] File.open(dictionary_file_path, 'r') do |file| file.each do |line| dictionary_content.push(line.chomp) end end dictionary_content end end end end
Version data entries
4 entries across 4 versions & 1 rubygems