9#ifndef INCLUDED_BSLFMT_FORMATTERCHARUTIL
10#define INCLUDED_BSLFMT_FORMATTERCHARUTIL
112#include <bslscm_version.h>
137template <
class t_CHAR>
153 template <
class t_ITERATOR>
154 static t_ITERATOR outputFromChar(
const char *begin,
160 template <
class t_ITERATOR>
161 static t_ITERATOR outputFromChar(
const char value, t_ITERATOR out);
168 static void toUpper(
char *begin,
const char *end);
186 template <
class t_ITERATOR>
187 static t_ITERATOR outputFromChar(
const char *begin,
195 template <
class t_ITERATOR>
196 static t_ITERATOR outputFromChar(
const char value, t_ITERATOR out);
207template <
class t_ITERATOR>
214 typedef typename bsl::iterator_traits<t_ITERATOR>::value_type ValueType;
218 return bsl::copy(begin, end, out);
221template <
class t_ITERATOR>
225 typedef typename bsl::iterator_traits<t_ITERATOR>::value_type ValueType;
239 for (; begin != end; (void)++begin) {
240 if (*begin >=
'a' && *begin <=
'z') {
241 *begin =
static_cast<char>(*begin +
'A' -
'a');
246template <
class t_ITERATOR>
253 typedef typename bsl::iterator_traits<t_ITERATOR>::value_type ValueType;
257 static const std::ctype<wchar_t>& ct =
258 std::use_facet<std::ctype<wchar_t> >(std::locale::classic());
260 for (; begin != end; (void)++begin, (
void)++out) {
264 *out = ct.widen(*begin);
270template <
class t_ITERATOR>
274 typedef typename bsl::iterator_traits<t_ITERATOR>::value_type ValueType;
281 static const std::ctype<wchar_t>& ct =
282 std::use_facet<std::ctype<wchar_t> >(std::locale::classic());
284 *out++ = ct.widen(value);
#define BSLMF_ASSERT(expr)
Definition bslmf_assert.h:231
#define BSLS_ASSERT(X)
Definition bsls_assert.h:1976
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
Definition bslfmt_enablestreamedformatter.h:130
Definition bslmf_issame.h:146