8 #ifndef COLUMNAR_CORE_VECTOR_VECTOR_COLUMN_H
9 #define COLUMNAR_CORE_VECTOR_VECTOR_COLUMN_H
20 template<ContainerIdConcept CI,
typename CT>
36 auto myinfoOuter =
info;
37 myinfoOuter.offsetName = columnBase.containerStoreName (CI::idName);
38 myinfoOuter.isOffset =
true;
39 auto myinfoInner =
info;
40 myinfoInner.offsetName = columnBase.containerStoreName (CI::idName) +
"." +
name +
".outerOffset";
41 myinfoInner.isOffset =
true;
42 info.offsetName = columnBase.containerStoreName (CI::idName) +
"." +
name +
".innerOffset";
44 columnBase.addColumn (myinfoInner.offsetName,
m_outerOffsetData.get(), std::move (myinfoOuter));
48 columnBase.addColumn (columnBase.containerStoreName (CI::idName) +
"." +
name +
".data",
m_dataData.get(), std::move (
info));
76 return std::span<const ElementType> (
data +
index,
data + endIndex);},
77 std::span<const ColumnarOffsetType> (innerOffset + outerOffset[
id.getIndex()], innerOffset + outerOffset[
id.getIndex()+1]));
83 return data !=
nullptr;
95 std::unique_ptr<ColumnAccessorDataArray>
m_dataData;