mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-09-23 02:00:49 +00:00
30 lines
619 B
C
30 lines
619 B
C
|
#ifndef DBMS_CORE_ICOLUMN_H
|
|||
|
#define DBMS_CORE_ICOLUMN_H
|
|||
|
|
|||
|
#include <DB/Core/Field.h>
|
|||
|
|
|||
|
namespace DB
|
|||
|
{
|
|||
|
|
|||
|
/** Интерфейс для хранения столбцов значений в оперативке.
|
|||
|
*/
|
|||
|
class IColumn
|
|||
|
{
|
|||
|
public:
|
|||
|
/** Количество значений в столбце */
|
|||
|
virtual size_t size() const = 0;
|
|||
|
|
|||
|
/** Получить значение n-го элемента */
|
|||
|
virtual Field operator[](size_t n) const = 0;
|
|||
|
|
|||
|
/** Удалить всё кроме диапазона элементов */
|
|||
|
virtual void cut(size_t start, size_t length) = 0;
|
|||
|
|
|||
|
virtual ~IColumn() {}
|
|||
|
};
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
#endif
|