CSVMapperをDSLっぽく使わない方法
単なる言語の機能を利用した言語内DSLだからなにもしないでもこんなかんじだな
require 'csvmapper' class MyCSV < CSVMapper end MyCSV.delimiter '<>' MyCSV.column :name, 0, :string MyCSV.column :hash, 1 MyCSV.column :host, 2 MyCSV.column :contact, 3, :uri MyCSV.column :genre, 4 MyCSV.column :description, 5 MyCSV.column :active_viewers, 6, :numeric MyCSV.column :total_viewers, 7, :numeric csv = MyCSV.load_file("http://temp.orz.hm/yp/index.txt") p csv
ただこれだとクラスメソッド使いまくりでなんかおかしい
メソッド名をdef_columnとか、set_delimiterにしたら多少マシになるかなぁ。