1 /* classes: h_files */ 2 3 #ifndef SCM_HASH_H 4 #define SCM_HASH_H 5 6 /* Copyright (C) 1995,1996,2000, 2006 Free Software Foundation, Inc. 7 * 8 * This library is free software; you can redistribute it and/or 9 * modify it under the terms of the GNU Lesser General Public 10 * License as published by the Free Software Foundation; either 11 * version 2.1 of the License, or (at your option) any later version. 12 * 13 * This library is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16 * Lesser General Public License for more details. 17 * 18 * You should have received a copy of the GNU Lesser General Public 19 * License along with this library; if not, write to the Free Software 20 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 21 */ 22 23 24 25 #include "libguile/__scm.h" 26 27 28 29 SCM_API unsigned long scm_string_hash (const unsigned char *str, size_t len); 30 SCM_API unsigned long scm_hasher (SCM obj, unsigned long n, size_t d); 31 SCM_API unsigned long scm_ihashq (SCM obj, unsigned long n); 32 SCM_API SCM scm_hashq (SCM obj, SCM n); 33 SCM_API unsigned long scm_ihashv (SCM obj, unsigned long n); 34 SCM_API SCM scm_hashv (SCM obj, SCM n); 35 SCM_API unsigned long scm_ihash (SCM obj, unsigned long n); 36 SCM_API SCM scm_hash (SCM obj, SCM n); 37 SCM_API void scm_init_hash (void); 38 39 #endif /* SCM_HASH_H */ 40 41 /* 42 Local Variables: 43 c-file-style: "gnu" 44 End: 45 */ 46