Defines the syntax elements of xpressive's action expressions. More...
#include <boost/config.hpp>
#include <boost/preprocessor/punctuation/comma_if.hpp>
#include <boost/ref.hpp>
#include <boost/mpl/if.hpp>
#include <boost/mpl/or.hpp>
#include <boost/mpl/int.hpp>
#include <boost/mpl/assert.hpp>
#include <boost/noncopyable.hpp>
#include <boost/lexical_cast.hpp>
#include <boost/throw_exception.hpp>
#include <boost/utility/enable_if.hpp>
#include <boost/type_traits/is_same.hpp>
#include <boost/type_traits/is_const.hpp>
#include <boost/type_traits/is_integral.hpp>
#include <boost/type_traits/decay.hpp>
#include <boost/type_traits/remove_cv.hpp>
#include <boost/type_traits/remove_reference.hpp>
#include <boost/range/iterator_range.hpp>
#include <boost/xpressive/detail/detail_fwd.hpp>
#include <boost/xpressive/detail/core/state.hpp>
#include <boost/xpressive/detail/core/matcher/attr_matcher.hpp>
#include <boost/xpressive/detail/core/matcher/attr_end_matcher.hpp>
#include <boost/xpressive/detail/core/matcher/attr_begin_matcher.hpp>
#include <boost/xpressive/detail/core/matcher/predicate_matcher.hpp>
#include <boost/xpressive/detail/utility/ignore_unused.hpp>
#include <boost/xpressive/detail/static/type_traits.hpp>
#include <boost/typeof/std/map.hpp>
#include <boost/typeof/std/string.hpp>
#include <boost/proto/core.hpp>
#include <boost/proto/transform.hpp>
#include <boost/xpressive/detail/core/matcher/action_matcher.hpp>
#include <BOOST_PROTO_LOCAL_ITERATE()>
Namespaces | |
boost | |
Duration formatting facet for input. | |
boost::xpressive | |
boost::xpressive::detail | |
boost::xpressive::op | |
Macros | |
#define | BOOST_PROTO_LOCAL_MACRO(N, typename_A, A_const_ref, A_const_ref_a, a) |
A lazy funtion for constructing objects objects of the specified type. More... | |
#define | BOOST_PROTO_LOCAL_a BOOST_PROTO_a |
INTERNAL ONLY. More... | |
#define | BOOST_PROTO_LOCAL_LIMITS (0, BOOST_PP_DEC(BOOST_PROTO_MAX_ARITY)) |
INTERNAL ONLY. More... | |
Typedefs | |
typedef boost::proto::functional::make_expr < proto::tag::function, proto::default_domain > | boost::xpressive::detail::make_function |
Functions | |
template<typename Args , typename BidiIter > | |
void | boost::xpressive::detail::bind_args (let_< Args > const &args, match_results< BidiIter > &what) |
template<typename T , typename A > | |
detail::make_function::impl < op::as< T > const, A const & > ::result_type const | boost::xpressive::as (A const &a) |
as() is a lazy funtion for lexically casting a parameter to a different type. More... | |
template<typename T , typename A > | |
detail::make_function::impl < op::static_cast_< T > const, A const & >::result_type const | boost::xpressive::static_cast_ (A const &a) |
static_cast_ is a lazy funtion for statically casting a parameter to a different type. More... | |
template<typename T , typename A > | |
detail::make_function::impl < op::dynamic_cast_< T > const, A const & >::result_type const | boost::xpressive::dynamic_cast_ (A const &a) |
dynamic_cast_ is a lazy funtion for dynamically casting a parameter to a different type. More... | |
template<typename T , typename A > | |
detail::make_function::impl < op::const_cast_< T > const, A const & >::result_type const | boost::xpressive::const_cast_ (A const &a) |
dynamic_cast_ is a lazy funtion for const-casting a parameter to a different type. More... | |
template<typename T > | |
value< T > const | boost::xpressive::val (T const &t) |
Helper for constructing value<> objects. More... | |
template<typename T > | |
reference< T > const | boost::xpressive::ref (T &t) |
Helper for constructing reference<> objects. More... | |
template<typename T > | |
reference< T const > const | boost::xpressive::cref (T const &t) |
Helper for constructing reference<> objects that store a reference to const. More... | |
void | boost::xpressive::detail::ignore_unused_regex_actions () |
Variables | |
function< op::at >::type const | boost::xpressive::at = {{}} |
at is a lazy PolymorphicFunctionObject for indexing into a sequence in an xpressive semantic action. More... | |
function< op::push >::type const | boost::xpressive::push = {{}} |
push is a lazy PolymorphicFunctionObject for pushing a value into a container in an xpressive semantic action. More... | |
function< op::push_back > ::type const | boost::xpressive::push_back = {{}} |
push_back is a lazy PolymorphicFunctionObject for pushing a value into a container in an xpressive semantic action. More... | |
function< op::push_front > ::type const | boost::xpressive::push_front = {{}} |
push_front is a lazy PolymorphicFunctionObject for pushing a value into a container in an xpressive semantic action. More... | |
function< op::pop >::type const | boost::xpressive::pop = {{}} |
pop is a lazy PolymorphicFunctionObject for popping the top element from a sequence in an xpressive semantic action. More... | |
function< op::pop_back >::type const | boost::xpressive::pop_back = {{}} |
pop_back is a lazy PolymorphicFunctionObject for popping the back element from a sequence in an xpressive semantic action. More... | |
function< op::pop_front > ::type const | boost::xpressive::pop_front = {{}} |
pop_front is a lazy PolymorphicFunctionObject for popping the front element from a sequence in an xpressive semantic action. More... | |
function< op::top >::type const | boost::xpressive::top = {{}} |
top is a lazy PolymorphicFunctionObject for accessing the top element from a stack in an xpressive semantic action. More... | |
function< op::back >::type const | boost::xpressive::back = {{}} |
back is a lazy PolymorphicFunctionObject for fetching the back element of a sequence in an xpressive semantic action. More... | |
function< op::front >::type const | boost::xpressive::front = {{}} |
front is a lazy PolymorphicFunctionObject for fetching the front element of a sequence in an xpressive semantic action. More... | |
function< op::first >::type const | boost::xpressive::first = {{}} |
first is a lazy PolymorphicFunctionObject for accessing the first element of a std::pair<> in an xpressive semantic action. More... | |
function< op::second >::type const | boost::xpressive::second = {{}} |
second is a lazy PolymorphicFunctionObject for accessing the second element of a std::pair<> in an xpressive semantic action. More... | |
function< op::matched >::type const | boost::xpressive::matched = {{}} |
matched is a lazy PolymorphicFunctionObject for accessing the matched member of a xpressive::sub_match<> in an xpressive semantic action. More... | |
function< op::length >::type const | boost::xpressive::length = {{}} |
length is a lazy PolymorphicFunctionObject for computing the length of a xpressive::sub_match<> in an xpressive semantic action. More... | |
function< op::str >::type const | boost::xpressive::str = {{}} |
str is a lazy PolymorphicFunctionObject for converting a xpressive::sub_match<> to a std::basic_string<> in an xpressive semantic action. More... | |
function< op::insert >::type const | boost::xpressive::insert = {{}} |
insert is a lazy PolymorphicFunctionObject for inserting a value or a range of values into a sequence in an xpressive semantic action. More... | |
function< op::make_pair > ::type const | boost::xpressive::make_pair = {{}} |
make_pair is a lazy PolymorphicFunctionObject for making a std::pair<> in an xpressive semantic action. More... | |
function< op::unwrap_reference > ::type const | boost::xpressive::unwrap_reference = {{}} |
unwrap_reference is a lazy PolymorphicFunctionObject for unwrapping a boost::reference_wrapper<> in an xpressive semantic action. More... | |
proto::terminal < detail::check_tag >::type const | boost::xpressive::check = {{}} |
For adding user-defined assertions to your regular expressions. More... | |
detail::let_< proto::terminal < detail::let_tag >::type > const | boost::xpressive::let = {{{}}} |
For binding local variables to placeholders in semantic actions when constructing a regex_iterator or a regex_token_iterator . More... | |
Defines the syntax elements of xpressive's action expressions.
#define BOOST_PROTO_LOCAL_a BOOST_PROTO_a |
INTERNAL ONLY.
#define BOOST_PROTO_LOCAL_LIMITS (0, BOOST_PP_DEC(BOOST_PROTO_MAX_ARITY)) |
INTERNAL ONLY.
#define BOOST_PROTO_LOCAL_MACRO | ( | N, | |
typename_A, | |||
A_const_ref, | |||
A_const_ref_a, | |||
a | |||
) |
A lazy funtion for constructing objects objects of the specified type.
T | The type of object to construct. |
args | The arguments to the constructor. |
T(xs...)
, where xs...
is the result of evaluating the lazy arguments args...
. INTERNAL ONLY