Sweden-Number/server/unicode.h

56 lines
1.1 KiB
C
Raw Normal View History

1999-11-23 20:39:11 +01:00
/*
* Unicode routines for use inside the server
*
* Copyright (C) 1999 Alexandre Julliard
*/
#ifndef __WINE_SERVER_UNICODE_H
#define __WINE_SERVER_UNICODE_H
#ifndef __WINE_SERVER__
#error This file can only be used in the Wine server
#endif
#include "config.h"
#include <ctype.h>
#ifdef HAVE_WCTYPE_H
#include <wctype.h>
#endif
#include "windef.h"
static inline size_t strlenW( const WCHAR *str )
{
const WCHAR *s = str;
while (*s) s++;
return s - str;
}
static inline int strcmpW( const WCHAR *str1, const WCHAR *str2 )
{
while (*str1 && (*str1 == *str2)) { str1++; str2++; }
return *str1 - *str2;
}
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 )
{
const WCHAR *ret = dst;
while ((*src++ = *dst++));
return (WCHAR *)ret;
}
static inline WCHAR *strdupW( const WCHAR *str )
{
size_t len = (strlenW(str) + 1) * sizeof(WCHAR);
return memdup( str, len );
}
#endif /* __WINE_SERVER_UNICODE_H */