1/* This may look like C code, but it is really -*- C++ -*- */ 2 3/* Hash table used to check for duplicate keyword entries. 4
|
5 Copyright (C) 1989-1998 Free Software Foundation, Inc.
|
5 Copyright (C) 1989-1998, 2000 Free Software Foundation, Inc. |
6 written by Douglas C. Schmidt (schmidt@ics.uci.edu) 7 8This file is part of GNU GPERF. 9 10GNU GPERF is free software; you can redistribute it and/or modify 11it under the terms of the GNU General Public License as published by 12the Free Software Foundation; either version 1, or (at your option) 13any later version. 14 15GNU GPERF is distributed in the hope that it will be useful, 16but WITHOUT ANY WARRANTY; without even the implied warranty of 17MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18GNU General Public License for more details. 19 20You should have received a copy of the GNU General Public License 21along with GNU GPERF; see the file COPYING. If not, write to the Free 22Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111, USA. */ 23 24#ifndef hash_table_h 25#define hash_table_h 1 26 27#include "list-node.h" 28 29class Hash_Table 30{ 31private: 32 List_Node **table; /* Vector of pointers to linked lists of List_Node's. */ 33 int size; /* Size of the vector. */ 34 int collisions; /* Find out how well our double hashing is working! */
|
35 int ignore_length; |
36 37public:
|
37 Hash_Table (List_Node **t, int s);
|
38 Hash_Table (List_Node **t, int s, int ignore_len); |
39 ~Hash_Table (void);
|
39 List_Node *operator () (List_Node *item, int ignore_length);
|
40 List_Node *insert (List_Node *item); |
41}; 42 43#endif
|