Class: MagicData

Inherits:
Object
  • Object
show all
Defined in:
lib/magic_data/magic_data.rb

Class Method Summary collapse

Class Method Details

.get(key) ⇒ Object



23
24
25
# File 'lib/magic_data/magic_data.rb', line 23

def get(key)
  @saved["latest_#{key}"]= @magic[key].call
end

.get_latest(key) ⇒ Object



27
28
29
# File 'lib/magic_data/magic_data.rb', line 27

def get_latest(key)
  @saved["latest_#{key}"]
end

.process(fields, diff_only = false) ⇒ Object



10
11
12
13
14
15
16
17
# File 'lib/magic_data/magic_data.rb', line 10

def process(fields, diff_only = false)
  modified = {}
  fields.each do |key, value|
    @saved["latest_#{value}"]= modified[key] = @magic[value].call if @magic.key?(value)
    modified[key] = @saved[value] if @saved.key?(value)
  end
  diff_only ? modified : fields.merge(modified)
end

.set(key, value = nil, &block) ⇒ Object



19
20
21
# File 'lib/magic_data/magic_data.rb', line 19

def set(key, value = nil, &block)
  @magic[key] = block_given? ?  block : lambda { "#{value}" }
end