mirror of
https://github.com/boostorg/regex.git
synced 2025-07-19 07:12:07 +02:00
Simplify multi-component ifdefs containing BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
[SVN r86248]
This commit is contained in:
@ -141,7 +141,7 @@ class u32_to_u16_iterator
|
|||||||
{
|
{
|
||||||
typedef boost::iterator_facade<u32_to_u16_iterator<BaseIterator, U16Type>, U16Type, std::bidirectional_iterator_tag, const U16Type> base_type;
|
typedef boost::iterator_facade<u32_to_u16_iterator<BaseIterator, U16Type>, U16Type, std::bidirectional_iterator_tag, const U16Type> base_type;
|
||||||
|
|
||||||
#if !defined(BOOST_NO_STD_ITERATOR_TRAITS) && !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
|
#if !defined(BOOST_NO_STD_ITERATOR_TRAITS)
|
||||||
typedef typename std::iterator_traits<BaseIterator>::value_type base_value_type;
|
typedef typename std::iterator_traits<BaseIterator>::value_type base_value_type;
|
||||||
|
|
||||||
BOOST_STATIC_ASSERT(sizeof(base_value_type)*CHAR_BIT == 32);
|
BOOST_STATIC_ASSERT(sizeof(base_value_type)*CHAR_BIT == 32);
|
||||||
@ -256,7 +256,7 @@ class u16_to_u32_iterator
|
|||||||
// special values for pending iterator reads:
|
// special values for pending iterator reads:
|
||||||
BOOST_STATIC_CONSTANT(U32Type, pending_read = 0xffffffffu);
|
BOOST_STATIC_CONSTANT(U32Type, pending_read = 0xffffffffu);
|
||||||
|
|
||||||
#if !defined(BOOST_NO_STD_ITERATOR_TRAITS) && !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
|
#if !defined(BOOST_NO_STD_ITERATOR_TRAITS)
|
||||||
typedef typename std::iterator_traits<BaseIterator>::value_type base_value_type;
|
typedef typename std::iterator_traits<BaseIterator>::value_type base_value_type;
|
||||||
|
|
||||||
BOOST_STATIC_ASSERT(sizeof(base_value_type)*CHAR_BIT == 16);
|
BOOST_STATIC_ASSERT(sizeof(base_value_type)*CHAR_BIT == 16);
|
||||||
@ -371,7 +371,7 @@ class u32_to_u8_iterator
|
|||||||
{
|
{
|
||||||
typedef boost::iterator_facade<u32_to_u8_iterator<BaseIterator, U8Type>, U8Type, std::bidirectional_iterator_tag, const U8Type> base_type;
|
typedef boost::iterator_facade<u32_to_u8_iterator<BaseIterator, U8Type>, U8Type, std::bidirectional_iterator_tag, const U8Type> base_type;
|
||||||
|
|
||||||
#if !defined(BOOST_NO_STD_ITERATOR_TRAITS) && !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
|
#if !defined(BOOST_NO_STD_ITERATOR_TRAITS)
|
||||||
typedef typename std::iterator_traits<BaseIterator>::value_type base_value_type;
|
typedef typename std::iterator_traits<BaseIterator>::value_type base_value_type;
|
||||||
|
|
||||||
BOOST_STATIC_ASSERT(sizeof(base_value_type)*CHAR_BIT == 32);
|
BOOST_STATIC_ASSERT(sizeof(base_value_type)*CHAR_BIT == 32);
|
||||||
@ -499,7 +499,7 @@ class u8_to_u32_iterator
|
|||||||
// special values for pending iterator reads:
|
// special values for pending iterator reads:
|
||||||
BOOST_STATIC_CONSTANT(U32Type, pending_read = 0xffffffffu);
|
BOOST_STATIC_CONSTANT(U32Type, pending_read = 0xffffffffu);
|
||||||
|
|
||||||
#if !defined(BOOST_NO_STD_ITERATOR_TRAITS) && !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
|
#if !defined(BOOST_NO_STD_ITERATOR_TRAITS)
|
||||||
typedef typename std::iterator_traits<BaseIterator>::value_type base_value_type;
|
typedef typename std::iterator_traits<BaseIterator>::value_type base_value_type;
|
||||||
|
|
||||||
BOOST_STATIC_ASSERT(sizeof(base_value_type)*CHAR_BIT == 8);
|
BOOST_STATIC_ASSERT(sizeof(base_value_type)*CHAR_BIT == 8);
|
||||||
|
@ -33,7 +33,7 @@
|
|||||||
namespace boost{
|
namespace boost{
|
||||||
namespace re_detail{
|
namespace re_detail{
|
||||||
|
|
||||||
#if defined(BOOST_NO_STD_ITERATOR_TRAITS) || defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
|
#if defined(BOOST_NO_STD_ITERATOR_TRAITS)
|
||||||
|
|
||||||
template <class T>
|
template <class T>
|
||||||
struct regex_iterator_traits
|
struct regex_iterator_traits
|
||||||
|
@ -83,7 +83,7 @@ struct regex_traits : public implementationT
|
|||||||
// required "standard" ones:
|
// required "standard" ones:
|
||||||
//
|
//
|
||||||
namespace re_detail{
|
namespace re_detail{
|
||||||
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) && !BOOST_WORKAROUND(__HP_aCC, < 60000)
|
#if !BOOST_WORKAROUND(__HP_aCC, < 60000)
|
||||||
BOOST_MPL_HAS_XXX_TRAIT_DEF(boost_extensions_tag)
|
BOOST_MPL_HAS_XXX_TRAIT_DEF(boost_extensions_tag)
|
||||||
#else
|
#else
|
||||||
template<class T>
|
template<class T>
|
||||||
@ -136,7 +136,7 @@ struct compute_wrapper_base
|
|||||||
{
|
{
|
||||||
typedef BaseT type;
|
typedef BaseT type;
|
||||||
};
|
};
|
||||||
#if !defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) && !BOOST_WORKAROUND(__HP_aCC, < 60000)
|
#if !BOOST_WORKAROUND(__HP_aCC, < 60000)
|
||||||
template <class BaseT>
|
template <class BaseT>
|
||||||
struct compute_wrapper_base<BaseT, false>
|
struct compute_wrapper_base<BaseT, false>
|
||||||
{
|
{
|
||||||
|
@ -36,7 +36,7 @@ template <class BidiIterator>
|
|||||||
struct sub_match : public std::pair<BidiIterator, BidiIterator>
|
struct sub_match : public std::pair<BidiIterator, BidiIterator>
|
||||||
{
|
{
|
||||||
typedef typename re_detail::regex_iterator_traits<BidiIterator>::value_type value_type;
|
typedef typename re_detail::regex_iterator_traits<BidiIterator>::value_type value_type;
|
||||||
#if defined(BOOST_NO_STD_ITERATOR_TRAITS) || defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
|
#if defined(BOOST_NO_STD_ITERATOR_TRAITS)
|
||||||
typedef std::ptrdiff_t difference_type;
|
typedef std::ptrdiff_t difference_type;
|
||||||
#else
|
#else
|
||||||
typedef typename re_detail::regex_iterator_traits<BidiIterator>::difference_type difference_type;
|
typedef typename re_detail::regex_iterator_traits<BidiIterator>::difference_type difference_type;
|
||||||
|
Reference in New Issue
Block a user