diff --git a/include/nanofmt/format.inl b/include/nanofmt/format.inl index 0e4a206..c98518d 100644 --- a/include/nanofmt/format.inl +++ b/include/nanofmt/format.inl @@ -20,6 +20,10 @@ namespace NANOFMT_NS { template struct value_type_map; + template + using enable_if_format_string = + std::enable_if_t()))>>; + struct char_buffer { char const* chars = nullptr; std::size_t max_length = 0; @@ -113,8 +117,8 @@ namespace NANOFMT_NS { constexpr /*implicit*/ format_string(char const (&str)[N]) noexcept; constexpr explicit format_string(char const* const zstr) noexcept; - template - constexpr explicit format_string(StringT const& string) noexcept; + template > + constexpr /*implicit*/ format_string(StringT const& string) noexcept; char const* begin = nullptr; char const* end = nullptr; @@ -243,7 +247,7 @@ namespace NANOFMT_NS { : begin(zstr) , end(begin + __builtin_strlen(begin)) {} - template + template constexpr format_string::format_string(StringT const& string) noexcept : format_string(to_format_string(string)) {} template