module Sinatra::Thumbnails::Settings

Public Instance Methods

method_missing(name, *args) click to toggle source
# File lib/sinatra/thumbnails.rb, line 6
def method_missing(name, *args)
  if (name.to_s =~ /=$/)
    key = name.to_s[0..-2].to_sym
    raise NoMethodError unless self[key]
    raise ArgumentError if args.length != 1
    Thumbnails::Settings.send(:define_method, name) do |val|
      self[key] = val
    end
    self.send(args[0])
  elsif args.length == 0
    raise NoMethodError unless self[name]
    Thumbnails::Settings.send(:define_method, name) do
      self[name]
    end
    self.send(name)
  else
    raise ArgumentError
  end
end