#include <boost/config.hpp>#include <boost/preprocessor/punctuation/comma.hpp>#include <boost/mpl/logical.hpp>#include <boost/utility/enable_if.hpp>#include <boost/proto/proto_fwd.hpp>#include <boost/proto/tags.hpp>#include <boost/proto/domain.hpp>#include <boost/proto/matches.hpp>#include <boost/proto/generate.hpp>#include <boost/proto/make_expr.hpp>

Namespaces | |
| boost | |
| Duration formatting facet for input.  | |
| boost::proto | |
| boost::proto::detail | |
| boost::proto::exprns_ | |
Macros | |
| #define | BOOST_PROTO_UNARY_OP_IS_POSTFIX_0 | 
| #define | BOOST_PROTO_UNARY_OP_IS_POSTFIX_1 , int | 
| #define | BOOST_PROTO_DEFINE_UNARY_OPERATOR(OP, TAG, TRAIT, DOMAIN, POST) | 
| #define | BOOST_PROTO_DEFINE_BINARY_OPERATOR(OP, TAG, TRAIT, DOMAIN) | 
| #define | BOOST_PROTO_DEFINE_OPERATORS(TRAIT, DOMAIN) | 
| #define | BOOST_PROTO_APPLY_UNARY_(TRAIT, ARG) TRAIT<ARG> | 
| #define | BOOST_PROTO_APPLY_BINARY_(TRAIT, LEFT, RIGHT) boost::mpl::or_<TRAIT<LEFT>, TRAIT<RIGHT> > | 
| #define | BOOST_PROTO_APPLY_UNARY_(TRAIT, ARG) | 
| #define | BOOST_PROTO_APPLY_BINARY_(TRAIT, LEFT, RIGHT) | 
Functions | |
| template<typename Arg > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_unary < deduce_domain, deduce_domain::proto_grammar, is_extension< Arg > , boost::proto::tag::unary_plus, Arg const & >::type const  | boost::proto::exprns_::operator+ (Arg &&arg) | 
| template<typename Arg > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_unary < deduce_domain, deduce_domain::proto_grammar, is_extension< Arg > , boost::proto::tag::negate, Arg const & >::type const  | boost::proto::exprns_::operator- (Arg &&arg) | 
| template<typename Arg > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_unary < deduce_domain, deduce_domain::proto_grammar, is_extension< Arg > , boost::proto::tag::dereference, Arg const & >::type const  | boost::proto::exprns_::operator* (Arg &&arg) | 
| template<typename Arg > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_unary < deduce_domain, deduce_domain::proto_grammar, is_extension< Arg > , boost::proto::tag::complement, Arg const & >::type const  | boost::proto::exprns_::operator~ (Arg &&arg) | 
| template<typename Arg > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_unary < deduce_domain, deduce_domain::proto_grammar, is_extension< Arg > , boost::proto::tag::address_of, Arg const & >::type const  | boost::proto::exprns_::operator& (Arg &&arg) | 
| template<typename Arg > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_unary < deduce_domain, deduce_domain::proto_grammar, is_extension< Arg > , boost::proto::tag::logical_not, Arg const & >::type const  | boost::proto::exprns_::operator! (Arg &&arg) | 
| template<typename Arg > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_unary < deduce_domain, deduce_domain::proto_grammar, is_extension< Arg > , boost::proto::tag::pre_inc, Arg const & >::type const  | boost::proto::exprns_::operator++ (Arg &&arg) | 
| template<typename Arg > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_unary < deduce_domain, deduce_domain::proto_grammar, is_extension< Arg > , boost::proto::tag::pre_dec, Arg const & >::type const  | boost::proto::exprns_::operator-- (Arg &&arg) | 
| template<typename Arg > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_unary < deduce_domain, deduce_domain::proto_grammar, is_extension< Arg > , boost::proto::tag::post_inc, Arg const & >::type const  | boost::proto::exprns_::operator++ (Arg &&arg, int) | 
| template<typename Arg > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_unary < deduce_domain, deduce_domain::proto_grammar, is_extension< Arg > , boost::proto::tag::post_dec, Arg const & >::type const  | boost::proto::exprns_::operator-- (Arg &&arg, int) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::shift_left, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator<< (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::shift_right, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator>> (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::multiplies, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator* (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::divides, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator/ (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::modulus, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator% (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::plus, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator+ (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::minus, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator- (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::less, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator< (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::greater, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator> (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::less_equal, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator<= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::greater_equal, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator>= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::equal_to, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator== (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::not_equal_to, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator!= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::logical_or, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator|| (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::logical_and, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator&& (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::bitwise_and, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator& (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::bitwise_or, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator| (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::bitwise_xor, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator^ (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::comma, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator BOOST_PP_COMMA() (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::mem_ptr, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator->* (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::shift_left_assign, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator<<= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::shift_right_assign, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator>>= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::multiplies_assign, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator*= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::divides_assign, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator/= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::modulus_assign, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator%= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::plus_assign, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator+= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::minus_assign, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator-= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::bitwise_and_assign, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator&= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::bitwise_or_assign, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator|= (Left &&left, Right &&right) | 
| template<typename Left , typename Right > | |
| BOOST_PROTO_DISABLE_MSVC_C4714  BOOST_FORCEINLINE boost::proto::detail::enable_binary < deduce_domain, deduce_domain::proto_grammar, boost::mpl::or_< is_extension < Left >, is_extension< Right > >, boost::proto::tag::bitwise_xor_assign, Left const &, Right const & > ::type const  | boost::proto::exprns_::operator^= (Left &&left, Right &&right) | 
| template<typename A0 , typename A1 , typename A2 > | |
| BOOST_FORCEINLINE  result_of::make_expr < tag::if_else_, deduce_domain, A0 const &, A1 const &, A2 const & >::type const  | boost::proto::exprns_::if_else (A0 const &a0, A1 const &a1, A2 const &a2) | 
| #define BOOST_PROTO_APPLY_BINARY_ | ( | TRAIT, | |
| LEFT, | |||
| RIGHT | |||
| ) | boost::mpl::or_<TRAIT<LEFT>, TRAIT<RIGHT> > | 
| #define BOOST_PROTO_APPLY_BINARY_ | ( | TRAIT, | |
| LEFT, | |||
| RIGHT | |||
| ) | 
| #define BOOST_PROTO_APPLY_UNARY_ | ( | TRAIT, | |
| ARG | |||
| ) | TRAIT<ARG> | 
| #define BOOST_PROTO_APPLY_UNARY_ | ( | TRAIT, | |
| ARG | |||
| ) | 
| #define BOOST_PROTO_DEFINE_BINARY_OPERATOR | ( | OP, | |
| TAG, | |||
| TRAIT, | |||
| DOMAIN | |||
| ) | 
| #define BOOST_PROTO_DEFINE_OPERATORS | ( | TRAIT, | |
| DOMAIN | |||
| ) | 
| #define BOOST_PROTO_DEFINE_UNARY_OPERATOR | ( | OP, | |
| TAG, | |||
| TRAIT, | |||
| DOMAIN, | |||
| POST | |||
| ) | 
| #define BOOST_PROTO_UNARY_OP_IS_POSTFIX_0 | 
| #define BOOST_PROTO_UNARY_OP_IS_POSTFIX_1 , int |