Sha256: ca0145a7866bebbafd95317505b49e58c96fd3e13a513c1c1d1fdc1cd4b5f07f
Contents?: true
Size: 703 Bytes
Versions: 4
Compression:
Stored size: 703 Bytes
Contents
module Tableview class TV def call(template) source = template.source start, ending = /^\s*/, /\s+(.+?)(?= unless| if| do|\{|#|$)/ source.gsub!(/#{start}\+#{ending}/, 'table.column(\1)') source.gsub!(/#{start}\=>#{ending}/, 'table.table_for(\1)') source.gsub!(/#{start}\=#{ending}/, 'table.generate_subtable_for(\1)') source.gsub!(/#{start}\*#{ending}/, 'table.config(\1)') %{ format = Tableview::Helper::Format.new(params) tv = Tableview::ViewHandler.dsl do |table| #{source} end output = Tableview::output_class(params[:format]).new output.process(tv) output.to_s } end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
tableview-0.3.3 | lib/tableview/tv.rb |
tableview-0.3.2 | lib/tableview/tv.rb |
tableview-0.3.1 | lib/tableview/tv.rb |
tableview-0.3.0 | lib/tableview/tv.rb |