class GroongaClientModel::Schema::Table

Public Class Methods

new(raw_schema, raw_table) click to toggle source
# File lib/groonga_client_model/schema.rb, line 54
def initialize(raw_schema, raw_table)
  @raw_schema = raw_schema
  @raw_table = raw_table
end

Public Instance Methods

columns() click to toggle source
# File lib/groonga_client_model/schema.rb, line 63
def columns
  raw_columns = {}
  raw_columns["_id"] = create_pseudo_column("_id", {"name" => "UInt32"})
  key_type = @raw_table.key_type
  if key_type
    raw_columns["_key"] = create_pseudo_column("_key", key_type)
  end
  Columns.new(@raw_schema, @raw_table.columns.merge(raw_columns))
end
name() click to toggle source
# File lib/groonga_client_model/schema.rb, line 59
def name
  @raw_table.name
end
normalizer() click to toggle source
# File lib/groonga_client_model/schema.rb, line 77
def normalizer
  @raw_table.normalizer
end
tokenizer() click to toggle source
# File lib/groonga_client_model/schema.rb, line 73
def tokenizer
  @raw_table.tokenizer
end

Private Instance Methods

create_pseudo_column(name, value_type) click to toggle source
# File lib/groonga_client_model/schema.rb, line 82
def create_pseudo_column(name, value_type)
  raw_column = {
    "name" => name,
    "indexes" => [],
    "value_type" => value_type,
  }
  Groonga::Client::Response::Schema::Column.new(@raw_schema, raw_column)
end