arithmetic.hpp 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /*==============================================================================
  2. Copyright (c) 2005-2010 Joel de Guzman
  3. Copyright (c) 2010 Thomas Heller
  4. Distributed under the Boost Software License, Version 1.0. (See accompanying
  5. file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
  6. ==============================================================================*/
  7. #ifndef BOOST_PHOENIX_OPERATOR_ARITHMETIC_HPP
  8. #define BOOST_PHOENIX_OPERATOR_ARITHMETIC_HPP
  9. #include <boost/phoenix/operator/detail/define_operator.hpp>
  10. #include <boost/phoenix/core/expression.hpp>
  11. #include <boost/proto/operators.hpp>
  12. namespace boost { namespace phoenix
  13. {
  14. BOOST_PHOENIX_UNARY_OPERATORS(
  15. (negate)
  16. (unary_plus)
  17. (pre_inc)
  18. (pre_dec)
  19. (post_inc)
  20. (post_dec)
  21. )
  22. BOOST_PHOENIX_BINARY_OPERATORS(
  23. (plus_assign)
  24. (minus_assign)
  25. (multiplies_assign)
  26. (divides_assign)
  27. (modulus_assign)
  28. (plus)
  29. (minus)
  30. (multiplies)
  31. (divides)
  32. (modulus)
  33. )
  34. using proto::exprns_::operator++;
  35. using proto::exprns_::operator--;
  36. using proto::exprns_::operator+=;
  37. using proto::exprns_::operator-=;
  38. using proto::exprns_::operator*=;
  39. using proto::exprns_::operator/=;
  40. using proto::exprns_::operator%=;
  41. using proto::exprns_::operator+;
  42. using proto::exprns_::operator-;
  43. using proto::exprns_::operator*;
  44. using proto::exprns_::operator/;
  45. using proto::exprns_::operator%;
  46. }}
  47. #include <boost/phoenix/operator/detail/undef_operator.hpp>
  48. #endif