Class: Worte::Worte

Inherits:
Object
  • Object
show all
Defined in:
lib/worte/worte.rb

Instance Method Summary collapse

Constructor Details

#initialize(language, options = {}) ⇒ Worte

Returns a new instance of Worte.



7
8
9
10
11
12
13
14
15
# File 'lib/worte/worte.rb', line 7

def initialize(language, options={})
  @language = language

  @filters = options.delete(:filters) || []
  single_filter = options.delete(:filter)
  @filters << single_filter if single_filter

  @options = options
end

Instance Method Details

#check(str) ⇒ Object



17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/worte/worte.rb', line 17

def check(str)
  @filters.each do |filter|
    str = filter.filter(str)
  end
  tokens = Tokenizer.new.tokenize(str)
  FFI::Aspell::Speller.open(@language, @options) do |speller|
    tokens.each do |token|
      token.correct = speller.correct?(token.word)
    end
  end
  tokens
end