28 #ifndef YB_INC_YSTDEX_CSTRING_H_
29 #define YB_INC_YSTDEX_CSTRING_H_ 1
33 #include <type_traits>
67 strcpycat(
char*,
const char*,
const char*);
77 strcatdup(
const char*,
const char*,
void*(*)(
size_t) = std::malloc);
84 template<
typename _tChar>
88 return std::char_traits<_tChar>::eq(c, _tChar());
107 template<
typename _tChar>
127 template<
typename _tChar>
128 YB_PURE typename std::char_traits<_tChar>::int_type
134 typename std::char_traits<_tChar>::int_type d(0);
148 template<
typename _tChar>
149 YB_PURE typename std::char_traits<_tChar>::int_type
155 typename std::char_traits<_tChar>::int_type d(0);
170 template<
typename _tChar>
183 template<
typename _tChar>
188 + std::char_traits<_tChar>::eq(*s, c);
198 template<
typename _tChar>
213 template<
typename _tChar>
217 return n == 0 ? _tChar() : (!std::char_traits<_tChar>::eq(*s1, *s2)
229 template<
typename _tChar>
244 template<
typename _tChar>
260 template<
typename _tChar>