Class: ActiveModel::Serializer::Config

Inherits:
Object
  • Object
show all
Defined in:
lib/active_model/serializer/config.rb

Instance Method Summary collapse

Constructor Details

#initialize(data = {}) ⇒ Config

Returns a new instance of Config.



4
5
6
# File 'lib/active_model/serializer/config.rb', line 4

def initialize(data = {})
  @data = data
end

Dynamic Method Handling

This class handles dynamic methods through the method_missing method

#method_missing(name, *args) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
# File 'lib/active_model/serializer/config.rb', line 16

def method_missing(name, *args)
  name = name.to_s
  return @data[name] if @data.include?(name)
  match = name.match(/\A(.*?)([?=]?)\Z/)
  case match[2]
  when "="
    @data[match[1]] = args.first
  when "?"
    !!@data[match[1]]
  end
end

Instance Method Details

#clearObject



12
13
14
# File 'lib/active_model/serializer/config.rb', line 12

def clear
  @data.clear
end

#each(&block) ⇒ Object



8
9
10
# File 'lib/active_model/serializer/config.rb', line 8

def each(&block)
  @data.each(&block)
end