dbms: tiny modification [#METR-2944].

This commit is contained in:
Alexey Milovidov 2014-01-08 16:23:31 +00:00
parent 22fda035cc
commit 16ed91c728
4 changed files with 4 additions and 19 deletions

View File

@ -38,9 +38,9 @@ public:
/// нужны, чтобы правильно скопировались индексы
Block(const Block & other);
// Block(Block && other) noexcept; TODO: включить, когда для сборки будет использоваться C++11.
Block(Block && other) = default;
Block & operator= (const Block & other);
// Block & operator= (Block && other) noexcept;
Block & operator= (Block && other) = default;
/// вставить столбец в заданную позицию
void insert(size_t position, const ColumnWithNameAndType & elem);
@ -106,7 +106,6 @@ public:
void clear();
void swap(Block & other);
Block & ref() { return *this; } /// Используется, чтобы сделать swap с rvalue. Вместо Block tmp = f(); block.swap(tmp); можно написать block.swap(f.ref());
};
typedef std::vector<Block> Blocks;

View File

@ -18,11 +18,6 @@ Block::Block(const Block & other)
*this = other;
}
/*Block::Block(Block && other) noexcept
{
*this = other;
}*/
void Block::addDefaults(NamesAndTypesListPtr required_columns)
{
@ -56,15 +51,6 @@ Block & Block::operator= (const Block & other)
return *this;
}
/*Block & Block::operator= (Block && other) noexcept
{
data = std::move(other.data);
index_by_position = std::move(other.index_by_position);
index_by_name = std::move(other.index_by_name);
return *this;
}*/
void Block::rebuildIndexByPosition()
{

View File

@ -27,7 +27,7 @@ Block FilterBlockInputStream::readImpl()
/// Пока не встретится блок, после фильтрации которого что-нибудь останется, или поток не закончится.
while (1)
{
res.swap(children.back()->read().ref()); /// Трюк, чтобы работало RVO.
res = children.back()->read();
if (!res)
return res;

View File

@ -176,7 +176,7 @@ Block IProfilingBlockInputStream::read()
return res;
info.work_stopwatch.start();
res.swap(readImpl().ref()); /// Трюк, чтобы работало RVO.
res = readImpl();
info.work_stopwatch.stop();
/* if (res)