class Parqueteur::ColumnCollection

Attributes

column_names[R]

Public Class Methods

new() click to toggle source
# File lib/parqueteur/column_collection.rb, line 9
def initialize
  @columns = []
  @column_names = []
  @columns_idx = {}
end

Public Instance Methods

add(column) click to toggle source
# File lib/parqueteur/column_collection.rb, line 23
def add(column)
  unless @columns_idx.key?(column.name)
    @columns_idx[column.name] = column
    @columns << column
    @column_names << column.name
  end

  true
end
arrow_schema() click to toggle source
# File lib/parqueteur/column_collection.rb, line 37
def arrow_schema
  @arrow_schema ||= Arrow::Schema.new(@columns.collect(&:to_arrow_field))
end
each(&block) click to toggle source
# File lib/parqueteur/column_collection.rb, line 19
def each(&block)
  @columns.each(&block)
end
find(name) click to toggle source
# File lib/parqueteur/column_collection.rb, line 33
def find(name)
  @columns_idx.fetch(name, nil)
end
key?(key) click to toggle source
# File lib/parqueteur/column_collection.rb, line 15
def key?(key)
  @columns_idx.key?(key)
end