|
| | DataTable () |
| |
| | DataTable (ColumnList &&columnList) |
| |
| | DataTable (DataTable &&table) noexcept |
| |
| | DataTable (const DataTable &table) |
| |
| template<typename RowFilter > |
| | DataTable (const DataTable &table, const RowFilter &rowFilter) |
| |
| | DataTable (const ConstSelection &selection) |
| |
| | DataTable (const Selection &selection) |
| |
| | ~DataTable () noexcept |
| |
| DataTable & | operator= (DataTable &&table) noexcept |
| |
| DataTable & | operator= (const DataTable &table) |
| |
| void | Swap (DataTable &table) noexcept |
| |
| ConstIterator | GetBegin () const noexcept |
| |
| Iterator | GetBegin () noexcept |
| |
| ConstIterator | GetEnd () const noexcept |
| |
| Iterator | GetEnd () noexcept |
| |
| const ColumnList & | GetColumnList () const noexcept |
| |
| const MemManager & | GetMemManager () const noexcept |
| |
| MemManager & | GetMemManager () noexcept |
| |
| size_t | GetCount () const noexcept |
| |
| bool | IsEmpty () const noexcept |
| |
| void | Clear () noexcept |
| |
| void | Reserve (size_t capacity) |
| |
| const ConstRowReference | operator[] (size_t rowNumber) const |
| |
| const RowReference | operator[] (size_t rowNumber) |
| |
| template<typename Item > |
| bool | ContainsColumn (const Column< Item > &column) const |
| |
| template<typename Item > |
| ConstItemBounds< Item > | GetColumnItems (const Column< Item > &column) const |
| |
| Row | NewRow () |
| |
| template<typename Item , typename ItemArg , typename... Items, typename... ItemArgs> |
| Row | NewRow (Assignment< Item, ItemArg > assign, Assignment< Items, ItemArgs >... assigns) |
| |
| Row | NewRow (typename std::conditional< std::is_void< Raw >::value, std::piecewise_construct_t, Raw >::type &&srcRaw) |
| |
| Row | NewRow (const Row &row) |
| |
| Row | NewRow (ConstRowReference rowRef) |
| |
| RowReference | Add (Row &&row) |
| |
| template<typename Item , typename ItemArg , typename... Items, typename... ItemArgs> |
| RowReference | AddRow (Assignment< Item, ItemArg > assign, Assignment< Items, ItemArgs >... assigns) |
| |
| TryResult | TryAdd (Row &&row) |
| |
| template<typename Item , typename ItemArg , typename... Items, typename... ItemArgs> |
| TryResult | TryAddRow (Assignment< Item, ItemArg > assign, Assignment< Items, ItemArgs >... assigns) |
| |
| RowReference | Insert (size_t rowNumber, Row &&row) |
| |
| template<typename Item , typename ItemArg , typename... Items, typename... ItemArgs> |
| RowReference | InsertRow (size_t rowNumber, Assignment< Item, ItemArg > assign, Assignment< Items, ItemArgs >... assigns) |
| |
| TryResult | TryInsert (size_t rowNumber, Row &&row) |
| |
| template<typename Item , typename ItemArg , typename... Items, typename... ItemArgs> |
| TryResult | TryInsertRow (size_t rowNumber, Assignment< Item, ItemArg > assign, Assignment< Items, ItemArgs >... assigns) |
| |
| RowReference | Update (size_t rowNumber, Row &&row) |
| |
| template<typename Item > |
| RowReference | Update (ConstRowReference rowRef, const Column< Item > &column, internal::Identity< Item > &&newItem) |
| |
| template<typename Item > |
| RowReference | Update (ConstRowReference rowRef, const Column< Item > &column, const internal::Identity< Item > &newItem) |
| |
| TryResult | TryUpdate (size_t rowNumber, Row &&row) |
| |
| template<typename Item > |
| TryResult | TryUpdate (ConstRowReference rowRef, const Column< Item > &column, internal::Identity< Item > &&newItem) |
| |
| template<typename Item > |
| TryResult | TryUpdate (ConstRowReference rowRef, const Column< Item > &column, const internal::Identity< Item > &newItem) |
| |
| template<typename RowIterator , typename RowSentinel > |
| void | Assign (RowIterator begin, RowSentinel end) |
| |
| template<typename RowIterator , typename RowSentinel > |
| void | Remove (RowIterator begin, RowSentinel end) |
| |
| template<typename RowFilter > |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, size_t > | Remove (const RowFilter &rowFilter) |
| |
| void | Remove (ConstRowReference rowRef) |
| |
| void | Remove (size_t rowNumber, bool keepRowOrder=true) |
| |
| Row | Extract (ConstRowReference rowRef) |
| |
| Row | Extract (size_t rowNumber, bool keepRowOrder=true) |
| |
| template<typename Item , typename... Items> |
| UniqueHashIndex | GetUniqueHashIndex (const Column< Item > &column, const Column< Items > &... columns) const |
| |
| template<typename Item , typename... Items> |
| MultiHashIndex | GetMultiHashIndex (const Column< Item > &column, const Column< Items > &... columns) const |
| |
| template<typename Item , typename... Items> |
| UniqueHashIndex | AddUniqueHashIndex (const Column< Item > &column, const Column< Items > &... columns) |
| |
| template<typename Item , typename... Items> |
| MultiHashIndex | AddMultiHashIndex (const Column< Item > &column, const Column< Items > &... columns) |
| |
| void | RemoveUniqueHashIndexes () noexcept |
| |
| void | RemoveMultiHashIndexes () noexcept |
| |
| ConstSelection | SelectEmpty () const |
| |
| Selection | SelectEmpty () |
| |
| template<typename RowFilter = EmptyRowFilter> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, ConstSelection > | Select (const RowFilter &rowFilter=RowFilter()) const |
| |
| template<typename RowFilter , typename Item , typename... Items> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, ConstSelection > | Select (const RowFilter &rowFilter, Equality< Item > equal, Equality< Items >... equals) const |
| |
| template<typename RowFilter = EmptyRowFilter, typename... Items> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, ConstSelection > | Select (Equalities< Items... > equals, const RowFilter &rowFilter=RowFilter()) const |
| |
| template<typename RowFilter = EmptyRowFilter> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, Selection > | Select (const RowFilter &rowFilter=RowFilter()) |
| |
| template<typename RowFilter , typename Item , typename... Items> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, Selection > | Select (const RowFilter &rowFilter, Equality< Item > equal, Equality< Items >... equals) |
| |
| template<typename RowFilter = EmptyRowFilter, typename... Items> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, Selection > | Select (Equalities< Items... > equals, const RowFilter &rowFilter=RowFilter()) |
| |
| template<typename RowFilter = EmptyRowFilter> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, size_t > | SelectCount (const RowFilter &rowFilter=RowFilter()) const |
| |
| template<typename RowFilter , typename Item , typename... Items> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, size_t > | SelectCount (const RowFilter &rowFilter, Equality< Item > equal, Equality< Items >... equals) const |
| |
| template<typename RowFilter = EmptyRowFilter, typename... Items> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, size_t > | SelectCount (Equalities< Items... > equals, const RowFilter &rowFilter=RowFilter()) const |
| |
| ConstRowHashPointer | FindByUniqueHash (UniqueHashIndex uniqueHashIndex, const Row &row) const |
| |
| RowHashPointer | FindByUniqueHash (UniqueHashIndex uniqueHashIndex, const Row &row) |
| |
| template<typename... Items> |
| ConstRowHashPointer | FindByUniqueHash (Equalities< Items... > equals, UniqueHashIndex uniqueHashIndex=UniqueHashIndex::empty) const |
| |
| template<typename... Items> |
| RowHashPointer | FindByUniqueHash (Equalities< Items... > equals, UniqueHashIndex uniqueHashIndex=UniqueHashIndex::empty) |
| |
| template<typename Item , typename... Items> |
| ConstRowHashPointer | FindByUniqueHash (UniqueHashIndex uniqueHashIndex, Equality< Item > equal, Equality< Items >... equals) const |
| |
| template<typename Item , typename... Items> |
| RowHashPointer | FindByUniqueHash (UniqueHashIndex uniqueHashIndex, Equality< Item > equal, Equality< Items >... equals) |
| |
| template<typename... Items> |
| ConstRowHashBounds | FindByMultiHash (Equalities< Items... > equals, MultiHashIndex multiHashIndex=MultiHashIndex::empty) const |
| |
| template<typename... Items> |
| RowHashBounds | FindByMultiHash (Equalities< Items... > equals, MultiHashIndex multiHashIndex=MultiHashIndex::empty) |
| |
| template<typename Item , typename... Items> |
| ConstRowHashBounds | FindByMultiHash (MultiHashIndex multiHashIndex, Equality< Item > equal, Equality< Items >... equals) const |
| |
| template<typename Item , typename... Items> |
| RowHashBounds | FindByMultiHash (MultiHashIndex multiHashIndex, Equality< Item > equal, Equality< Items >... equals) |
| |
| template<typename Item , typename... Items> |
| DataTable | Project (ColumnList &&resColumnList, const Column< Item > &column, const Column< Items > &... columns) const |
| |
| template<typename RowFilter , typename Item , typename... Items> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, DataTable > | Project (ColumnList &&resColumnList, const RowFilter &rowFilter, const Column< Item > &column, const Column< Items > &... columns) const |
| |
| template<typename Item , typename... Items> |
| DataTable | ProjectDistinct (ColumnList &&resColumnList, const Column< Item > &column, const Column< Items > &... columns) const |
| |
| template<typename RowFilter , typename Item , typename... Items> |
| internal::EnableIf< internal::IsInvocable< const RowFilter &, bool, ConstRowReference >::value, DataTable > | ProjectDistinct (ColumnList &&resColumnList, const RowFilter &rowFilter, const Column< Item > &column, const Column< Items > &... columns) const |
| |
| RowReference | MakeMutableReference (ConstRowReference rowRef) |
| |
template<typename TColumnList = DataColumnList<>, typename TDataTraits = DataTraits>
class momo::DataTable< TColumnList, TDataTraits >
momo::DataTable is similar to Boost.MultiIndex, but its API looks like ADO.NET DataTable.