19 #ifndef RAPIDJSON_INTERNAL_STRFUNC_H_ 20 #define RAPIDJSON_INTERNAL_STRFUNC_H_ 23 #include "../stream.h" 35 template <
typename Ch>
54 template <
typename Encoding>
60 const typename Encoding::Ch *end = s + length;
62 while (is.
src_ < end) {
64 if (!Encoding::Decode(is, &codepoint))
return false;
74 #endif // RAPIDJSON_INTERNAL_STRFUNC_H_ RAPIDJSON_NAMESPACE_BEGIN typedef unsigned SizeType
Size type (for string lengths, array sizes, etc.)
#define RAPIDJSON_ASSERT(x)
Assertion.
#define RAPIDJSON_NAMESPACE_END
provide custom rapidjson namespace (closing expression)
const Ch * src_
Current read position.
#define RAPIDJSON_NAMESPACE_BEGIN
provide custom rapidjson namespace (opening expression)
bool CountStringCodePoint(const typename Encoding::Ch *s, SizeType length, SizeType *outCount)
Returns number of code points in a encoded string.
SizeType StrLen(const Ch *s)
Custom strlen() which works on different character types.