| * Unicode routines for use inside the server |
| * Copyright (C) 1999 Alexandre Julliard |
| #ifndef __WINE_SERVER_UNICODE_H |
| #define __WINE_SERVER_UNICODE_H |
| #error This file can only be used in the Wine server |
| static inline size_t strlenW( const WCHAR *str ) |
| static inline int strcmpW( const WCHAR *str1, const WCHAR *str2 ) |
| while (*str1 && (*str1 == *str2)) { str1++; str2++; } |
| #define towupper(ch) (HIBYTE(ch) ? ch : (WCHAR)toupper(LOBYTE(ch))) |
| static inline int strcmpiW( const WCHAR *str1, const WCHAR *str2 ) |
| while (*str1 && (towupper(*str1) == towupper(*str2))) { str1++; str2++; } |
| return towupper(*str1) - towupper(*str2); |
| static inline WCHAR *strcpyW( WCHAR *src, const WCHAR *dst ) |
| while ((*src++ = *dst++)); |
| static inline WCHAR *strdupW( const WCHAR *str ) |
| size_t len = (strlenW(str) + 1) * sizeof(WCHAR); |
| return memdup( str, len ); |
| extern int dump_strW( const WCHAR *str, size_t len, FILE *f, char escape[2] ); |
| #endif /* __WINE_SERVER_UNICODE_H */ |