/usr/local/include/mapbox
NameSizeModeActions
optional.hpp15750644editdlrm
recursive_wrapper.hpp26320644editdlrm
variant.hpp315750644editdlrm
variant_io.hpp9120644editdlrm
variant_visitor.hpp7430644editdlrm
Edit: /usr/local/include/mapbox/variant_io.hpp (912B)
#ifndef MAPBOX_UTIL_VARIANT_IO_HPP #define MAPBOX_UTIL_VARIANT_IO_HPP #include #include namespace mapbox { namespace util { namespace detail { // operator<< helper template class printer { public: explicit printer(Out& out) : out_(out) {} printer& operator=(printer const&) = delete; // visitor template void operator()(T const& operand) const { out_ << operand; } private: Out& out_; }; } // operator<< template VARIANT_INLINE std::basic_ostream& operator<<(std::basic_ostream& out, variant const& rhs) { detail::printer> visitor(out); apply_visitor(visitor, rhs); return out; } } // namespace util } // namespace mapbox #endif // MAPBOX_UTIL_VARIANT_IO_HPP