class TableStructure::Schema::CompositeClass

Public Class Methods

new() click to toggle source
# File lib/table_structure/schema/composite_class.rb, line 6
def initialize
  @classes = []
end

Public Instance Methods

column_builders() click to toggle source
# File lib/table_structure/schema/composite_class.rb, line 27
def column_builders
  @classes
    .map(&:column_builders)
    .reduce({}, &:merge!)
end
column_definitions() click to toggle source
# File lib/table_structure/schema/composite_class.rb, line 15
def column_definitions
  @classes
    .map(&:column_definitions)
    .flatten
end
compose(*classes) click to toggle source
# File lib/table_structure/schema/composite_class.rb, line 10
def compose(*classes)
  @classes.concat(classes.flatten.compact)
  self
end
context_builders() click to toggle source
# File lib/table_structure/schema/composite_class.rb, line 21
def context_builders
  @classes
    .map(&:context_builders)
    .reduce({}, &:merge!)
end
row_builders() click to toggle source
# File lib/table_structure/schema/composite_class.rb, line 33
def row_builders
  @classes
    .map(&:row_builders)
    .reduce({}, &:merge!)
end