RCS file: /cvsroot/boost/boost/boost/xpressive/detail/dynamic/dynamic.hpp,v
retrieving revision 1.4
diff -b -d -u -r1.4 dynamic.hpp
|
|
|
|
| 130 | 130 | |
| 131 | 131 | bool is_quantifiable() const |
| 132 | 132 | { |
| 133 | | return quant_type<Matcher>::value != (int)quant_none; |
| | 133 | return quant_type<Matcher>::value != (int)quant_none || this->next_ != get_invalid_xpression<BidiIter>(); |
| 134 | 134 | } |
| 135 | 135 | |
| 136 | 136 | private: |
| … |
… |
|
| 316 | 316 | template<typename Matcher, typename BidiIter> |
| 317 | 317 | inline sequence<BidiIter> dynamic_xpression<Matcher, BidiIter>::quantify_ |
| 318 | 318 | ( |
| 319 | | quant_spec const & |
| 320 | | , std::size_t & |
| 321 | | , sequence<BidiIter> |
| | 319 | quant_spec const &spec |
| | 320 | , std::size_t &hidden_mark_count |
| | 321 | , sequence<BidiIter> seq |
| 322 | 322 | , mpl::int_<quant_none> |
| 323 | | , alternates_factory<BidiIter> const & |
| | 323 | , alternates_factory<BidiIter> const &factory |
| 324 | 324 | , void const * |
| 325 | 325 | ) const |
| 326 | 326 | { |
| 327 | | BOOST_ASSERT(false); // should never get here |
| 328 | | throw regex_error(regex_constants::error_badrepeat, "expression cannot be quantified"); |
| | 327 | BOOST_ASSERT(this->next_ != get_invalid_xpression<BidiIter>()); |
| | 328 | return this->quantify_(spec, hidden_mark_count, seq, mpl::int_<quant_variable_width>(), factory, this); |
| 329 | 329 | } |
| 330 | 330 | |
| 331 | 331 | // fixed-width matchers |