Stroika Library 3.0d16
 
Loading...
Searching...
No Matches
StdVectorSupport.inl
1/*
2 * Copyright(c) Sophist Solutions, Inc. 1990-2025. All rights reserved
3 */
6
8
9 /*
10 ********************************************************************************
11 ********* StdVectorBasedContainer<THIS_CONTAINER,BASE_CONTAINER> ***************
12 ********************************************************************************
13 */
14 template <typename THIS_CONTAINER, typename BASE_CONTAINER>
15 template <typename... ARGS>
16 inline StdVectorBasedContainer<THIS_CONTAINER, BASE_CONTAINER>::StdVectorBasedContainer (ARGS... args)
17 : BASE_CONTAINER{forward<ARGS> (args)...}
18 {
19 }
20 template <typename THIS_CONTAINER, typename BASE_CONTAINER>
21 inline size_t StdVectorBasedContainer<THIS_CONTAINER, BASE_CONTAINER>::capacity () const
22 {
23 using _SafeReadRepAccessor = typename THIS_CONTAINER ::template _SafeReadRepAccessor<typename THIS_CONTAINER::Rep_>;
24 return _SafeReadRepAccessor{this}._ConstGetRep ().fData_.capacity ();
25 }
26 template <typename THIS_CONTAINER, typename BASE_CONTAINER>
28 {
29 using _SafeReadWriteRepAccessor = typename THIS_CONTAINER ::template _SafeReadWriteRepAccessor<typename THIS_CONTAINER::Rep_>;
30 return _SafeReadWriteRepAccessor{this}._GetWriteableRep ().fData_.reserve (slotsAlloced);
31 }
32 template <typename THIS_CONTAINER, typename BASE_CONTAINER>
34 {
35 using _SafeReadWriteRepAccessor = typename THIS_CONTAINER ::template _SafeReadWriteRepAccessor<typename THIS_CONTAINER::Rep_>;
36 return _SafeReadWriteRepAccessor{this}._GetWriteableRep ().fData_.shrink_to_fit ();
37 }
38
39}
StdVectorBasedContainer is a Stroika implementation detail, but its public methods are fair game and ...
nonvirtual void shrink_to_fit()
Reduce the space used to store the container contents.