home *** CD-ROM | disk | FTP | other *** search
/ InfoMagic Source Code 1993 July / THE_SOURCE_CODE_CD_ROM.iso / gnu / cperf-2.1 / src / perfect.h < prev    next >
Encoding:
C/C++ Source or Header  |  1989-11-11  |  1.6 KB  |  46 lines

  1. /* Provides high-level routines to manipulate the keyword list
  2.    structures the code generation output. 
  3.  
  4.    Copyright (C) 1989 Free Software Foundation, Inc.
  5.    written by Douglas C. Schmidt (schmidt@ics.uci.edu)
  6.  
  7. This file is part of GNU GPERF.
  8.  
  9. GNU GPERF is free software; you can redistribute it and/or modify
  10. it under the terms of the GNU General Public License as published by
  11. the Free Software Foundation; either version 1, or (at your option)
  12. any later version.
  13.  
  14. GNU GPERF is distributed in the hope that it will be useful,
  15. but WITHOUT ANY WARRANTY; without even the implied warranty of
  16. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  17. GNU General Public License for more details.
  18.  
  19. You should have received a copy of the GNU General Public License
  20. along with GNU GPERF; see the file COPYING.  If not, write to
  21. the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  22.  
  23. #ifndef _perfect_h
  24. #define _perfect_h
  25.  
  26. #include "prototype.h"
  27. #include "keylist.h"
  28. #include "boolarray.h"
  29.  
  30. typedef struct perfect
  31. {
  32.   KEY_LIST   list;              /* List of key words provided by the user. */
  33.   BOOL_ARRAY duplicate;         /* Speeds up check for redundant hash values. */
  34.   int        max_hash_value;    /* Maximum possible hash value. */
  35.   int        fewest_collisions; /* Records fewest # of collisions for asso value. */
  36.   int        num_done;          /* Number of keywords processed without a collision. */
  37. } PERFECT;
  38.  
  39. extern void perfect_init P ((void));
  40. extern void perfect_destroy P ((void));
  41. extern int  perfect_generate P ((void));
  42. extern void perfect_print P ((void));
  43. #endif /* _perfect_h */
  44.  
  45.  
  46.