diff options
Diffstat (limited to 'src/structures/pl_list.hpp')
-rw-r--r-- | src/structures/pl_list.hpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/structures/pl_list.hpp b/src/structures/pl_list.hpp index 327e259..0cbd233 100644 --- a/src/structures/pl_list.hpp +++ b/src/structures/pl_list.hpp @@ -73,6 +73,9 @@ public: pl_list(std::size_t capacity = 0); ~pl_list(); + struct external_storage_policy {}; + pl_list(pl_cell<T> *cells, std::size_t ncells, external_storage_policy); + pl_list(const pl_list &other); pl_list &operator=(const pl_list &other); @@ -117,8 +120,10 @@ private: pl_cell<T> *free_; // value-less cell which terminates the linked list pl_basic_cell<T> endcell_; + // whether cell storage is allocated + bool cells_allocd_; - void initialize(std::size_t capacity); + void initialize(std::size_t capacity, pl_cell<T> *extcells = NULL); pl_cell<T> *allocate(pl_cell<T> *pos); void deallocate(pl_cell<T> *cell); }; |