microfmt
Zero-allocation C++ formatting for constrained environments
Loading...
Searching...
No Matches
microfmt::detail::has_formatter< T, typename > Struct Template Reference

Detects whether formatter<T> has been given a definition (as opposed to just matching the template <typename T, typename Enable = void> struct formatter; forward declaration), using the standard decltype(sizeof(T)) completeness-detection idiom: sizeof of an incomplete type in the immediate context of a partial specialization's template argument substitution is a SFINAE failure, not a hard error. More...

#include <microfmt.hpp>

Inheritance diagram for microfmt::detail::has_formatter< T, typename >:
Inheritance graph
[legend]
Collaboration diagram for microfmt::detail::has_formatter< T, typename >:
Collaboration graph
[legend]

Detailed Description

template<typename T, typename = void>
struct microfmt::detail::has_formatter< T, typename >

Detects whether formatter<T> has been given a definition (as opposed to just matching the template <typename T, typename Enable = void> struct formatter; forward declaration), using the standard decltype(sizeof(T)) completeness-detection idiom: sizeof of an incomplete type in the immediate context of a partial specialization's template argument substitution is a SFINAE failure, not a hard error.


The documentation for this struct was generated from the following file: