module GenericViewMapper::Import::DSL
Public Instance Methods
from_json(source)
click to toggle source
# File lib/generic_view_mapper/view/import.rb, line 17 def from_json(source) Class.new(self) { json(source) } end
from_yaml(source)
click to toggle source
# File lib/generic_view_mapper/view/import.rb, line 25 def from_yaml(source) Class.new(self) { yaml(source) } end
import(hash)
click to toggle source
# File lib/generic_view_mapper/view/import.rb, line 29 def import(hash) hash.each do |(k, v)| case v when Hash attribute(v[:name], v) when Array section(k) { v.each { |f| attribute(f[:name], f) } } end end end
json(source)
click to toggle source
# File lib/generic_view_mapper/view/import.rb, line 13 def json(source) import(MultiJson.decode(source, symbolize_keys: true)) end
yaml(source)
click to toggle source
# File lib/generic_view_mapper/view/import.rb, line 21 def yaml(source) import(YAML.safe_load(source).deep_symbolize_keys) end