22 #ifndef LELY_UTIL_USTRING_H_
23 #define LELY_UTIL_USTRING_H_
30 #ifndef LELY_UTIL_USTRING_INLINE
31 #define LELY_UTIL_USTRING_INLINE static inline
46 LELY_UTIL_USTRING_INLINE
size_t str16len(
const char16_t *s);
61 LELY_UTIL_USTRING_INLINE char16_t *
str16ncpy(
62 char16_t *dst,
const char16_t *src,
size_t n);
75 const char16_t *s1,
const char16_t *s2,
size_t n);
77 LELY_UTIL_USTRING_INLINE
size_t
80 const char16_t *cp = s;
87 LELY_UTIL_USTRING_INLINE char16_t *
88 str16ncpy(char16_t *dst,
const char16_t *src,
size_t n)
91 for (; (n != 0) && (*src != 0); n--, cp++, src++)
99 LELY_UTIL_USTRING_INLINE
int
100 str16ncmp(
const char16_t *s1,
const char16_t *s2,
size_t n)
102 for (; n != 0; n--, s1++, s2++) {
103 const int cmp = *s1 - *s2;
104 if ((cmp != 0) || (*s1 == 0))
114 #endif // !LELY_UTIL_USTRING_H_