Esempio n. 1
0
void AbstractTable::copyValueFrom(const c_atable_ptr_t& source, const size_t src_col, const size_t src_row, const size_t dst_col, const size_t dst_row) {

  switch (source->typeOfColumn(src_col)) {
  case IntegerType:
  case IntegerTypeDelta:
  case IntegerTypeDeltaConcurrent:
    copyValueFrom<hyrise_int_t>(source, src_col, src_row, dst_col, dst_row);
    break;
  case IntegerNoDictType:
    copyValueFrom<hyrise_int32_t>(source, src_col, src_row, dst_col, dst_row);
    break;
  case FloatType:
  case FloatTypeDelta:
  case FloatTypeDeltaConcurrent:
  case FloatNoDictType:
    copyValueFrom<hyrise_float_t>(source, src_col, src_row, dst_col, dst_row);
    break;
  case StringType:
  case StringTypeDelta:
  case StringTypeDeltaConcurrent:
    copyValueFrom<hyrise_string_t>(source, src_col, src_row, dst_col, dst_row);
    break;
  }
}