Module: FormalWear::ClassMethods

Defined in:
lib/formal_wear/class_methods.rb

Instance Method Summary collapse

Instance Method Details

#create_accessors(keys) ⇒ Object



3
4
5
# File 'lib/formal_wear/class_methods.rb', line 3

def create_accessors(keys)
  keys.each { |k| self.send(:attr_accessor, k) unless method_defined?(k) }
end

#required_keys(opts) ⇒ Object



14
15
16
# File 'lib/formal_wear/class_methods.rb', line 14

def required_keys(opts)
  opts[:type] == :select ? REQUIRED_KEYS + [:select_options] : REQUIRED_KEYS
end

#validate_attrs!(attrs) ⇒ Object



7
8
9
10
11
12
# File 'lib/formal_wear/class_methods.rb', line 7

def validate_attrs!(attrs)
  attrs.each do |a, opts|
    opts.assert_valid_keys(*ALLOWED_KEYS)
    opts.assert_required_keys(*required_keys(opts))
  end
end