#ifndef TEMP_SIGN_HPP_INCLUDED_19JUN08 #define TEMP_SIGN_HPP_INCLUDED_19JUN08 #include #include #include namespace temp { struct positive_type : boost::mpl::int_<+1> {}; struct negative_type : boost::mpl::int_<-1> {}; template struct sign { typedef typename boost::mpl::if_c< (N > 0), positive_type, negative_type >::type type; BOOST_STATIC_CONSTANT(int, value = type::value); }; } // namespace temp #endif // TEMP_SIGN_HPP_INCLUDED_19JUN08