class NumbersAndWords::Strategies::FiguresConverter::Options::Proxy

Attributes

options[RW]
strategy[RW]

Public Class Methods

new(strategy, options) click to toggle source
# File lib/numbers_and_words/strategies/figures_converter/options.rb, line 22
def initialize(strategy, options)
  @strategy = strategy
  @options = options
end

Public Instance Methods

method_missing(method_name, *args, &block) click to toggle source
Calls superclass method
# File lib/numbers_and_words/strategies/figures_converter/options.rb, line 27
def method_missing(method_name, *args, &block)
  method = Object.const_get(proxy_class_name(method_name))

  if method
    method.new(self, args, block)
  else
    super
  end
rescue NameError
  nil
end
respond_to_missing?(method_name, include_private: false) click to toggle source
Calls superclass method
# File lib/numbers_and_words/strategies/figures_converter/options.rb, line 39
def respond_to_missing?(method_name, include_private: false)
  Object.const_get(proxy_class_name(method_name)) || super
end

Private Instance Methods

module_name() click to toggle source
# File lib/numbers_and_words/strategies/figures_converter/options.rb, line 49
def module_name
  self.class.name.split('::')[0..-2].join '::'
end
proxy_class_name(method_name) click to toggle source
# File lib/numbers_and_words/strategies/figures_converter/options.rb, line 45
def proxy_class_name(method_name)
  "#{module_name}::#{I18n.language_class_name}::#{method_name.to_s.split('_').collect(&:capitalize).join}"
end