Sha256: ea46ea0ff219dfd56f0dc634ad30630c0db3f5e1894f67fc4c7fb9790792fe20
Contents?: true
Size: 467 Bytes
Versions: 2
Compression:
Stored size: 467 Bytes
Contents
module FormalWear module ClassMethods def create_accessors(keys) keys.each { |k| self.send(:attr_accessor, k) unless method_defined?(k) } end def validate_attrs!(attrs) attrs.each do |a, opts| opts.assert_valid_keys(*ALLOWED_KEYS) opts.assert_required_keys(*required_keys(opts)) end end def required_keys(opts) opts[:type] == :select ? REQUIRED_KEYS + [:select_options] : REQUIRED_KEYS end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
formal_wear-1.0.0 | lib/formal_wear/class_methods.rb |
formal_wear-0.3.0 | lib/formal_wear/class_methods.rb |