class Proforma::Modeling::Pane

Think of a pane like a pivoted table. It has columns but not in the same respect as a table's columns. For a pane, it makes up a vertical section. Each column (section) then has a number of lines which holds the label:value pairs that facilitates data rendering.

Attributes

columns[W]

Public Class Methods

new(columns: []) click to toggle source
# File lib/proforma/modeling/pane.rb, line 25
def initialize(columns: [])
  @columns = Column.array(columns)
end

Public Instance Methods

columns() click to toggle source
# File lib/proforma/modeling/pane.rb, line 29
def columns
  Array(@columns)
end
compile(data, evaluator) click to toggle source
# File lib/proforma/modeling/pane.rb, line 33
def compile(data, evaluator)
  compiled_columns = columns.map { |column| column.compile(data, evaluator) }

  self.class.new(columns: compiled_columns)
end