mirror of
https://github.com/boostorg/regex.git
synced 2025-07-23 00:57:19 +02:00
@ -423,7 +423,7 @@ bool do_regex_match(BidiIterator first, BidiIterator last,
|
|||||||
{
|
{
|
||||||
typedef u16_to_u32_iterator<BidiIterator, UChar32> conv_type;
|
typedef u16_to_u32_iterator<BidiIterator, UChar32> conv_type;
|
||||||
typedef match_results<conv_type> match_type;
|
typedef match_results<conv_type> match_type;
|
||||||
typedef typename match_type::allocator_type alloc_type;
|
//typedef typename match_type::allocator_type alloc_type;
|
||||||
match_type what;
|
match_type what;
|
||||||
bool result = ::boost::regex_match(conv_type(first, first, last), conv_type(last, first, last), what, e, flags);
|
bool result = ::boost::regex_match(conv_type(first, first, last), conv_type(last, first, last), what, e, flags);
|
||||||
// copy results across to m:
|
// copy results across to m:
|
||||||
@ -439,7 +439,7 @@ bool do_regex_match(BidiIterator first, BidiIterator last,
|
|||||||
{
|
{
|
||||||
typedef u8_to_u32_iterator<BidiIterator, UChar32> conv_type;
|
typedef u8_to_u32_iterator<BidiIterator, UChar32> conv_type;
|
||||||
typedef match_results<conv_type> match_type;
|
typedef match_results<conv_type> match_type;
|
||||||
typedef typename match_type::allocator_type alloc_type;
|
//typedef typename match_type::allocator_type alloc_type;
|
||||||
match_type what;
|
match_type what;
|
||||||
bool result = ::boost::regex_match(conv_type(first, first, last), conv_type(last, first, last), what, e, flags);
|
bool result = ::boost::regex_match(conv_type(first, first, last), conv_type(last, first, last), what, e, flags);
|
||||||
// copy results across to m:
|
// copy results across to m:
|
||||||
@ -598,7 +598,7 @@ bool do_regex_search(BidiIterator first, BidiIterator last,
|
|||||||
{
|
{
|
||||||
typedef u16_to_u32_iterator<BidiIterator, UChar32> conv_type;
|
typedef u16_to_u32_iterator<BidiIterator, UChar32> conv_type;
|
||||||
typedef match_results<conv_type> match_type;
|
typedef match_results<conv_type> match_type;
|
||||||
typedef typename match_type::allocator_type alloc_type;
|
//typedef typename match_type::allocator_type alloc_type;
|
||||||
match_type what;
|
match_type what;
|
||||||
bool result = ::boost::regex_search(conv_type(first, first, last), conv_type(last, first, last), what, e, flags, conv_type(base));
|
bool result = ::boost::regex_search(conv_type(first, first, last), conv_type(last, first, last), what, e, flags, conv_type(base));
|
||||||
// copy results across to m:
|
// copy results across to m:
|
||||||
@ -615,7 +615,7 @@ bool do_regex_search(BidiIterator first, BidiIterator last,
|
|||||||
{
|
{
|
||||||
typedef u8_to_u32_iterator<BidiIterator, UChar32> conv_type;
|
typedef u8_to_u32_iterator<BidiIterator, UChar32> conv_type;
|
||||||
typedef match_results<conv_type> match_type;
|
typedef match_results<conv_type> match_type;
|
||||||
typedef typename match_type::allocator_type alloc_type;
|
//typedef typename match_type::allocator_type alloc_type;
|
||||||
match_type what;
|
match_type what;
|
||||||
bool result = ::boost::regex_search(conv_type(first, first, last), conv_type(last, first, last), what, e, flags, conv_type(base));
|
bool result = ::boost::regex_search(conv_type(first, first, last), conv_type(last, first, last), what, e, flags, conv_type(base));
|
||||||
// copy results across to m:
|
// copy results across to m:
|
||||||
|
@ -36,14 +36,7 @@
|
|||||||
//
|
//
|
||||||
namespace boost{
|
namespace boost{
|
||||||
|
|
||||||
class BOOST_REGEX_DECL scoped_static_mutex_lock;
|
class static_mutex;
|
||||||
|
|
||||||
class static_mutex
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
typedef scoped_static_mutex_lock scoped_lock;
|
|
||||||
pthread_mutex_t m_mutex;
|
|
||||||
};
|
|
||||||
|
|
||||||
#define BOOST_STATIC_MUTEX_INIT { PTHREAD_MUTEX_INITIALIZER, }
|
#define BOOST_STATIC_MUTEX_INIT { PTHREAD_MUTEX_INITIALIZER, }
|
||||||
|
|
||||||
@ -67,6 +60,12 @@ private:
|
|||||||
bool m_have_lock;
|
bool m_have_lock;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class static_mutex
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
typedef scoped_static_mutex_lock scoped_lock;
|
||||||
|
pthread_mutex_t m_mutex;
|
||||||
|
};
|
||||||
|
|
||||||
} // namespace boost
|
} // namespace boost
|
||||||
#elif defined(BOOST_HAS_WINTHREADS)
|
#elif defined(BOOST_HAS_WINTHREADS)
|
||||||
|
@ -1064,7 +1064,7 @@ struct format_functor_c_string
|
|||||||
template <class OutputIter>
|
template <class OutputIter>
|
||||||
OutputIter operator()(const Match& m, OutputIter i, boost::regex_constants::match_flag_type f, const Traits& t = Traits())
|
OutputIter operator()(const Match& m, OutputIter i, boost::regex_constants::match_flag_type f, const Traits& t = Traits())
|
||||||
{
|
{
|
||||||
typedef typename Match::char_type char_type;
|
//typedef typename Match::char_type char_type;
|
||||||
const charT* end = func;
|
const charT* end = func;
|
||||||
while(*end) ++end;
|
while(*end) ++end;
|
||||||
return regex_format_imp(i, m, func, end, f, t);
|
return regex_format_imp(i, m, func, end, f, t);
|
||||||
@ -1083,7 +1083,7 @@ struct format_functor_container
|
|||||||
template <class OutputIter>
|
template <class OutputIter>
|
||||||
OutputIter operator()(const Match& m, OutputIter i, boost::regex_constants::match_flag_type f, const Traits& t = Traits())
|
OutputIter operator()(const Match& m, OutputIter i, boost::regex_constants::match_flag_type f, const Traits& t = Traits())
|
||||||
{
|
{
|
||||||
typedef typename Match::char_type char_type;
|
//typedef typename Match::char_type char_type;
|
||||||
return re_detail::regex_format_imp(i, m, func.begin(), func.end(), f, t);
|
return re_detail::regex_format_imp(i, m, func.begin(), func.end(), f, t);
|
||||||
}
|
}
|
||||||
private:
|
private:
|
||||||
|
@ -107,7 +107,7 @@ std::size_t regex_split(OutputIterator out,
|
|||||||
std::size_t max_split)
|
std::size_t max_split)
|
||||||
{
|
{
|
||||||
typedef typename std::basic_string<charT, Traits1, Alloc1>::const_iterator ci_t;
|
typedef typename std::basic_string<charT, Traits1, Alloc1>::const_iterator ci_t;
|
||||||
typedef typename match_results<ci_t>::allocator_type match_allocator;
|
//typedef typename match_results<ci_t>::allocator_type match_allocator;
|
||||||
ci_t last = s.begin();
|
ci_t last = s.begin();
|
||||||
std::size_t init_size = max_split;
|
std::size_t init_size = max_split;
|
||||||
re_detail::split_pred<OutputIterator, charT, Traits1, Alloc1> pred(&last, &out, &max_split);
|
re_detail::split_pred<OutputIterator, charT, Traits1, Alloc1> pred(&last, &out, &max_split);
|
||||||
|
@ -73,7 +73,7 @@ void compare_result(const MR1& w1, const MR2& w2, boost::mpl::int_<2> const*)
|
|||||||
typedef typename MR2::value_type MR2_value_type;
|
typedef typename MR2::value_type MR2_value_type;
|
||||||
typedef typename MR2_value_type::const_iterator MR2_iterator_type;
|
typedef typename MR2_value_type::const_iterator MR2_iterator_type;
|
||||||
typedef boost::u16_to_u32_iterator<MR2_iterator_type> iterator_type;
|
typedef boost::u16_to_u32_iterator<MR2_iterator_type> iterator_type;
|
||||||
typedef typename MR1::size_type size_type;
|
//typedef typename MR1::size_type size_type;
|
||||||
if(w1.size() != w2.size())
|
if(w1.size() != w2.size())
|
||||||
{
|
{
|
||||||
BOOST_REGEX_TEST_ERROR("Size mismatch in match_results class", UChar32);
|
BOOST_REGEX_TEST_ERROR("Size mismatch in match_results class", UChar32);
|
||||||
@ -103,7 +103,7 @@ void compare_result(const MR1& w1, const MR2& w2, boost::mpl::int_<1> const*)
|
|||||||
typedef typename MR2::value_type MR2_value_type;
|
typedef typename MR2::value_type MR2_value_type;
|
||||||
typedef typename MR2_value_type::const_iterator MR2_iterator_type;
|
typedef typename MR2_value_type::const_iterator MR2_iterator_type;
|
||||||
typedef boost::u8_to_u32_iterator<MR2_iterator_type> iterator_type;
|
typedef boost::u8_to_u32_iterator<MR2_iterator_type> iterator_type;
|
||||||
typedef typename MR1::size_type size_type;
|
//typedef typename MR1::size_type size_type;
|
||||||
if(w1.size() != w2.size())
|
if(w1.size() != w2.size())
|
||||||
{
|
{
|
||||||
BOOST_REGEX_TEST_ERROR("Size mismatch in match_results class", UChar32);
|
BOOST_REGEX_TEST_ERROR("Size mismatch in match_results class", UChar32);
|
||||||
@ -358,7 +358,7 @@ void test_icu(const wchar_t&, const test_regex_search_tag& )
|
|||||||
|
|
||||||
void test_icu(const wchar_t&, const test_invalid_regex_tag&)
|
void test_icu(const wchar_t&, const test_invalid_regex_tag&)
|
||||||
{
|
{
|
||||||
typedef boost::u16_to_u32_iterator<std::wstring::const_iterator, ::UChar32> conv_iterator;
|
//typedef boost::u16_to_u32_iterator<std::wstring::const_iterator, ::UChar32> conv_iterator;
|
||||||
std::vector< ::UChar32> expression;
|
std::vector< ::UChar32> expression;
|
||||||
#ifndef BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS
|
#ifndef BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS
|
||||||
expression.assign(test_info<wchar_t>::expression().begin(), test_info<wchar_t>::expression().end());
|
expression.assign(test_info<wchar_t>::expression().begin(), test_info<wchar_t>::expression().end());
|
||||||
|
@ -422,7 +422,7 @@ private:
|
|||||||
template<class charT, class traits>
|
template<class charT, class traits>
|
||||||
void test_regex_grep(boost::basic_regex<charT, traits>& r)
|
void test_regex_grep(boost::basic_regex<charT, traits>& r)
|
||||||
{
|
{
|
||||||
typedef typename std::basic_string<charT>::const_iterator const_iterator;
|
//typedef typename std::basic_string<charT>::const_iterator const_iterator;
|
||||||
const std::basic_string<charT>& search_text = test_info<charT>::search_text();
|
const std::basic_string<charT>& search_text = test_info<charT>::search_text();
|
||||||
boost::regex_constants::match_flag_type opts = test_info<charT>::match_options();
|
boost::regex_constants::match_flag_type opts = test_info<charT>::match_options();
|
||||||
const int* answer_table = test_info<charT>::answer_table();
|
const int* answer_table = test_info<charT>::answer_table();
|
||||||
|
Reference in New Issue
Block a user