No release in over 3 years
Low commit activity in last 3 years
Creates an object from a csv row according to yml-file with mapping rules
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

Installation

Install a gem

gem 'declarative_mapper'
bundle install

or

gem install declarative_mapper

Usage

require 'declarative_mapper`
require 'csv'
require 'yaml'

require_relative 'lib/declarative_mapper'

Dir["reliable/**/*.rb"].each { |file| require_relative file }

csv_path = "#{__dir__}/reliable/accounts.csv"
csv_table = CSV.parse(File.read(csv_path), headers: true)
csv_row = csv_table.first

yml_path = "#{__dir__}/reliable/customers.yml"
yml_content = YAML.load_file(yml_path).deep_symbolize_keys

mapper_methods = Reliable::MapperMethods::Customers

customer_attrs = DeclarativeMapper.convert(mapper_methods, yml_content[:mapping], csv_row)

puts customer_attrs.inspect