class Sastrawi::Stemmer::Context::Visitor::PrefixDisambiguator
Attributes
disambiguators[R]
Public Class Methods
new(disambiguators = [])
click to toggle source
# File lib/sastrawi/stemmer/context/visitor/prefix_disambiguator.rb, line 8 def initialize(disambiguators = []) @disambiguators = [] add_disambiguators(disambiguators) end
Public Instance Methods
add_disambiguator(disambiguator)
click to toggle source
# File lib/sastrawi/stemmer/context/visitor/prefix_disambiguator.rb, line 39 def add_disambiguator(disambiguator) @disambiguators.push(disambiguator) end
add_disambiguators(disambiguators)
click to toggle source
# File lib/sastrawi/stemmer/context/visitor/prefix_disambiguator.rb, line 33 def add_disambiguators(disambiguators) disambiguators.each do |disambiguator| add_disambiguator(disambiguator) end end
visit(context)
click to toggle source
# File lib/sastrawi/stemmer/context/visitor/prefix_disambiguator.rb, line 14 def visit(context) result = nil @disambiguators.each do |disambiguator| result = disambiguator.disambiguate(context.current_word) break if context.dictionary.contains?(result) end return if result.nil? removed_part = context.current_word.sub(/#{Regexp.quote(result)}/, '') removal = Removal.new(self, context.current_word, result, removed_part, 'DP') context.add_removal(removal) context.current_word = result end