| Index: icu46/source/common/uhash_us.cpp
|
| ===================================================================
|
| --- icu46/source/common/uhash_us.cpp (revision 0)
|
| +++ icu46/source/common/uhash_us.cpp (revision 0)
|
| @@ -0,0 +1,68 @@
|
| +/*
|
| +******************************************************************************
|
| +* Copyright (C) 1997-2010, International Business Machines
|
| +* Corporation and others. All Rights Reserved.
|
| +******************************************************************************
|
| +* Date Name Description
|
| +* 03/22/00 aliu Creation.
|
| +* 07/06/01 aliu Modified to support int32_t keys on
|
| +* platforms with sizeof(void*) < 32.
|
| +******************************************************************************
|
| +*/
|
| +
|
| +#include "uhash.h"
|
| +#include "hash.h"
|
| +#include "uvector.h"
|
| +#include "unicode/unistr.h"
|
| +#include "unicode/uchar.h"
|
| +
|
| +/********************************************************************
|
| + * PUBLIC UnicodeString support functions for UHashtable
|
| + ********************************************************************/
|
| +
|
| +U_CAPI int32_t U_EXPORT2
|
| +uhash_hashUnicodeString(const UHashTok key) {
|
| + U_NAMESPACE_USE
|
| + const UnicodeString *str = (const UnicodeString*) key.pointer;
|
| + return (str == NULL) ? 0 : str->hashCode();
|
| +}
|
| +
|
| +U_CAPI void U_EXPORT2
|
| +uhash_deleteUnicodeString(void *obj) {
|
| + U_NAMESPACE_USE
|
| + delete (UnicodeString*) obj;
|
| +}
|
| +
|
| +U_CAPI UBool U_EXPORT2
|
| +uhash_compareUnicodeString(const UHashTok key1, const UHashTok key2) {
|
| + U_NAMESPACE_USE
|
| + const UnicodeString *str1 = (const UnicodeString*) key1.pointer;
|
| + const UnicodeString *str2 = (const UnicodeString*) key2.pointer;
|
| + if (str1 == str2) {
|
| + return TRUE;
|
| + }
|
| + if (str1 == NULL || str2 == NULL) {
|
| + return FALSE;
|
| + }
|
| + return *str1 == *str2;
|
| +}
|
| +
|
| +/**
|
| + * Deleter for Hashtable objects.
|
| + */
|
| +U_CAPI void U_EXPORT2
|
| +uhash_deleteHashtable(void *obj) {
|
| + U_NAMESPACE_USE
|
| + delete (Hashtable*) obj;
|
| +}
|
| +
|
| +/**
|
| + * Deleter for UObject instances.
|
| + */
|
| +U_CAPI void U_EXPORT2
|
| +uhash_deleteUObject(void *obj) {
|
| + U_NAMESPACE_USE
|
| + delete (UObject*) obj;
|
| +}
|
| +
|
| +//eof
|
|
|
| Property changes on: icu46/source/common/uhash_us.cpp
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|