return ptr_ < other.ptr_;
}
+ #if !defined(BOOST_EMBTC)
+
template< typename charT, class traitsT >
friend std::basic_ostream< charT, traitsT > &
operator<<( std::basic_ostream< charT, traitsT > & os, continuation const& other) {
}
}
+ #else
+
+ template< typename charT, class traitsT >
+ friend std::basic_ostream< charT, traitsT > &
+ operator<<( std::basic_ostream< charT, traitsT > & os, continuation const& other);
+
+ #endif
+
void swap( continuation & other) noexcept {
std::swap( ptr_, other.ptr_);
}
};
+#if defined(BOOST_EMBTC)
+
+ template< typename charT, class traitsT >
+ inline std::basic_ostream< charT, traitsT > &
+ operator<<( std::basic_ostream< charT, traitsT > & os, continuation const& other) {
+ if ( nullptr != other.ptr_) {
+ return os << other.ptr_;
+ } else {
+ return os << "{not-a-context}";
+ }
+ }
+
+#endif
+
template<
typename Fn,
typename = detail::disable_overload< continuation, Fn >