Author: aconway Date: Tue Aug 4 19:27:57 2009 New Revision: 800931 URL: http://svn.apache.org/viewvc?rev=800931&view=rev Log: Explicit Msg::op<< overrides for integral types, fixes a store compile problem.
Modified: qpid/trunk/qpid/cpp/include/qpid/Msg.h Modified: qpid/trunk/qpid/cpp/include/qpid/Msg.h URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/include/qpid/Msg.h?rev=800931&r1=800930&r2=800931&view=diff ============================================================================== --- qpid/trunk/qpid/cpp/include/qpid/Msg.h (original) +++ qpid/trunk/qpid/cpp/include/qpid/Msg.h Tue Aug 4 19:27:57 2009 @@ -43,14 +43,29 @@ Msg(const Msg& m) : os(m.str()) {} std::string str() const { return os.str(); } operator std::string() const { return str(); } + + Msg& operator<<(long n) { os << n; return *this; } + Msg& operator<<(unsigned long n) { os << n; return *this; } + Msg& operator<<(bool n) { os << n; return *this; } + Msg& operator<<(short n) { os << n; return *this; } + Msg& operator<<(unsigned short n) { os << n; return *this; } + Msg& operator<<(int n) { os << n; return *this; } + Msg& operator<<(unsigned int n) { os << n; return *this; } +#ifdef _GLIBCXX_USE_LONG_LONG + Msg& operator<<(long long n) { os << n; return *this; } + Msg& operator<<(unsigned long long n) { os << n; return *this; } +#endif + Msg& operator<<(double n) { os << n; return *this; } + Msg& operator<<(float n) { os << n; return *this; } + Msg& operator<<(long double n) { os << n; return *this; } + + template <class T> Msg& operator<<(const T& t) { os <<t; return *this; } }; -template <class T> const Msg& operator<<(const Msg& m, const T& t) { - const_cast<std::ostringstream&>(m.os)<<t; return m; -} + inline std::ostream& operator<<(std::ostream& o, const Msg& m) { - return o<<m.str(); + return o << m.str(); } /** Construct a message using operator << and append (file:line) */ --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:commits-subscr...@qpid.apache.org