| Home | Libraries | People | FAQ | More

### Header <boost/icl/functors.hpp>

    namespace boost {
      namespace icl {
        template<typename Type> struct identity_based_inplace_combine;
        template<typename Type> struct unit_element_based_inplace_combine;
        template<typename Type> struct inplace_identity;
        template<typename Type> struct inplace_erasure;
        template<typename Type> struct inplace_plus;
        template<typename Type> struct inplace_minus;
        template<typename Type> struct inplace_bit_add;
        template<typename Type> struct inplace_bit_subtract;
        template<typename Type> struct inplace_bit_and;
        template<typename Type> struct inplace_bit_xor;
        template<typename Type> struct inplace_et;
        template<typename Type> struct inplace_caret;
        template<typename Type> struct inplace_insert;
        template<typename Type> struct inplace_erase;
        template<typename Type> struct inplace_star;
        template<typename Type> struct inplace_slash;
        template<typename Type> struct inplace_max;
        template<typename Type> struct inplace_min;
        template<typename Type> struct inter_section;

        template<typename Type> struct inverse<icl::inplace_plus< Type >>;
        template<typename Type> struct inverse<icl::inplace_minus< Type >>;
        template<typename Type> struct inverse<icl::inplace_bit_add< Type >>;
        template<typename Type> struct inverse<icl::inplace_bit_subtract< Type >>;
        template<typename Type> struct inverse<icl::inplace_et< Type >>;
        template<typename Type> struct inverse<icl::inplace_caret< Type >>;
        template<typename Type> struct inverse<icl::inplace_bit_and< Type >>;
        template<typename Type> struct inverse<icl::inplace_bit_xor< Type >>;
        template<typename Type> struct inverse<icl::inplace_star< Type >>;
        template<typename Type> struct inverse<icl::inplace_slash< Type >>;
        template<typename Type> struct inverse<icl::inplace_max< Type >>;
        template<typename Type> struct inverse<icl::inplace_min< Type >>;
        template<typename Type> struct inverse<icl::inter_section< Type >>;

        template<typename Functor> struct is_negative;

        template<typename Type> struct is_negative<icl::inplace_minus< Type >>;
        template<typename Type>
          struct is_negative<icl::inplace_bit_subtract< Type >>;

        template<typename Combiner> struct conversion;
        template<typename Combiner> struct version;

        template<> struct version<icl::inplace_minus< short >>;
        template<> struct version<icl::inplace_minus< int >>;
        template<> struct version<icl::inplace_minus< long >>;
        template<> struct version<icl::inplace_minus< long long >>;
        template<> struct version<icl::inplace_minus< float >>;
        template<> struct version<icl::inplace_minus< double >>;
        template<> struct version<icl::inplace_minus< long double >>;
        template<typename Type> struct version<icl::inplace_minus< Type >>;
      }
    }