forked from OctaForge/libostd
re-add zero-argument format impl and fix char_traits usage for const char ranges
This commit is contained in:
parent
33bab6eb72
commit
fd6a47c223
|
@ -912,6 +912,16 @@ namespace detail {
|
|||
written += twr;
|
||||
return written;
|
||||
}
|
||||
|
||||
template<typename R>
|
||||
inline ptrdiff_t format_impl(R &writer, bool, ConstCharRange fmt) {
|
||||
size_t written = 0;
|
||||
detail::WriteSpec spec(fmt, false);
|
||||
if (spec.read_until_spec(writer, &written)) {
|
||||
throw format_error{"format spec without format arguments"};
|
||||
}
|
||||
return written;
|
||||
}
|
||||
} /* namespace detail */
|
||||
|
||||
template<typename R, typename ...A>
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
|
||||
namespace ostd {
|
||||
|
||||
template<typename T, typename TR = std::char_traits<T>>
|
||||
template<typename T, typename TR = std::char_traits<std::remove_const_t<T>>>
|
||||
struct CharRangeBase: InputRange<
|
||||
CharRangeBase<T>, ContiguousRangeTag, T
|
||||
> {
|
||||
|
|
Loading…
Reference in a new issue