home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 1 / FFMCD01.bin / useful / dist / gnu / gdbm / gdbm-1.6-amiga / proto.h < prev    next >
Encoding:
C/C++ Source or Header  |  1993-07-19  |  2.7 KB  |  79 lines

  1. /* proto.h - The prototypes for the dbm routines. */
  2.  
  3. /*  This file is part of GDBM, the GNU data base manager, by Philip A. Nelson.
  4.     Copyright (C) 1990, 1991, 1993  Free Software Foundation, Inc.
  5.  
  6.     GDBM is free software; you can redistribute it and/or modify
  7.     it under the terms of the GNU General Public License as published by
  8.     the Free Software Foundation; either version 2, or (at your option)
  9.     any later version.
  10.  
  11.     GDBM is distributed in the hope that it will be useful,
  12.     but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14.     GNU General Public License for more details.
  15.  
  16.     You should have received a copy of the GNU General Public License
  17.     along with GDBM; see the file COPYING.  If not, write to
  18.     the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  19.  
  20.     You may contact the author by:
  21.        e-mail:  phil@cs.wwu.edu
  22.       us-mail:  Philip A. Nelson
  23.                 Computer Science Department
  24.                 Western Washington University
  25.                 Bellingham, WA 98226
  26.  
  27. *************************************************************************/
  28.  
  29.  
  30. /* Define our _PROTOTYPE macro. */
  31.  
  32. #ifdef _ARGS
  33. #undef _ARGS
  34. #endif
  35.  
  36. #ifdef __STDC__
  37. #define _ARGS(args) args
  38. #else
  39. #define _ARGS(args) ()
  40. #endif
  41.  
  42.  
  43. /* From bucket.c */
  44. void _gdbm_new_bucket    _ARGS((gdbm_file_info *dbf, hash_bucket *bucket,
  45.                 int bits ));
  46. int  _gdbm_get_bucket    _ARGS((gdbm_file_info *dbf, long dir_index ));
  47. void _gdbm_split_bucket  _ARGS((gdbm_file_info *dbf, int next_insert ));
  48. int  _gdbm_write_bucket  _ARGS((gdbm_file_info *dbf, cache_elem *ca_entry ));
  49.  
  50. /* From falloc.c */
  51. long _gdbm_alloc        _ARGS((gdbm_file_info *dbf, int num_bytes ));
  52. int  _gdbm_free         _ARGS((gdbm_file_info *dbf, long file_adr,
  53.                    int num_bytes ));
  54. int  _gdbm_put_av_elem  _ARGS((avail_elem new_el, avail_elem av_table [],
  55.                    int *av_count ));
  56.  
  57. /* From hash.c */
  58. long _gdbm_hash
  59.      _ARGS((datum key ));
  60.  
  61. /* From update.c */
  62. void _gdbm_end_update   _ARGS((gdbm_file_info *dbf ));
  63. int _gdbm_fatal         _ARGS((gdbm_file_info *dbf, char *val ));
  64.  
  65.  
  66.  
  67. /* The user callable routines.... */
  68. void  gdbm_close      _ARGS((gdbm_file_info *dbf ));
  69. int   gdbm_delete      _ARGS((gdbm_file_info *dbf, datum key ));
  70. datum gdbm_fetch      _ARGS((gdbm_file_info *dbf, datum key ));
  71. gdbm_file_info *gdbm_open _ARGS((char *file, int block_size,
  72.                  int flags, int mode,
  73.                  void (*fatal_func) (void)));
  74. int   gdbm_reorganize      _ARGS((gdbm_file_info *dbf ));
  75. datum gdbm_firstkey       _ARGS((gdbm_file_info *dbf ));
  76. datum gdbm_nextkey        _ARGS((gdbm_file_info *dbf, datum key ));
  77. int   gdbm_store          _ARGS((gdbm_file_info *dbf, datum key,
  78.                  datum content, int flags ));
  79.