class Smartdict::Translator
Attributes
default_opts[R]
Public Class Methods
new(default_opts = {})
click to toggle source
# File lib/smartdict/translator.rb, line 11 def initialize(default_opts = {}) @default_opts = default_opts @middleware_classes = [Base, DriverConfiguration, LanguageDetector] @middleware = build_middleware end
Public Instance Methods
translate(word, opts = {})
click to toggle source
# File lib/smartdict/translator.rb, line 17 def translate(word, opts = {}) opts.reverse_merge!(default_opts) @middleware.last.call(word, opts) end
Private Instance Methods
build_middleware()
click to toggle source
# File lib/smartdict/translator.rb, line 25 def build_middleware hooks = [] @middleware_classes.each do |klass| hooks << klass.new(hooks.last) end hooks end