Remove new macro, update example with correct way to specify fmt lib namespace when fmt_lib namespace alias cannot be used.
This commit is contained in:
		@@ -262,7 +262,14 @@ struct my_type
 | 
			
		||||
        : i(i){};
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
FMTLIB_BEGIN_NAMESPACE
 | 
			
		||||
 | 
			
		||||
// Using a namespace alias like fmt_lib is not allowed when extending an existing namespace,
 | 
			
		||||
// but the correct namespace can still be selected with the SPDLOG_USE_STD_FORMAT macro.
 | 
			
		||||
#ifdef SPDLOG_USE_STD_FORMAT
 | 
			
		||||
    namespace std {
 | 
			
		||||
#else
 | 
			
		||||
    namespace fmt {
 | 
			
		||||
#endif
 | 
			
		||||
template<>
 | 
			
		||||
struct formatter<my_type> : formatter<std::string>
 | 
			
		||||
{
 | 
			
		||||
@@ -271,7 +278,7 @@ struct formatter<my_type> : formatter<std::string>
 | 
			
		||||
        return format_to(ctx.out(), "[my_type i={}]", my.i);
 | 
			
		||||
    }
 | 
			
		||||
};
 | 
			
		||||
FMTLIB_END_NAMESPACE
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void user_defined_example()
 | 
			
		||||
{
 | 
			
		||||
 
 | 
			
		||||
@@ -126,13 +126,6 @@ using sink_ptr = std::shared_ptr<sinks::sink>;
 | 
			
		||||
using sinks_init_list = std::initializer_list<sink_ptr>;
 | 
			
		||||
using err_handler = std::function<void(const std::string &err_msg)>;
 | 
			
		||||
#ifdef SPDLOG_USE_STD_FORMAT
 | 
			
		||||
#    ifndef FMTLIB_BEGIN_NAMESPACE
 | 
			
		||||
#        define FMTLIB_BEGIN_NAMESPACE \
 | 
			
		||||
           namespace std {
 | 
			
		||||
#        define FMTLIB_END_NAMESPACE \
 | 
			
		||||
           }
 | 
			
		||||
#    endif
 | 
			
		||||
 | 
			
		||||
namespace fmt_lib = std;
 | 
			
		||||
 | 
			
		||||
using string_view_t = std::string_view;
 | 
			
		||||
@@ -153,16 +146,7 @@ template<typename... Args>
 | 
			
		||||
using wformat_string_t = std::wstring_view;
 | 
			
		||||
#    endif
 | 
			
		||||
#    define SPDLOG_BUF_TO_STRING(x) x
 | 
			
		||||
 | 
			
		||||
#else // use fmt lib instead of std::format
 | 
			
		||||
 | 
			
		||||
#    ifndef FMTLIB_BEGIN_NAMESPACE
 | 
			
		||||
#        define FMTLIB_BEGIN_NAMESPACE \
 | 
			
		||||
           namespace fmt {
 | 
			
		||||
#        define FMTLIB_END_NAMESPACE \
 | 
			
		||||
           }
 | 
			
		||||
#    endif
 | 
			
		||||
 | 
			
		||||
namespace fmt_lib = fmt;
 | 
			
		||||
 | 
			
		||||
using string_view_t = fmt::basic_string_view<char>;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user