Module: Contextuable::ClassMethods

Defined in:
lib/contextuable/class_methods.rb

Instance Method Summary collapse

Instance Method Details

#aliases(*names) ⇒ Object



24
25
26
27
# File 'lib/contextuable/class_methods.rb', line 24

def aliases(*names)
  settings[:equivalents] ||= []
  settings[:equivalents] << names.map(&:to_sym)
end

#defaults(hash) ⇒ Object



29
30
31
# File 'lib/contextuable/class_methods.rb', line 29

def defaults(hash)
  settings[:defaults] = hash
end

#ensure_presence(*names) ⇒ Object



20
21
22
# File 'lib/contextuable/class_methods.rb', line 20

def ensure_presence(*names)
  settings[:presence_required] = names.map(&:to_sym)
end

#no_method_error(input = true) ⇒ Object



12
13
14
# File 'lib/contextuable/class_methods.rb', line 12

def no_method_error(input = true)
  settings[:no_method_error] = input
end

#open_struct_behavior(input = true) ⇒ Object



16
17
18
# File 'lib/contextuable/class_methods.rb', line 16

def open_struct_behavior(input = true)
  settings[:no_method_error] = !input
end

#permit(*names) ⇒ Object



33
34
35
# File 'lib/contextuable/class_methods.rb', line 33

def permit(*names)
  settings[:permitted] = names.map(&:to_sym)
end

#required(*names) ⇒ Object



8
9
10
# File 'lib/contextuable/class_methods.rb', line 8

def required(*names)
  settings[:required] = names.map(&:to_sym)
end

#settingsObject



4
5
6
# File 'lib/contextuable/class_methods.rb', line 4

def settings
  @settings ||= {}
end