Class: HoneyFormat::RowBuilder
- Inherits:
-
Object
- Object
- HoneyFormat::RowBuilder
- Defined in:
- lib/honey_format/matrix/row_builder.rb
Overview
Holds data for a single row.
Instance Method Summary collapse
-
#build(row) ⇒ Row, Object
Returns an object representing the row.
-
#initialize(columns, builder: nil, type_map: {}) ⇒ RowBuilder
constructor
Returns a new instance of RowBuilder.
Constructor Details
#initialize(columns, builder: nil, type_map: {}) ⇒ RowBuilder
Returns a new instance of RowBuilder.
16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/honey_format/matrix/row_builder.rb', line 16 def initialize(columns, builder: nil, type_map: {}) if columns.empty? err_msg = 'Expected array with at least one element, but was empty.' raise(Errors::EmptyRowColumnsError, err_msg) end @type_map = type_map @converter = HoneyFormat.converter_registry @row_klass = Row.new(*columns) @builder = builder @columns = columns end |
Instance Method Details
#build(row) ⇒ Row, Object
Returns an object representing the row.
38 39 40 41 42 43 44 |
# File 'lib/honey_format/matrix/row_builder.rb', line 38 def build(row) build_row!(row) rescue ArgumentError => e raise unless e. == 'struct size differs' raise_invalid_row_length!(e, row) end |