class Cucumber::MultilineArgument::DataTable::Cells
Represents a row of cells or columns of cells
Attributes
Public Class Methods
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 521 def initialize(table, cells) @table = table @cells = cells end
Public Instance Methods
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 547 def [](index) @cells[index] end
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 526 def accept(visitor) return if Cucumber.wants_to_quit each do |cell| visitor.visit_table_cell(cell) end nil end
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 555 def dom_id "row_#{line}" end
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 559 def each(&proc) @cells.each(&proc) end
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 551 def line @cells[0].line end
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 539 def to_hash @to_hash ||= @table.cells_to_hash(self) end
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 535 def to_sexp [:row, line, *@cells.map(&:to_sexp)] end
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 543 def value(index) self[index].value end
Private Instance Methods
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 565 def index @table.index(self) end
Source
# File lib/cucumber/multiline_argument/data_table.rb, line 569 def width map { |cell| cell.value ? escape_cell(cell.value.to_s).unpack('U*').length : 0 }.max end