range format fixes

master
Daniel Kolesa 2015-07-04 02:30:46 +01:00
parent 87ff73c810
commit 37367b3c09
1 changed files with 14 additions and 1 deletions

View File

@ -393,7 +393,7 @@ namespace detail {
FmtRangeTest<T>::value,
bool
> = true) {
T range(octa::iter(val));
auto range = octa::iter(val);
if (range.empty()) return 0;
octa::Ptrdiff ret = 0;
octa::Size fmtn = 0;
@ -416,6 +416,19 @@ namespace detail {
return ret;
}
template<typename R, typename T, octa::Size N>
static inline octa::Ptrdiff write_range(R &writer,
const FormatSpec *fl,
const char *sep,
octa::Size seplen,
const T (&arr)[N],
octa::EnableIf<
!FmtRangeTest<T>::value,
bool
> = true) {
return write_range(writer, fl, sep, seplen, octa::iter(arr));
}
template<typename R, typename T>
static inline octa::Ptrdiff write_range(R &, const FormatSpec *,
const char *, octa::Size,