mirror of
https://github.com/cc65/cc65.git
synced 2025-01-09 11:30:29 +00:00
Change API for the Compare function
git-svn-id: svn://svn.cc65.org/cc65/trunk@2573 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
ed2dfd50e9
commit
39ad3d6da0
@ -65,7 +65,10 @@ static HashNode* HT_GetHashNode (void* Entry);
|
||||
/* Given a pointer to the user entry data, return a pointer to the hash node */
|
||||
|
||||
static int HT_Compare (const void* Key1, const void* Key2);
|
||||
/* Compare two keys for equality */
|
||||
/* Compare two keys. The function must return a value less than zero if
|
||||
* Key1 is smaller than Key2, zero if both are equal, and a value greater
|
||||
* than zero if Key1 is greater then Key2.
|
||||
*/
|
||||
|
||||
|
||||
|
||||
@ -136,9 +139,12 @@ static HashNode* HT_GetHashNode (void* Entry)
|
||||
|
||||
|
||||
static int HT_Compare (const void* Key1, const void* Key2)
|
||||
/* Compare two keys for equality */
|
||||
/* Compare two keys. The function must return a value less than zero if
|
||||
* Key1 is smaller than Key2, zero if both are equal, and a value greater
|
||||
* than zero if Key1 is greater then Key2.
|
||||
*/
|
||||
{
|
||||
return (*(const unsigned*)Key1 == *(const unsigned*)Key2);
|
||||
return (int)*(const unsigned*)Key1 - (int)*(const unsigned*)Key2;
|
||||
}
|
||||
|
||||
|
||||
|
@ -70,7 +70,10 @@ static HashNode* HT_GetHashNode (void* Entry);
|
||||
/* Given a pointer to the user entry data, return a pointer to the hash node */
|
||||
|
||||
static int HT_Compare (const void* Key1, const void* Key2);
|
||||
/* Compare two keys for equality */
|
||||
/* Compare two keys. The function must return a value less than zero if
|
||||
* Key1 is smaller than Key2, zero if both are equal, and a value greater
|
||||
* than zero if Key1 is greater then Key2.
|
||||
*/
|
||||
|
||||
|
||||
|
||||
@ -175,9 +178,12 @@ static HashNode* HT_GetHashNode (void* Entry)
|
||||
|
||||
|
||||
static int HT_Compare (const void* Key1, const void* Key2)
|
||||
/* Compare two keys for equality */
|
||||
/* Compare two keys. The function must return a value less than zero if
|
||||
* Key1 is smaller than Key2, zero if both are equal, and a value greater
|
||||
* than zero if Key1 is greater then Key2.
|
||||
*/
|
||||
{
|
||||
return (strcmp (Key1, Key2) == 0);
|
||||
return strcmp (Key1, Key2);
|
||||
}
|
||||
|
||||
|
||||
|
@ -96,7 +96,7 @@ HashNode* HT_Find (const HashTable* T, const void* Key)
|
||||
* if it is not really necessary.
|
||||
*/
|
||||
if (N->Hash == Hash &&
|
||||
T->Func->Compare (Key, T->Func->GetKey (N->Entry))) {
|
||||
T->Func->Compare (Key, T->Func->GetKey (N->Entry)) == 0) {
|
||||
/* Found */
|
||||
break;
|
||||
}
|
||||
|
@ -75,7 +75,10 @@ struct HashFunctions {
|
||||
/* Given a pointer to the user entry data, return a pointer to the hash node */
|
||||
|
||||
int (*Compare) (const void* Key1, const void* Key2);
|
||||
/* Compare two keys for equality */
|
||||
/* Compare two keys. The function must return a value less than zero if
|
||||
* Key1 is smaller than Key2, zero if both are equal, and a value greater
|
||||
* than zero if Key1 is greater then Key2.
|
||||
*/
|
||||
};
|
||||
|
||||
/* Hash table */
|
||||
|
Loading…
Reference in New Issue
Block a user