|
| | SegmentedArray () noexcept(std::is_nothrow_default_constructible< MemManager >::value) |
| |
| | SegmentedArray (MemManager memManager) noexcept |
| |
| | SegmentedArray (size_t count, MemManager memManager=MemManager()) |
| |
| | SegmentedArray (size_t count, const Item &item, MemManager memManager=MemManager()) |
| |
| template<typename ArgIterator , typename ArgSentinel , typename = decltype(*std::declval<ArgIterator>())> |
| | SegmentedArray (ArgIterator begin, ArgSentinel end, MemManager memManager=MemManager()) |
| |
| | SegmentedArray (std::initializer_list< Item > items) |
| |
| | SegmentedArray (std::initializer_list< Item > items, MemManager memManager) |
| |
| | SegmentedArray (SegmentedArray &&array) noexcept |
| |
| | SegmentedArray (const SegmentedArray &array) |
| |
| | SegmentedArray (const SegmentedArray &array, bool shrink) |
| |
| | SegmentedArray (const SegmentedArray &array, MemManager memManager) |
| |
| | ~SegmentedArray () noexcept |
| |
| SegmentedArray & | operator= (SegmentedArray &&array) noexcept |
| |
| SegmentedArray & | operator= (const SegmentedArray &array) |
| |
| void | Swap (SegmentedArray &array) noexcept |
| |
| ConstIterator | GetBegin () const noexcept |
| |
| Iterator | GetBegin () noexcept |
| |
| ConstIterator | GetEnd () const noexcept |
| |
| Iterator | GetEnd () noexcept |
| |
| const MemManager & | GetMemManager () const noexcept |
| |
| MemManager & | GetMemManager () noexcept |
| |
| size_t | GetCount () const noexcept |
| |
| template<typename ItemMultiCreator > |
| void | SetCountCrt (size_t count, const ItemMultiCreator &itemMultiCreator) |
| |
| void | SetCount (size_t count) |
| |
| void | SetCount (size_t count, const Item &item) |
| |
| bool | IsEmpty () const noexcept |
| |
| void | Clear (bool shrink=false) noexcept |
| |
| size_t | GetCapacity () const noexcept |
| |
| void | Reserve (size_t capacity) |
| |
| void | Shrink () noexcept |
| |
| void | Shrink (size_t capacity) noexcept |
| |
| const Item & | operator[] (size_t index) const |
| |
| Item & | operator[] (size_t index) |
| |
| const Item & | GetBackItem () const |
| |
| Item & | GetBackItem () |
| |
| template<typename ItemCreator > |
| void | AddBackNogrowCrt (ItemCreator &&itemCreator) |
| |
| template<typename... ItemArgs> |
| void | AddBackNogrowVar (ItemArgs &&... itemArgs) |
| |
| void | AddBackNogrow (Item &&item) |
| |
| void | AddBackNogrow (const Item &item) |
| |
| template<typename ItemCreator > |
| void | AddBackCrt (ItemCreator &&itemCreator) |
| |
| template<typename... ItemArgs> |
| void | AddBackVar (ItemArgs &&... itemArgs) |
| |
| void | AddBack (Item &&item) |
| |
| void | AddBack (const Item &item) |
| |
| template<typename ItemCreator > |
| void | InsertCrt (size_t index, ItemCreator &&itemCreator) |
| |
| template<typename... ItemArgs> |
| void | InsertVar (size_t index, ItemArgs &&... itemArgs) |
| |
| void | Insert (size_t index, Item &&item) |
| |
| void | Insert (size_t index, const Item &item) |
| |
| void | Insert (size_t index, size_t count, const Item &item) |
| |
| template<typename ArgIterator , typename ArgSentinel , typename = decltype(*std::declval<ArgIterator>())> |
| void | Insert (size_t index, ArgIterator begin, ArgSentinel end) |
| |
| void | Insert (size_t index, std::initializer_list< Item > items) |
| |
| void | RemoveBack (size_t count=1) |
| |
| void | Remove (size_t index, size_t count=1) |
| |
| template<typename ItemFilter > |
| internal::EnableIf< internal::IsInvocable< const ItemFilter &, bool, const Item & >::value, size_t > | Remove (const ItemFilter &itemFilter) |
| |
| template<typename ItemEqualComparer = std::equal_to<Item>> |
| bool | Contains (const Item &item, const ItemEqualComparer &itemEqualComp=ItemEqualComparer()) const |
| |
| template<typename ItemEqualComparer = std::equal_to<Item>> |
| bool | IsEqual (const SegmentedArray &array, const ItemEqualComparer &itemEqualComp=ItemEqualComparer()) const |
| |
template<typename TItem, typename TMemManager = MemManagerDefault, typename TItemTraits = SegmentedArrayItemTraits<TItem, TMemManager>, typename TSettings = SegmentedArraySettings<>>
class momo::SegmentedArray< TItem, TMemManager, TItemTraits, TSettings >
All SegmentedArray functions and constructors have strong exception safety, but not the following cases:
- Functions
Insert, InsertVar, InsertCrt, Remove have basic exception safety.
Swap and move operations invalidate all container iterators.