File indexing completed on 2025-01-18 09:39:08
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011 #ifndef BOOST_LAMBDA_OPERATOR_ACTIONS_HPP
0012 #define BOOST_LAMBDA_OPERATOR_ACTIONS_HPP
0013
0014 namespace boost {
0015 namespace lambda {
0016
0017
0018
0019
0020 class plus_action {};
0021 class minus_action {};
0022 class multiply_action {};
0023 class divide_action {};
0024 class remainder_action {};
0025
0026
0027
0028 class leftshift_action {};
0029 class rightshift_action {};
0030 class xor_action {};
0031
0032
0033
0034
0035 class and_action {};
0036 class or_action {};
0037 class not_action {};
0038
0039
0040
0041 class less_action {};
0042 class greater_action {};
0043 class lessorequal_action {};
0044 class greaterorequal_action {};
0045 class equal_action {};
0046 class notequal_action {};
0047
0048
0049
0050 class increment_action {};
0051 class decrement_action {};
0052
0053
0054
0055
0056
0057 class addressof_action {};
0058
0059 class contentsof_action {};
0060
0061
0062
0063
0064
0065 template <class Action> class arithmetic_action;
0066 template <class Action> class bitwise_action;
0067 template <class Action> class logical_action;
0068 template <class Action> class relational_action;
0069 template <class Action> class arithmetic_assignment_action;
0070 template <class Action> class bitwise_assignment_action;
0071 template <class Action> class unary_arithmetic_action;
0072 template <class Action> class pre_increment_decrement_action;
0073 template <class Action> class post_increment_decrement_action;
0074
0075
0076
0077
0078
0079
0080 template <class Act> struct is_protectable<arithmetic_action<Act> > {
0081 BOOST_STATIC_CONSTANT(bool, value = true);
0082 };
0083 template <class Act> struct is_protectable<bitwise_action<Act> > {
0084 BOOST_STATIC_CONSTANT(bool, value = true);
0085 };
0086 template <class Act> struct is_protectable<logical_action<Act> > {
0087 BOOST_STATIC_CONSTANT(bool, value = true);
0088 };
0089 template <class Act> struct is_protectable<relational_action<Act> > {
0090 BOOST_STATIC_CONSTANT(bool, value = true);
0091 };
0092 template <class Act>
0093 struct is_protectable<arithmetic_assignment_action<Act> > {
0094 BOOST_STATIC_CONSTANT(bool, value = true);
0095 };
0096 template <class Act> struct is_protectable<bitwise_assignment_action<Act> > {
0097 BOOST_STATIC_CONSTANT(bool, value = true);
0098 };
0099 template <class Act> struct is_protectable<unary_arithmetic_action<Act> > {
0100 BOOST_STATIC_CONSTANT(bool, value = true);
0101 };
0102 template <class Act>
0103 struct is_protectable<pre_increment_decrement_action<Act> > {
0104 BOOST_STATIC_CONSTANT(bool, value = true);
0105 };
0106 template <class Act> struct
0107 is_protectable<post_increment_decrement_action<Act> > {
0108 BOOST_STATIC_CONSTANT(bool, value = true);
0109 };
0110
0111 template <> struct is_protectable<other_action<addressof_action> > {
0112 BOOST_STATIC_CONSTANT(bool, value = true);
0113 };
0114 template <> struct is_protectable<other_action<contentsof_action> > {
0115 BOOST_STATIC_CONSTANT(bool, value = true);
0116 };
0117
0118 template<> struct is_protectable<other_action<subscript_action> > {
0119 BOOST_STATIC_CONSTANT(bool, value = true);
0120 };
0121 template<> struct is_protectable<other_action<assignment_action> > {
0122 BOOST_STATIC_CONSTANT(bool, value = true);
0123 };
0124
0125
0126
0127
0128
0129 }
0130 }
0131
0132 #endif
0133
0134
0135
0136
0137
0138
0139