X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fgl_anytreehash_list1.h;h=95dade95c7215b6fb63881c9dcd86e966a04eb16;hb=5b63b76064a130bdaadb1fda7ab50e82896446e1;hp=f6e319b49002cc2f628c59f03a376ea6edd9127e;hpb=407400d9367b16a628b57b2d9b8565bb5a08ffae;p=gnulib.git diff --git a/lib/gl_anytreehash_list1.h b/lib/gl_anytreehash_list1.h index f6e319b49..95dade95c 100644 --- a/lib/gl_anytreehash_list1.h +++ b/lib/gl_anytreehash_list1.h @@ -1,11 +1,11 @@ /* Sequential list data type implemented by a hash table with a binary tree. - Copyright (C) 2006 Free Software Foundation, Inc. + Copyright (C) 2006-2007 Free Software Foundation, Inc. Written by Bruno Haible , 2006. - This program is free software; you can redistribute it and/or modify + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -13,8 +13,7 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + along with this program. If not, see . */ /* Common code of gl_avltreehash_list.c and gl_rbtreehash_list.c. */ @@ -109,7 +108,7 @@ gl_oset_first (gl_oset_t set) static void add_to_bucket (gl_list_t list, gl_list_node_t new_node) { - size_t index = new_node->h.hashcode % list->table_size; + size_t bucket = new_node->h.hashcode % list->table_size; /* If no duplicates are allowed, multiple nodes are not needed. */ if (list->base.allow_duplicates) @@ -119,7 +118,7 @@ add_to_bucket (gl_list_t list, gl_list_node_t new_node) gl_listelement_equals_fn equals = list->base.equals_fn; gl_hash_entry_t *entryp; - for (entryp = &list->table[index]; *entryp != NULL; entryp = &(*entryp)->hash_next) + for (entryp = &list->table[bucket]; *entryp != NULL; entryp = &(*entryp)->hash_next) { gl_hash_entry_t entry = *entryp; @@ -152,13 +151,12 @@ add_to_bucket (gl_list_t list, gl_list_node_t new_node) nodes = gl_oset_create_empty (OSET_TREE_FLAVOR, - compare_by_position); + compare_by_position, NULL); gl_oset_add (nodes, node); gl_oset_add (nodes, new_node); - multi_entry = - (struct gl_multiple_nodes *) xmalloc (sizeof (struct gl_multiple_nodes)); + multi_entry = XMALLOC (struct gl_multiple_nodes); multi_entry->h.hash_next = entry->hash_next; multi_entry->h.hashcode = entry->hashcode; multi_entry->magic = MULTIPLE_NODES_MAGIC; @@ -171,8 +169,8 @@ add_to_bucket (gl_list_t list, gl_list_node_t new_node) } } /* If no duplicates are allowed, multiple nodes are not needed. */ - new_node->h.hash_next = list->table[index]; - list->table[index] = &new_node->h; + new_node->h.hash_next = list->table[bucket]; + list->table[bucket] = &new_node->h; } /* Remove a node from the hash table structure. @@ -184,7 +182,7 @@ add_to_bucket (gl_list_t list, gl_list_node_t new_node) static void remove_from_bucket (gl_list_t list, gl_list_node_t old_node) { - size_t index = old_node->h.hashcode % list->table_size; + size_t bucket = old_node->h.hashcode % list->table_size; if (list->base.allow_duplicates) { @@ -193,7 +191,7 @@ remove_from_bucket (gl_list_t list, gl_list_node_t old_node) gl_listelement_equals_fn equals = list->base.equals_fn; gl_hash_entry_t *entryp; - for (entryp = &list->table[index]; ; entryp = &(*entryp)->hash_next) + for (entryp = &list->table[bucket]; ; entryp = &(*entryp)->hash_next) { gl_hash_entry_t entry = *entryp; @@ -239,7 +237,7 @@ remove_from_bucket (gl_list_t list, gl_list_node_t old_node) /* If no duplicates are allowed, multiple nodes are not needed. */ gl_hash_entry_t *entryp; - for (entryp = &list->table[index]; ; entryp = &(*entryp)->hash_next) + for (entryp = &list->table[bucket]; ; entryp = &(*entryp)->hash_next) { if (*entryp == &old_node->h) {