dbms: removed IColumn::clear function [#CONV-7486].

This commit is contained in:
Alexey Milovidov 2013-05-03 03:23:41 +00:00
parent 3693481bb7
commit 81418b287e
9 changed files with 3 additions and 40 deletions

View File

@ -110,14 +110,6 @@ public:
}
}
void clear()
{
for (size_t i = 0, s = data.size(); i < s; ++i)
func->destroy(data[i]);
data.clear();
}
void replicate(const Offsets_t & offsets)
{
throw Exception("Method replicate is not supported for ColumnAggregateFunction.", ErrorCodes::NOT_IMPLEMENTED);

View File

@ -28,9 +28,8 @@ public:
/** Создать пустой столбец массивов, с типом значений, как в столбце nested_column */
ColumnArray(ColumnPtr nested_column)
: data(nested_column), offsets(new ColumnOffsets_t)
: data(nested_column->cloneEmpty()), offsets(new ColumnOffsets_t)
{
data->clear();
}
std::string getName() const { return "ColumnArray(" + data->getName() + ")"; }
@ -136,12 +135,6 @@ public:
getOffsets().push_back(getOffsets().size() == 0 ? 1 : (getOffsets().back() + 1));
}
void clear()
{
data->clear();
getOffsets().clear();
}
void filter(const Filter & filt)
{
size_t size = getOffsets().size();

View File

@ -44,7 +44,6 @@ public:
Field operator[](size_t n) const { return typename NearestFieldType<T>::Type(data); }
void get(size_t n, Field & res) const { res = typename NearestFieldType<T>::Type(data); }
void cut(size_t start, size_t length) { s = length; }
void clear() { s = 0; }
void insert(const Field & x)
{

View File

@ -21,9 +21,8 @@ class ColumnFixedArray : public IColumn
public:
/** Создать пустой столбец массивов фиксированного размера n, со типом значений, как в столбце nested_column */
ColumnFixedArray(ColumnPtr nested_column, size_t n_)
: data(nested_column), n(n_)
: data(nested_column->cloneEmpty()), n(n_)
{
clear();
}
std::string getName() const { return "ColumnFixedArray(" + data->getName() + ")"; }
@ -98,11 +97,6 @@ public:
data->insertDefault();
}
void clear()
{
data->clear();
}
/** Более эффективные методы манипуляции */
IColumn & getData()
{

View File

@ -22,7 +22,6 @@ public:
Field operator[](size_t n) const { throw Exception("Cannot get value from ColumnSet", ErrorCodes::NOT_IMPLEMENTED); }
void get(size_t n, Field & res) const { throw Exception("Cannot get value from ColumnSet", ErrorCodes::NOT_IMPLEMENTED); };
void cut(size_t start, size_t length) { s = length; }
void clear() { s = 0; data = NULL; }
void insert(const Field & x) { throw Exception("Cannot insert element into ColumnSet", ErrorCodes::NOT_IMPLEMENTED); }
void insertDefault() { ++s; }
size_t byteSize() const { return 0; }

View File

@ -160,12 +160,6 @@ public:
(*it)->reserve(n);
}
void clear()
{
for (Columns::iterator it = columns.begin(); it != columns.end(); ++it)
(*it)->clear();
}
size_t byteSize() const
{
size_t res = 0;

View File

@ -72,11 +72,6 @@ public:
data.push_back(T());
}
void clear()
{
data.clear();
}
void filter(const Filter & filt)
{
size_t size = data.size();

View File

@ -144,9 +144,6 @@ public:
typedef std::vector<Offset_t> Offsets_t;
virtual void replicate(const Offsets_t & offsets) = 0;
/** Очистить */
virtual void clear() = 0;
/** Если возможно - зарезервировать место для указанного количества элементов. Если невозможно или не поддерживается - ничего не делать.
* Функция влияет только на производительность.
*/

View File

@ -29,7 +29,7 @@ struct ColumnWithNameAndType
ColumnWithNameAndType res;
res.name = name;
res.type = type;
res.type = type->clone();
if (column)
res.column = column->cloneEmpty();