hash-table.h revision 58551
158551Skris/* This may look like C code, but it is really -*- C++ -*- */ 258551Skris 358551Skris/* Hash table used to check for duplicate keyword entries. 458551Skris 558551Skris Copyright (C) 1989-1998 Free Software Foundation, Inc. 658551Skris written by Douglas C. Schmidt (schmidt@ics.uci.edu) 758551Skris 858551SkrisThis file is part of GNU GPERF. 958551Skris 1058551SkrisGNU GPERF is free software; you can redistribute it and/or modify 1158551Skrisit under the terms of the GNU General Public License as published by 1258551Skristhe Free Software Foundation; either version 1, or (at your option) 1358551Skrisany later version. 1458551Skris 1558551SkrisGNU GPERF is distributed in the hope that it will be useful, 1658551Skrisbut WITHOUT ANY WARRANTY; without even the implied warranty of 1758551SkrisMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 1858551SkrisGNU General Public License for more details. 1958551Skris 2058551SkrisYou should have received a copy of the GNU General Public License 2158551Skrisalong with GNU GPERF; see the file COPYING. If not, write to the Free 2258551SkrisSoftware Foundation, 59 Temple Place - Suite 330, Boston, MA 02111, USA. */ 2358551Skris 2458551Skris#ifndef hash_table_h 2558551Skris#define hash_table_h 1 2658551Skris 2758551Skris#include "list-node.h" 2858551Skris 2958551Skrisclass Hash_Table 3058551Skris{ 3158551Skrisprivate: 3258551Skris List_Node **table; /* Vector of pointers to linked lists of List_Node's. */ 3358551Skris int size; /* Size of the vector. */ 3458551Skris int collisions; /* Find out how well our double hashing is working! */ 3558551Skris 3658551Skrispublic: 3758551Skris Hash_Table (List_Node **t, int s); 3858551Skris ~Hash_Table (void); 3958551Skris List_Node *operator () (List_Node *item, int ignore_length); 4058551Skris}; 4158551Skris 4258551Skris#endif 43