17 selectedPositionsBuffer = std::make_unique<sel_t[]>(capacity);
33 void setToFiltered() { selectedPositions = selectedPositionsBuffer.get(); }
35 KU_ASSERT(size <= capacity && selectedPositionsBuffer);
36 selectedPositions = selectedPositionsBuffer.get();
41 return std::span<sel_t>(selectedPositionsBuffer.get(), capacity);
44 return std::span<sel_t>(selectedPositions, selectedSize);
54 selectedSize += increment;
59 return selectedPositions[index];
63 return selectedPositions[index];
69 std::unique_ptr<sel_t[]> selectedPositionsBuffer;
70 sel_t* selectedPositions;
#define KUZU_API
Definition api.h:25
#define KU_ASSERT(condition)
Definition assert.h:19
Definition sel_vector.h:12
void setToUnfiltered()
Definition sel_vector.h:25
std::span< sel_t > getSelectedPositions() const
Definition sel_vector.h:43
void setToFiltered()
Definition sel_vector.h:33
SelectionVector()
Definition sel_vector.h:21
sel_t & operator[](sel_t index)
Definition sel_vector.h:61
static KUZU_API const sel_t INCREMENTAL_SELECTED_POS[DEFAULT_VECTOR_CAPACITY]
Definition sel_vector.h:14
void setToUnfiltered(sel_t size)
Definition sel_vector.h:26
bool isUnfiltered() const
Definition sel_vector.h:23
void setToFiltered(sel_t size)
Definition sel_vector.h:34
sel_t getSelSize() const
Definition sel_vector.h:47
void incrementSelSize(sel_t increment=1)
Definition sel_vector.h:52
SelectionVector(sel_t capacity)
Definition sel_vector.h:16
sel_t operator[](sel_t index) const
Definition sel_vector.h:57
void setSelSize(sel_t size)
Definition sel_vector.h:48
std::span< sel_t > getMultableBuffer()
Definition sel_vector.h:40
constexpr uint64_t DEFAULT_VECTOR_CAPACITY
Definition constants.h:12
uint64_t sel_t
Definition types.h:24
Definition alter_type.h:5