Module: SudoAttributes::Private

Defined in:
lib/sudo_attributes.rb

Class Method Summary collapse

Class Method Details

.set_attributes(klass, attrs, type) ⇒ Object



15
16
17
18
19
20
21
22
23
24
# File 'lib/sudo_attributes.rb', line 15

def self.set_attributes(klass, attrs, type)
  unless attrs.empty?
    raise "Invalid argument passed to has_sudo_attributes" unless attrs.all? {|a| a.is_a? Symbol }

    klass.send("attr_#{type}", *attrs)
  end

  klass.extend SudoAttributes::ClassMethods
  klass.send :include, SudoAttributes::InstanceMethods
end