15 #ifndef RAPIDJSON_INTERNAL_STRFUNC_H_ 16 #define RAPIDJSON_INTERNAL_STRFUNC_H_ 18 #include "../stream.h" 20 RAPIDJSON_NAMESPACE_BEGIN
29 template <
typename Ch>
30 inline SizeType StrLen(
const Ch* s) {
37 template<
typename Encoding>
38 bool CountStringCodePoint(
const typename Encoding::Ch* s,
SizeType length,
SizeType* outCount) {
39 GenericStringStream<Encoding> is(s);
40 const typename Encoding::Ch* end = s + length;
42 while (is.src_ < end) {
44 if (!Encoding::Decode(is, &codepoint))
53 RAPIDJSON_NAMESPACE_END
55 #endif // RAPIDJSON_INTERNAL_STRFUNC_H_ unsigned SizeType
Size type (for string lengths, array sizes, etc.)
Definition: rapidjson.h:380