mirror of
https://github.com/boostorg/container.git
synced 2025-08-03 22:44:26 +02:00
Propagate the potentially "void" allocator to the underlying vector to shorten symbol name lengths.
This commit is contained in:
@@ -469,21 +469,21 @@ class flat_tree_value_compare
|
||||
|
||||
///////////////////////////////////////
|
||||
//
|
||||
// select_container_type
|
||||
// select_flat_tree_container_type
|
||||
//
|
||||
///////////////////////////////////////
|
||||
template < class Value, class AllocatorOrContainer
|
||||
, bool = boost::container::dtl::is_container<AllocatorOrContainer>::value
|
||||
>
|
||||
struct select_container_type
|
||||
struct select_flat_tree_container_type
|
||||
{
|
||||
typedef AllocatorOrContainer type;
|
||||
};
|
||||
|
||||
template <class Value, class AllocatorOrContainer>
|
||||
struct select_container_type<Value, AllocatorOrContainer, false>
|
||||
template <class Value, class AllocatorOrVoid>
|
||||
struct select_flat_tree_container_type<Value, AllocatorOrVoid, false>
|
||||
{
|
||||
typedef boost::container::vector<Value, typename real_allocator<Value, AllocatorOrContainer>::type> type;
|
||||
typedef boost::container::vector<Value, AllocatorOrVoid> type;
|
||||
};
|
||||
|
||||
|
||||
@@ -497,7 +497,7 @@ template <class Value, class KeyOfValue,
|
||||
class flat_tree
|
||||
{
|
||||
public:
|
||||
typedef typename select_container_type<Value, AllocatorOrContainer>::type container_type;
|
||||
typedef typename select_flat_tree_container_type<Value, AllocatorOrContainer>::type container_type;
|
||||
typedef container_type sequence_type; //For backwards compatibility
|
||||
|
||||
private:
|
||||
|
Reference in New Issue
Block a user