#include <basic_regex_parser.hpp>
Public Member Functions | |
basic_regex_parser (regex_data< charT, traits > *data) | |
void | parse (const charT *p1, const charT *p2, unsigned flags) |
void | fail (regex_constants::error_type error_code, std::ptrdiff_t position) |
void | fail (regex_constants::error_type error_code, std::ptrdiff_t position, std::string message, std::ptrdiff_t start_pos) |
void | fail (regex_constants::error_type error_code, std::ptrdiff_t position, const std::string &message) |
bool | parse_all () |
bool | parse_basic () |
bool | parse_extended () |
bool | parse_literal () |
bool | parse_open_paren () |
bool | parse_basic_escape () |
bool | parse_extended_escape () |
bool | parse_match_any () |
bool | parse_repeat (std::size_t low=0, std::size_t high=(std::numeric_limits< std::size_t >::max)()) |
bool | parse_repeat_range (bool isbasic) |
bool | parse_alt () |
bool | parse_set () |
bool | parse_backref () |
void | parse_set_literal (basic_char_set< charT, traits > &char_set) |
bool | parse_inner_set (basic_char_set< charT, traits > &char_set) |
bool | parse_QE () |
bool | parse_perl_extension () |
bool | add_emacs_code (bool negate) |
bool | unwind_alts (std::ptrdiff_t last_paren_start) |
digraph< charT > | get_next_set_literal (basic_char_set< charT, traits > &char_set) |
charT | unescape_character () |
regex_constants::syntax_option_type | parse_options () |
std::ptrdiff_t | getoffset (void *addr) |
std::ptrdiff_t | getoffset (const void *addr, const void *base) |
re_syntax_base * | getaddress (std::ptrdiff_t off) |
re_syntax_base * | getaddress (std::ptrdiff_t off, void *base) |
void | init (unsigned l_flags) |
regbase::flag_type | flags () |
void | flags (regbase::flag_type f) |
re_syntax_base * | append_state (syntax_element_type t, std::size_t s=sizeof(re_syntax_base)) |
re_syntax_base * | insert_state (std::ptrdiff_t pos, syntax_element_type t, std::size_t s=sizeof(re_syntax_base)) |
re_literal * | append_literal (charT c) |
re_syntax_base * | append_set (const basic_char_set< charT, traits > &char_set) |
re_syntax_base * | append_set (const basic_char_set< charT, traits > &char_set, mpl::false_ *) |
re_syntax_base * | append_set (const basic_char_set< charT, traits > &char_set, mpl::true_ *) |
void | finalize (const charT *p1, const charT *p2) |
Protected Attributes | |
regex_data< charT, traits > * | m_pdata |
const ::boost::regex_traits_wrapper < traits > & | m_traits |
re_syntax_base * | m_last_state |
bool | m_icase |
unsigned | m_repeater_id |
bool | m_has_backrefs |
unsigned | m_backrefs |
boost::uintmax_t | m_bad_repeats |
bool | m_has_recursions |
std::vector< bool > | m_recursion_checks |
traits::char_class_type | m_word_mask |
traits::char_class_type | m_mask_space |
traits::char_class_type | m_lower_mask |
traits::char_class_type | m_upper_mask |
traits::char_class_type | m_alpha_mask |
boost::re_detail::basic_regex_parser< charT, traits >::basic_regex_parser | ( | regex_data< charT, traits > * | data | ) |
bool boost::re_detail::basic_regex_parser< charT, traits >::add_emacs_code | ( | bool | negate | ) |
References boost::re_detail::basic_char_set< charT, traits >::add_class(), boost::re_detail::basic_char_set< charT, traits >::add_single(), boost::xpressive::regex_constants::error_ctype, boost::xpressive::regex_constants::error_escape, and boost::re_detail::basic_char_set< charT, traits >::negate().
|
inherited |
|
inlineinherited |
|
inherited |
References boost::xpressive::a1, boost::xpressive::a2, boost::re_detail::re_set_long< mask_type >::cclasses, boost::re_detail::re_set_long< mask_type >::cequivalents, boost::re_detail::basic_char_set< charT, traits >::classes(), boost::re_detail::re_set_long< mask_type >::cnclasses, boost::regex_constants::collate, boost::filesystem::detail::copy(), boost::re_detail::re_set_long< mask_type >::cranges, boost::re_detail::re_set_long< mask_type >::csingles, boost::fusion::distance(), boost::re_detail::basic_char_set< charT, traits >::equivalents_begin(), boost::re_detail::basic_char_set< charT, traits >::equivalents_end(), boost::xpressive::first, boost::re_detail::basic_char_set< charT, traits >::has_digraphs(), boost::regbase::icase, boost::re_detail::basic_char_set< charT, traits >::is_negated(), boost::re_detail::re_set_long< mask_type >::isnot, boost::last, boost::re_detail::basic_char_set< charT, traits >::negated_classes(), boost::asio::offset, boost::multiprecision::backends::p, boost::re_detail::basic_char_set< charT, traits >::ranges_begin(), boost::re_detail::basic_char_set< charT, traits >::ranges_end(), boost::asio::s, boost::xpressive::s1, boost::xpressive::s2, boost::re_detail::basic_char_set< charT, traits >::singles_begin(), boost::re_detail::basic_char_set< charT, traits >::singles_end(), boost::re_detail::re_set_long< mask_type >::singleton, boost::re_detail::syntax_element_long_set, and boost::multiprecision::backends::this.
|
inherited |
References boost::re_detail::re_set::_map, BOOST_ASSERT, boost::multiprecision::backends::c, boost::re_detail::char_less(), boost::re_detail::basic_char_set< charT, traits >::classes(), boost::regex_constants::collate, boost::re_detail::basic_char_set< charT, traits >::equivalents_begin(), boost::re_detail::basic_char_set< charT, traits >::equivalents_end(), boost::xpressive::first, boost::multiprecision::backends::i, boost::regbase::icase, boost::re_detail::basic_char_set< charT, traits >::is_negated(), boost::last, boost::multiprecision::backends::negate(), boost::re_detail::basic_char_set< charT, traits >::negated_classes(), boost::re_detail::basic_char_set< charT, traits >::ranges_begin(), boost::re_detail::basic_char_set< charT, traits >::ranges_end(), boost::asio::s, boost::xpressive::s1, boost::xpressive::s2, boost::xpressive::s3, boost::re_detail::basic_char_set< charT, traits >::singles_begin(), boost::re_detail::basic_char_set< charT, traits >::singles_end(), boost::re_detail::syntax_element_set, and boost::multiprecision::backends::this.
|
inherited |
void boost::re_detail::basic_regex_parser< charT, traits >::fail | ( | regex_constants::error_type | error_code, |
std::ptrdiff_t | position | ||
) |
void boost::re_detail::basic_regex_parser< charT, traits >::fail | ( | regex_constants::error_type | error_code, |
std::ptrdiff_t | position, | ||
std::string | message, | ||
std::ptrdiff_t | start_pos | ||
) |
|
inline |
|
inherited |
|
inlineinherited |
|
inlineinherited |
digraph< charT > boost::re_detail::basic_regex_parser< charT, traits >::get_next_set_literal | ( | basic_char_set< charT, traits > & | char_set | ) |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inherited |
void boost::re_detail::basic_regex_parser< charT, traits >::parse | ( | const charT * | p1, |
const charT * | p2, | ||
unsigned | flags | ||
) |
References boost::regbase::basic_syntax_group, boost::fusion::distance(), boost::xpressive::regex_constants::error_paren, boost::regbase::icase, boost::re_detail::re_brace::icase, boost::re_detail::re_brace::index, boost::unit_test::framework::init(), boost::regbase::literal, boost::regbase::main_option_type, boost::regbase::no_empty_expressions, boost::regbase::perl_syntax_group, and boost::re_detail::syntax_element_startmark.
Referenced by boost::re_detail::basic_regex_implementation< charT, traits >::assign().
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_all | ( | ) |
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_alt | ( | ) |
References boost::re_detail::re_jump::alt, boost::re_detail::offset_type::i, icase, boost::regbase::main_option_type, boost::regbase::no_empty_expressions, boost::regbase::perl_syntax_group, boost::re_detail::re_alt_size, boost::re_detail::syntax_element_alt, boost::re_detail::syntax_element_jump, boost::re_detail::syntax_element_startmark, boost::re_detail::syntax_element_toggle_case, and boost::multiprecision::backends::this.
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_backref | ( | ) |
References BOOST_ASSERT, boost::multiprecision::backends::c, boost::multiprecision::backends::i, boost::regbase::icase, boost::re_detail::re_brace::icase, boost::re_detail::re_brace::index, boost::regbase::main_option_type, boost::regbase::no_bk_refs, boost::multiprecision::backends::pb, boost::regbase::perl_syntax_group, and boost::re_detail::syntax_element_backref.
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_basic | ( | ) |
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_basic_escape | ( | ) |
References boost::re_detail::basic_char_set< charT, traits >::add_class(), boost::regex_constants::bk_plus_qm, boost::regbase::bk_vbar, BOOST_FALLTHROUGH, boost::regbase::emacs_ex, boost::xpressive::regex_constants::error_brace, boost::xpressive::regex_constants::error_ctype, boost::xpressive::regex_constants::error_escape, boost::re_detail::basic_char_set< charT, traits >::negate(), boost::multiprecision::backends::negate(), boost::regbase::no_intervals, boost::re_detail::syntax_element_buffer_end, boost::re_detail::syntax_element_buffer_start, boost::re_detail::syntax_element_within_word, boost::re_detail::syntax_element_word_boundary, boost::re_detail::syntax_element_word_end, and boost::re_detail::syntax_element_word_start.
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_extended | ( | ) |
References BOOST_FALLTHROUGH, boost::xpressive::regex_constants::error_badrepeat, boost::xpressive::regex_constants::error_brace, boost::re_detail::is_separator(), boost::regbase::mod_x, boost::regbase::newline_alt, boost::regex_constants::no_mod_m, boost::regbase::no_perl_ex, boost::re_detail::syntax_element_buffer_end, boost::re_detail::syntax_element_buffer_start, boost::re_detail::syntax_element_end_line, and boost::re_detail::syntax_element_start_line.
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_extended_escape | ( | ) |
References boost::re_detail::basic_char_set< charT, traits >::add_class(), BOOST_FALLTHROUGH, boost::xpressive::regex_constants::error_ctype, boost::xpressive::regex_constants::error_escape, boost::re_detail::hash_value_from_capture_name(), boost::multiprecision::backends::i, boost::regbase::icase, boost::re_detail::re_brace::icase, boost::re_detail::re_brace::index, boost::serialization::void_cast_detail::m_base, boost::regbase::main_option_type, boost::re_detail::basic_char_set< charT, traits >::negate(), boost::multiprecision::backends::negate(), boost::regbase::no_perl_ex, boost::multiprecision::backends::pb, boost::re_detail::syntax_element_backref, boost::re_detail::syntax_element_buffer_end, boost::re_detail::syntax_element_buffer_start, boost::re_detail::syntax_element_combining, boost::re_detail::syntax_element_restart_continue, boost::re_detail::syntax_element_soft_buffer_end, boost::re_detail::syntax_element_startmark, boost::re_detail::syntax_element_within_word, boost::re_detail::syntax_element_word_boundary, boost::re_detail::syntax_element_word_end, and boost::re_detail::syntax_element_word_start.
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_inner_set | ( | basic_char_set< charT, traits > & | char_set | ) |
References boost::re_detail::basic_char_set< charT, traits >::add_class(), boost::re_detail::basic_char_set< charT, traits >::add_equivalent(), boost::re_detail::basic_char_set< charT, traits >::add_negated_class(), boost::regbase::basic_syntax_group, boost::re_detail::basic_char_set< charT, traits >::empty(), boost::xpressive::regex_constants::error_brack, boost::xpressive::regex_constants::error_collate, boost::xpressive::regex_constants::error_ctype, boost::regbase::main_option_type, boost::regbase::no_char_classes, boost::re_detail::syntax_element_word_end, and boost::re_detail::syntax_element_word_start.
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_literal | ( | ) |
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_match_any | ( | ) |
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_open_paren | ( | ) |
References boost::regbase::basic_syntax_group, BOOST_ASSERT, boost::fusion::distance(), boost::regbase::emacs_ex, boost::xpressive::regex_constants::error_paren, icase, boost::regbase::icase, boost::re_detail::re_brace::icase, boost::re_detail::re_brace::index, boost::serialization::void_cast_detail::m_base, boost::regbase::main_option_type, boost::regbase::no_perl_ex, boost::regbase::nosubs, boost::multiprecision::backends::pb, boost::regbase::save_subexpression_location, boost::re_detail::syntax_element_endmark, boost::re_detail::syntax_element_startmark, and boost::re_detail::syntax_element_toggle_case.
regex_constants::syntax_option_type boost::re_detail::basic_regex_parser< charT, traits >::parse_options | ( | ) |
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_perl_extension | ( | ) |
References boost::re_detail::re_jump::alt, boost::asio::b, BOOST_ASSERT, BOOST_FALLTHROUGH, boost::parameter::python::def(), boost::fusion::distance(), boost::xpressive::regex_constants::error_badrepeat, boost::xpressive::regex_constants::error_paren, boost::re_detail::hash_value_from_capture_name(), boost::re_detail::offset_type::i, icase, boost::regbase::icase, boost::re_detail::re_brace::icase, boost::re_detail::re_brace::index, boost::serialization::void_cast_detail::m_base, boost::next(), boost::re_detail::re_syntax_base::next, boost::regbase::nosubs, boost::multiprecision::backends::pb, boost::multiprecision::backends::pr, boost::regbase::save_subexpression_location, boost::re_detail::re_recurse::state_id, boost::re_detail::syntax_element_alt, boost::re_detail::syntax_element_assert_backref, boost::re_detail::syntax_element_backstep, boost::re_detail::syntax_element_endmark, boost::re_detail::syntax_element_jump, boost::re_detail::syntax_element_recurse, boost::re_detail::syntax_element_startmark, boost::re_detail::syntax_element_toggle_case, boost::flyweights::t, and boost::re_detail::re_syntax_base::type.
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_QE | ( | ) |
References boost::end, and boost::xpressive::regex_constants::error_escape.
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_repeat | ( | std::size_t | low = 0 , |
std::size_t | high = (std::numeric_limits<std::size_t>::max)() |
||
) |
References boost::re_detail::re_jump::alt, boost::regbase::basic_syntax_group, boost::multiprecision::backends::c, boost::fusion::distance(), boost::regbase::emacs_ex, boost::xpressive::regex_constants::error_badrepeat, boost::re_detail::re_repeat::greedy, boost::polygon::high(), boost::re_detail::offset_type::i, boost::regbase::icase, boost::re_detail::re_brace::icase, boost::re_detail::re_brace::index, boost::re_detail::re_repeat::leading, boost::re_detail::re_literal::length, boost::proto::lit(), boost::polygon::low(), boost::regbase::main_option_type, boost::re_detail::re_repeat::max, boost::re_detail::re_repeat::min, boost::regbase::no_perl_ex, boost::multiprecision::backends::pb, boost::re_detail::re_repeater_size, boost::re_detail::syntax_element_alt, boost::re_detail::syntax_element_backstep, boost::re_detail::syntax_element_buffer_end, boost::re_detail::syntax_element_buffer_start, boost::re_detail::syntax_element_end_line, boost::re_detail::syntax_element_endmark, boost::re_detail::syntax_element_jump, boost::re_detail::syntax_element_literal, boost::re_detail::syntax_element_rep, boost::re_detail::syntax_element_restart_continue, boost::re_detail::syntax_element_soft_buffer_end, boost::re_detail::syntax_element_start_line, boost::re_detail::syntax_element_startmark, boost::re_detail::syntax_element_within_word, boost::re_detail::syntax_element_word_boundary, boost::re_detail::syntax_element_word_end, boost::re_detail::syntax_element_word_start, and boost::multiprecision::backends::this.
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_repeat_range | ( | bool | isbasic | ) |
bool boost::re_detail::basic_regex_parser< charT, traits >::parse_set | ( | ) |
References boost::re_detail::basic_char_set< charT, traits >::add_class(), boost::re_detail::basic_char_set< charT, traits >::add_negated_class(), boost::xpressive::regex_constants::error_brack, boost::xpressive::regex_constants::error_ctype, and boost::re_detail::basic_char_set< charT, traits >::negate().
void boost::re_detail::basic_regex_parser< charT, traits >::parse_set_literal | ( | basic_char_set< charT, traits > & | char_set | ) |
charT boost::re_detail::basic_regex_parser< charT, traits >::unescape_character | ( | ) |
References boost::fusion::distance(), boost::xpressive::regex_constants::error_badbrace, boost::xpressive::regex_constants::error_collate, boost::xpressive::regex_constants::error_escape, boost::multiprecision::backends::i, boost::python::len(), boost::accumulators::extract::max, boost::accumulators::extract::min, boost::asio::s, boost::phoenix::val(), and boost::re_detail::valid_value().
bool boost::re_detail::basic_regex_parser< charT, traits >::unwind_alts | ( | std::ptrdiff_t | last_paren_start | ) |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
Referenced by boost::re_detail::basic_regex_creator< charT, traits >::basic_regex_creator(), boost::re_detail::basic_regex_creator< charT, traits >::flags(), boost::re_detail::basic_regex_creator< charT, traits >::getaddress(), boost::re_detail::basic_regex_creator< charT, traits >::getoffset(), and boost::re_detail::basic_regex_creator< charT, traits >::init().
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |