Use namespace dtl instead of container_detail to avoid excessively long symbol names.

This commit is contained in:
Ion Gaztañaga
2017-11-07 00:51:46 +01:00
parent 61d965f1a0
commit fa2494631a
104 changed files with 1395 additions and 1395 deletions
+77 -77
View File
@@ -70,7 +70,7 @@ namespace boost {
namespace container {
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
namespace container_detail {
namespace dtl {
// ------------------------------------------------------------
// Class basic_string_base.
@@ -170,8 +170,8 @@ class basic_string_base
//This type has the same alignment and size as long_t but it's POD
//so, unlike long_t, it can be placed in a union
typedef typename container_detail::aligned_storage
<sizeof(long_t), container_detail::alignment_of<long_t>::value>::type long_raw_t;
typedef typename dtl::aligned_storage
<sizeof(long_t), dtl::alignment_of<long_t>::value>::type long_raw_t;
protected:
static const size_type MinInternalBufferChars = 8;
@@ -274,8 +274,8 @@ class basic_string_base
protected:
typedef container_detail::integral_constant<unsigned,
boost::container::container_detail::version<Allocator>::value> alloc_version;
typedef dtl::integral_constant<unsigned,
boost::container::dtl::version<Allocator>::value> alloc_version;
pointer allocation_command(allocation_type command,
size_type limit_size,
@@ -286,7 +286,7 @@ class basic_string_base
reuse = 0;
command &= ~(expand_fwd | expand_bwd);
}
return container_detail::allocator_version_traits<Allocator>::allocation_command
return dtl::allocator_version_traits<Allocator>::allocation_command
(this->alloc(), command, limit_size, prefer_in_recvd_out_size, reuse);
}
@@ -460,7 +460,7 @@ class basic_string_base
}
};
} //namespace container_detail {
} //namespace dtl {
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
@@ -502,13 +502,13 @@ template <class CharT, class Traits = std::char_traits<CharT>, class Allocator =
template <class CharT, class Traits, class Allocator>
#endif
class basic_string
: private container_detail::basic_string_base<Allocator>
: private dtl::basic_string_base<Allocator>
{
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
private:
typedef allocator_traits<Allocator> allocator_traits_type;
BOOST_COPYABLE_AND_MOVABLE(basic_string)
typedef container_detail::basic_string_base<Allocator> base_t;
typedef dtl::basic_string_base<Allocator> base_t;
static const typename base_t::size_type InternalBufferChars = base_t::InternalBufferChars;
protected:
@@ -598,7 +598,7 @@ class basic_string
//! <b>Effects</b>: Default constructs a basic_string.
//!
//! <b>Throws</b>: If allocator_type's default constructor throws.
basic_string() BOOST_NOEXCEPT_IF(container_detail::is_nothrow_default_constructible<Allocator>::value)
basic_string() BOOST_NOEXCEPT_IF(dtl::is_nothrow_default_constructible<Allocator>::value)
: base_t()
{ this->priv_terminate_string(); }
@@ -689,7 +689,7 @@ class basic_string
throw_out_of_range("basic_string::basic_string out of range position");
else
this->assign
(s.begin() + pos, s.begin() + pos + container_detail::min_value(n, s.size() - pos));
(s.begin() + pos, s.begin() + pos + dtl::min_value(n, s.size() - pos));
}
//! <b>Effects</b>: Constructs a basic_string taking the allocator as parameter,
@@ -702,7 +702,7 @@ class basic_string
throw_out_of_range("basic_string::basic_string out of range position");
else
this->assign
(s.begin() + pos, s.begin() + pos + container_detail::min_value(n, s.size() - pos));
(s.begin() + pos, s.begin() + pos + dtl::min_value(n, s.size() - pos));
}
//! <b>Effects</b>: Constructs a basic_string taking a default-constructed allocator,
@@ -827,7 +827,7 @@ class basic_string
if (&x != this){
allocator_type &this_alloc = this->alloc();
const allocator_type &x_alloc = x.alloc();
container_detail::bool_<allocator_traits_type::
dtl::bool_<allocator_traits_type::
propagate_on_container_copy_assignment::value> flag;
if(flag && this_alloc != x_alloc){
if(!this->is_short()){
@@ -837,7 +837,7 @@ class basic_string
this->priv_short_size(0);
}
}
container_detail::assign_alloc(this->alloc(), x.alloc(), flag);
dtl::assign_alloc(this->alloc(), x.alloc(), flag);
this->assign(x.begin(), x.end());
}
return *this;
@@ -861,7 +861,7 @@ class basic_string
allocator_type &x_alloc = x.alloc();
const bool propagate_alloc = allocator_traits_type::
propagate_on_container_move_assignment::value;
container_detail::bool_<propagate_alloc> flag;
dtl::bool_<propagate_alloc> flag;
const bool allocators_equal = this_alloc == x_alloc; (void)allocators_equal;
//Resources can be transferred if both allocators are
//going to be equal after this function (either propagated or already equal)
@@ -869,7 +869,7 @@ class basic_string
//Destroy objects but retain memory in case x reuses it in the future
this->clear();
//Move allocator if needed
container_detail::move_alloc(this_alloc, x_alloc, flag);
dtl::move_alloc(this_alloc, x_alloc, flag);
//Nothrow swap
this->swap_data(x);
}
@@ -1356,7 +1356,7 @@ class basic_string
if (pos > s.size())
throw_out_of_range("basic_string::append out of range position");
return this->append(s.begin() + pos,
s.begin() + pos + container_detail::min_value(n, s.size() - pos));
s.begin() + pos + dtl::min_value(n, s.size() - pos));
}
//! <b>Requires</b>: s points to an array of at least n elements of CharT.
@@ -1457,7 +1457,7 @@ class basic_string
if (pos > s.size())
throw_out_of_range("basic_string::assign out of range position");
return this->assign(s.begin() + pos,
s.begin() + pos + container_detail::min_value(n, s.size() - pos));
s.begin() + pos + dtl::min_value(n, s.size() - pos));
}
//! <b>Requires</b>: s points to an array of at least n elements of CharT.
@@ -1505,7 +1505,7 @@ class basic_string
template <class InputIter>
basic_string& assign(InputIter first, InputIter last
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
, typename container_detail::disable_if_convertible<InputIter, size_type>::type * = 0
, typename dtl::disable_if_convertible<InputIter, size_type>::type * = 0
#endif
)
{
@@ -1567,7 +1567,7 @@ class basic_string
const size_type str_size = s.size();
if (pos1 > sz || pos2 > str_size)
throw_out_of_range("basic_string::insert out of range position");
size_type len = container_detail::min_value(n, str_size - pos2);
size_type len = dtl::min_value(n, str_size - pos2);
if (sz > this->max_size() - len)
throw_length_error("basic_string::insert max_size() exceeded");
const CharT *beg_ptr = boost::movelib::to_raw_pointer(s.begin()) + pos2;
@@ -1666,10 +1666,10 @@ class basic_string
template <class InputIter>
iterator insert(const_iterator p, InputIter first, InputIter last
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
, typename container_detail::disable_if_or
, typename dtl::disable_if_or
< void
, container_detail::is_convertible<InputIter, size_type>
, container_detail::is_not_input_iterator<InputIter>
, dtl::is_convertible<InputIter, size_type>
, dtl::is_not_input_iterator<InputIter>
>::type * = 0
#endif
)
@@ -1684,10 +1684,10 @@ class basic_string
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
template <class ForwardIter>
iterator insert(const_iterator p, ForwardIter first, ForwardIter last
, typename container_detail::disable_if_or
, typename dtl::disable_if_or
< void
, container_detail::is_convertible<ForwardIter, size_type>
, container_detail::is_input_iterator<ForwardIter>
, dtl::is_convertible<ForwardIter, size_type>
, dtl::is_input_iterator<ForwardIter>
>::type * = 0
)
{
@@ -1834,7 +1834,7 @@ class basic_string
if (pos > this->size())
throw_out_of_range("basic_string::erase out of range position");
const pointer addr = this->priv_addr();
erase(addr + pos, addr + pos + container_detail::min_value(n, this->size() - pos));
erase(addr + pos, addr + pos + dtl::min_value(n, this->size() - pos));
return *this;
}
@@ -1903,7 +1903,7 @@ class basic_string
{
if (pos1 > this->size())
throw_out_of_range("basic_string::replace out of range position");
const size_type len = container_detail::min_value(n1, this->size() - pos1);
const size_type len = dtl::min_value(n1, this->size() - pos1);
if (this->size() - len >= this->max_size() - str.size())
throw_length_error("basic_string::replace max_size() exceeded");
const pointer addr = this->priv_addr();
@@ -1934,7 +1934,7 @@ class basic_string
{
if (pos2 > str.size())
throw_out_of_range("basic_string::replace out of range position");
return this->replace(pos1, n1, str.data()+pos2, container_detail::min_value(n2, str.size() - pos2));
return this->replace(pos1, n1, str.data()+pos2, dtl::min_value(n2, str.size() - pos2));
}
//! <b>Throws</b>: out_of_range if pos1 > size() or pos2 > sv.size().
@@ -1949,7 +1949,7 @@ class basic_string
{
if (pos2 > sv.size())
throw_out_of_range("basic_string::replace out of range position");
return this->replace(pos1, n1, sv.data()+pos2, container_detail::min_value(n2, sv.size() - pos2));
return this->replace(pos1, n1, sv.data()+pos2, dtl::min_value(n2, sv.size() - pos2));
}
//! <b>Requires</b>: pos1 <= size() and s points to an array of at least n2 elements of CharT.
@@ -1970,7 +1970,7 @@ class basic_string
{
if (pos1 > this->size())
throw_out_of_range("basic_string::replace out of range position");
const size_type len = container_detail::min_value(n1, this->size() - pos1);
const size_type len = dtl::min_value(n1, this->size() - pos1);
const size_type max_size = this->max_size();
if (n2 > max_size || (this->size() - len) >= (max_size - n2))
throw_length_error("basic_string::replace max_size() exceeded");
@@ -2009,7 +2009,7 @@ class basic_string
{
if (pos1 > this->size())
throw_out_of_range("basic_string::replace out of range position");
const size_type len = container_detail::min_value(n1, this->size() - pos1);
const size_type len = dtl::min_value(n1, this->size() - pos1);
if (n2 > this->max_size() || this->size() - len >= this->max_size() - n2)
throw_length_error("basic_string::replace max_size() exceeded");
const pointer addr = this->priv_addr();
@@ -2079,10 +2079,10 @@ class basic_string
template <class InputIter>
basic_string& replace(const_iterator i1, const_iterator i2, InputIter j1, InputIter j2
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
, typename container_detail::disable_if_or
, typename dtl::disable_if_or
< void
, container_detail::is_convertible<InputIter, size_type>
, container_detail::is_input_iterator<InputIter>
, dtl::is_convertible<InputIter, size_type>
, dtl::is_input_iterator<InputIter>
>::type * = 0
#endif
)
@@ -2101,10 +2101,10 @@ class basic_string
#if !defined(BOOST_CONTAINER_DOXYGEN_INVOKED)
template <class ForwardIter>
basic_string& replace(const_iterator i1, const_iterator i2, ForwardIter j1, ForwardIter j2
, typename container_detail::disable_if_or
, typename dtl::disable_if_or
< void
, container_detail::is_convertible<ForwardIter, size_type>
, container_detail::is_not_input_iterator<ForwardIter>
, dtl::is_convertible<ForwardIter, size_type>
, dtl::is_not_input_iterator<ForwardIter>
>::type * = 0
)
{
@@ -2165,7 +2165,7 @@ class basic_string
{
if (pos > this->size())
throw_out_of_range("basic_string::copy out of range position");
const size_type len = container_detail::min_value(n, this->size() - pos);
const size_type len = dtl::min_value(n, this->size() - pos);
Traits::copy(s, boost::movelib::to_raw_pointer(this->priv_addr() + pos), len);
return len;
}
@@ -2179,8 +2179,8 @@ class basic_string
|| allocator_traits_type::is_always_equal::value)
{
this->base_t::swap_data(x);
container_detail::bool_<allocator_traits_type::propagate_on_container_swap::value> flag;
container_detail::swap_alloc(this->alloc(), x.alloc(), flag);
dtl::bool_<allocator_traits_type::propagate_on_container_swap::value> flag;
dtl::swap_alloc(this->alloc(), x.alloc(), flag);
}
//////////////////////////////////////////////
@@ -2340,9 +2340,9 @@ class basic_string
if (n > len)
return npos;
else if (n == 0)
return container_detail::min_value(len, pos);
return dtl::min_value(len, pos);
else {
const const_iterator last = begin() + container_detail::min_value(len - n, pos) + n;
const const_iterator last = begin() + dtl::min_value(len - n, pos) + n;
const const_iterator result = find_end(begin(), last,
s, s + n,
Eq_traits<Traits>());
@@ -2369,7 +2369,7 @@ class basic_string
if (len < 1)
return npos;
else {
const const_iterator last = begin() + container_detail::min_value(len - 1, pos) + 1;
const const_iterator last = begin() + dtl::min_value(len - 1, pos) + 1;
const_reverse_iterator rresult =
boost::container::find_if(const_reverse_iterator(last), rend(),
boost::container::bind2nd(Eq_traits<Traits>(), c));
@@ -2467,7 +2467,7 @@ class basic_string
return npos;
else {
const pointer addr = this->priv_addr();
const const_iterator last = addr + container_detail::min_value(len - 1, pos) + 1;
const const_iterator last = addr + dtl::min_value(len - 1, pos) + 1;
const const_reverse_iterator rresult =
boost::container::find_first_of(const_reverse_iterator(last), rend(),
s, s + n, Eq_traits<Traits>());
@@ -2588,7 +2588,7 @@ class basic_string
if (len < 1)
return npos;
else {
const const_iterator last = begin() + container_detail::min_value(len - 1, pos) + 1;
const const_iterator last = begin() + dtl::min_value(len - 1, pos) + 1;
const const_reverse_iterator rresult =
boost::container::find_if(const_reverse_iterator(last), rend(),
Not_within_traits<Traits>(s, s + n));
@@ -2614,7 +2614,7 @@ class basic_string
if (len < 1)
return npos;
else {
const const_iterator last = begin() + container_detail::min_value(len - 1, pos) + 1;
const const_iterator last = begin() + dtl::min_value(len - 1, pos) + 1;
const const_reverse_iterator rresult =
boost::container::find_if(const_reverse_iterator(last), rend(),
boost::container::not1(boost::container::bind2nd(Eq_traits<Traits>(), c)));
@@ -2636,7 +2636,7 @@ class basic_string
throw_out_of_range("basic_string::substr out of range position");
const pointer addr = this->priv_addr();
return basic_string(addr + pos,
addr + pos + container_detail::min_value(n, size() - pos), this->alloc());
addr + pos + dtl::min_value(n, size() - pos), this->alloc());
}
//! <b>Effects</b>: Determines the effective length rlen of the string to compare as
@@ -2681,7 +2681,7 @@ class basic_string
const pointer addr = this->priv_addr();
const pointer str_addr = str.priv_addr();
return s_compare(addr + pos1,
addr + pos1 + container_detail::min_value(n1, this->size() - pos1),
addr + pos1 + dtl::min_value(n1, this->size() - pos1),
str_addr, str_addr + str.priv_size());
}
@@ -2697,7 +2697,7 @@ class basic_string
throw_out_of_range("basic_string::compare out of range position");
const pointer addr = this->priv_addr() + pos1;
const CharT* str_addr = sv.data();
return s_compare(addr, addr + container_detail::min_value(n1, this->size() - pos1),
return s_compare(addr, addr + dtl::min_value(n1, this->size() - pos1),
str_addr, str_addr + sv.size());
}
@@ -2715,8 +2715,8 @@ class basic_string
throw_out_of_range("basic_string::compare out of range position");
const pointer addr = this->priv_addr() + pos1;
const pointer str_addr = str.priv_addr() + pos2;
return s_compare(addr, addr + container_detail::min_value(n1, this->size() - pos1),
str_addr, str_addr + container_detail::min_value(n2, str.size() - pos2));
return s_compare(addr, addr + dtl::min_value(n1, this->size() - pos1),
str_addr, str_addr + dtl::min_value(n2, str.size() - pos2));
}
//! <b>Requires</b>: pos1 <= size() and pos2 <= str.size()
@@ -2734,8 +2734,8 @@ class basic_string
throw_out_of_range("basic_string::compare out of range position");
const pointer addr = this->priv_addr() + pos1;
const CharT * str_addr = sv.data() + pos2;
return s_compare(addr, addr + container_detail::min_value(n1, this->size() - pos1),
str_addr, str_addr + container_detail::min_value(n2, sv.size() - pos2));
return s_compare(addr, addr + dtl::min_value(n1, this->size() - pos1),
str_addr, str_addr + dtl::min_value(n2, sv.size() - pos2));
}
//! <b>Throws</b>: Nothing
@@ -2758,7 +2758,7 @@ class basic_string
throw_out_of_range("basic_string::compare out of range position");
const pointer addr = this->priv_addr();
return s_compare( addr + pos1,
addr + pos1 + container_detail::min_value(n1, this->size() - pos1),
addr + pos1 + dtl::min_value(n1, this->size() - pos1),
s, s + n2);
}
@@ -2779,7 +2779,7 @@ class basic_string
}
if (this->capacity() < res_arg){
size_type n = container_detail::max_value(res_arg, this->size()) + 1;
size_type n = dtl::max_value(res_arg, this->size()) + 1;
size_type new_cap = this->next_capacity(n);
pointer reuse = 0;
pointer new_start = this->allocation_command(allocate_new, n, new_cap, reuse);
@@ -2806,14 +2806,14 @@ class basic_string
const difference_type n2 = l2 - f2;
const int cmp = Traits::compare(boost::movelib::to_raw_pointer(f1),
boost::movelib::to_raw_pointer(f2),
container_detail::min_value(n1, n2));
dtl::min_value(n1, n2));
return cmp != 0 ? cmp : (n1 < n2 ? -1 : (n1 > n2 ? 1 : 0));
}
template<class AllocVersion>
void priv_shrink_to_fit_dynamic_buffer
( AllocVersion
, typename container_detail::enable_if<container_detail::is_same<AllocVersion, version_1> >::type* = 0)
, typename dtl::enable_if<dtl::is_same<AllocVersion, version_1> >::type* = 0)
{
//Allocate a new buffer.
size_type real_cap = 0;
@@ -2843,7 +2843,7 @@ class basic_string
template<class AllocVersion>
void priv_shrink_to_fit_dynamic_buffer
( AllocVersion
, typename container_detail::enable_if<container_detail::is_same<AllocVersion, version_2> >::type* = 0)
, typename dtl::enable_if<dtl::is_same<AllocVersion, version_2> >::type* = 0)
{
size_type received_size = this->priv_long_size()+1;
pointer hint = this->priv_long_addr();
@@ -2920,13 +2920,13 @@ class basic_string
template <class Integer>
basic_string& priv_replace_dispatch(const_iterator first, const_iterator last,
Integer n, Integer x,
container_detail::true_)
dtl::true_)
{ return this->replace(first, last, (size_type) n, (CharT) x); }
template <class InputIter>
basic_string& priv_replace_dispatch(const_iterator first, const_iterator last,
InputIter f, InputIter l,
container_detail::false_)
dtl::false_)
{
typedef typename boost::container::iterator_traits<InputIter>::iterator_category Category;
return this->priv_replace(first, last, f, l, Category());
@@ -3080,7 +3080,7 @@ operator==(const basic_string<CharT,Traits,Allocator>& x, const CharT* s)
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator==( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,Allocator>& y)
{
@@ -3091,7 +3091,7 @@ inline
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator==( const basic_string<CharT,Traits,Allocator>& x, BasicStringView<CharT,Traits> y)
{
@@ -3118,7 +3118,7 @@ operator!=(const basic_string<CharT,Traits,Allocator>& x, const CharT* s)
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator!=( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,Allocator>& y)
{ return !(x == y); }
@@ -3126,7 +3126,7 @@ operator!=( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,All
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator!=( const basic_string<CharT,Traits,Allocator>& x, BasicStringView<CharT,Traits> y)
{ return !(x == y); }
@@ -3156,7 +3156,7 @@ operator<(const basic_string<CharT,Traits,Allocator>& x, const CharT* s)
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator<( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,Allocator>& y)
{ return y.compare(x) > 0; }
@@ -3164,7 +3164,7 @@ operator<( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,Allo
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator<( const basic_string<CharT,Traits,Allocator>& x, BasicStringView<CharT,Traits> y)
{ return x.compare(y) < 0; }
@@ -3191,7 +3191,7 @@ operator>(const basic_string<CharT,Traits,Allocator>& x, const CharT* s)
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator>( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,Allocator>& y)
{ return y < x; }
@@ -3199,7 +3199,7 @@ operator>( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,Allo
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator>( const basic_string<CharT,Traits,Allocator>& x, BasicStringView<CharT,Traits> y)
{ return y < x; }
@@ -3225,7 +3225,7 @@ operator<=(const basic_string<CharT,Traits,Allocator>& x, const CharT* s)
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator<=( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,Allocator>& y)
{ return !(y < x); }
@@ -3233,7 +3233,7 @@ operator<=( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,All
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator<=( const basic_string<CharT,Traits,Allocator>& x, BasicStringView<CharT,Traits> y)
{ return !(y < x); }
@@ -3257,7 +3257,7 @@ operator>=(const basic_string<CharT,Traits,Allocator>& x, const CharT* s)
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator>=( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,Allocator>& y)
{ return !(x < y); }
@@ -3265,7 +3265,7 @@ operator>=( BasicStringView<CharT,Traits> x, const basic_string<CharT,Traits,All
template <class CharT, class Traits, class Allocator, template <class, class> class BasicStringView>
inline
BOOST_CONTAINER_DOC1ST( bool,
typename container_detail::disable_if
typename dtl::disable_if
<is_string< BasicStringView<CharT BOOST_MOVE_I Traits> > BOOST_MOVE_I bool >::type)
operator>=( const basic_string<CharT,Traits,Allocator>& x, BasicStringView<CharT,Traits> y)
{ return !(x < y); }
@@ -3277,7 +3277,7 @@ inline void swap(basic_string<CharT,Traits,Allocator>& x, basic_string<CharT,Tra
#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
// I/O.
namespace container_detail {
namespace dtl {
template <class CharT, class Traits>
inline bool
@@ -3294,7 +3294,7 @@ string_fill(std::basic_ostream<CharT, Traits>& os,
return ok;
}
} //namespace container_detail {
} //namespace dtl {
#endif //#ifndef BOOST_CONTAINER_DOXYGEN_INVOKED
template <class CharT, class Traits, class Allocator>
@@ -3316,13 +3316,13 @@ operator<<(std::basic_ostream<CharT, Traits>& os, const basic_string<CharT,Trait
pad_len = w - n;
if (!left)
ok = container_detail::string_fill(os, buf, pad_len);
ok = dtl::string_fill(os, buf, pad_len);
ok = ok &&
buf->sputn(s.data(), std::streamsize(n)) == std::streamsize(n);
if (left)
ok = ok && container_detail::string_fill(os, buf, pad_len);
ok = ok && dtl::string_fill(os, buf, pad_len);
}
if (!ok)