summaryrefslogtreecommitdiff
path: root/ghash.c
AgeCommit message (Collapse)Author
2000-04-17Add configure test for garbage collector friendliness for GLib. IfSebastian Wilhelmi
2000-04-17 Sebastian Wilhelmi <wilhelmi@ira.uka.de> * configure.in, acconfig.h: Add configure test for garbage collector friendliness for GLib. If enabled, ENABLE_GC_FRIENDLY will be defined. * garray.c, ghash.c, glist.c, gmain.c, gmem.c, gnode.c, gqueue.c, gslist.c, gtree.c: If ENABLE_GC_FRIENDLY is defined, NULLify all memory released by the user, but cached by GLib. This lets a garbage collector have a more correct view of the actually used memory.
1999-02-24inserted additional note to look for ChangeLog and AUTHORS file for a logCST 1999 Shawn T. Amundson
Wed Feb 24 00:08:42 CST 1999 Shawn T. Amundson <amundson@gtk.org> * *.[ch]: inserted additional note to look for ChangeLog and AUTHORS file for a log of modifications.
1999-02-15return guints instead of gints for g_hash_table_size andTim Janik
Mon Feb 15 06:18:58 1999 Tim Janik <timj@gtk.org> * glib.h: return guints instead of gints for g_hash_table_size and g_hash_table_foreach_remove.
1999-02-10s/G_LOCK_DECLARE/G_LOCK_DEFINE/ throuhout glib. Added G_LOCK_EXTERN macroSebastian Wilhelmi
1999-02-10 Sebastian Wilhelmi <wilhelmi@ira.uka.de> * glib.h: s/G_LOCK_DECLARE/G_LOCK_DEFINE/ throuhout glib. Added G_LOCK_EXTERN macro to declare a lock externally.
1999-01-24- Revert previous "fix" (which really just did things a different way). -EST 1999 Jeff Garzik
Sun Jan 24 00:36:22 EST 1999 Jeff Garzik <jgarzik@pobox.com> * ghash.c: - Revert previous "fix" (which really just did things a different way). - (g_hash_table_remove): Don't need to support multiple values for a single key. * tests/hash-test.c: Add test where hash function always returns a single value. Add beginnings of tests for g_hash_table_foreach[_remove] and g_hash_table_remove.
1999-01-24- Fixed bug that overwrote nodes in hash buckets instead of adding them toJeff Garzik
Sat Jan 23 22:45:59 1999 Jeff Garzik <jgarzik@pobox.com> * ghash.c (g_hash_table_lookup_node, g_hash_table_lookup, g_hash_table_insert, g_hash_table_remove, g_hash_table_lookup_extended): - Fixed bug that overwrote nodes in hash buckets instead of adding them to the hash bucket node list. Hash tables now work as advertised. (g_hash_table_resize): - Use g_new0 instead of manual init. - Space out code a bit for readability. (g_hash_nodes_destroy): - Replaced "if (!hash_node) return;" with "if (hash_node) {do stuff}". Testing takes up less code space than explicit call to 'return' before end of function. (look at gcc -S) Updated module header copyright to 1999. New module macro G_HASH_BUCKET for (table,key)->bucket lookups. * tests/hash-test.c: - Add two new tests, one with strings as the keys and values, and one with ints as the keys and values. Tests indirect (strings) and direct (ints) hashing. - Cleanup unused junk left over from testglib.c. - Converted a g_print call to g_assert_not_reached. - Updated copyright to 1999. * testglib.c, tests/string-test.c: - Init 'tmp_string' var to NULL, silencing uninit-var warning.
1998-12-16version bump to 1.1.8, binary age 0, interface age 0.Tim Janik
Wed Dec 16 03:16:58 1998 Tim Janik <timj@gtk.org> * configure.in: version bump to 1.1.8, binary age 0, interface age 0. * glib.h: changed g_lock() to G_LOCK(), g_unlock() to G_UNLOCK() and g_trylock() to G_TRYLOCK(), since these are macros that expand to nothing with --disable-threads. changed G_LOCK_DEFINE() to G_LOCK_DECLARE() and introduced G_LOCK_DECLARE_STATIC() to achive the results of static G_LOCK_DECLARE(). changed semantics of g_thread_supported to g_thread_supported() so it can be used as a function like g_module_supported(). the actuall definition is still a macro that expands into a variable for performance reasons though. various indentation and coding style cleanups. * configure.in: added --enable-threads that defaults to yes. * gmutex.c: changed tests g_thread_supported to g_thread_supported (), changed variable settings of g_thread_supported to g_threads_got_initialized. garray.c: gcache.c: gdataset.c: gdate.c: ghash.c: glist.c: gmain.c: gnode.c: gslist.c: gstring.c: gtree.c: gutils.c: changed s/g_lock/G_LOCK/, s/g_unlock/G_UNLOCK/, s/static G_LOCK_DEFINE/G_LOCK_DECLARE_STATIC/.
1998-12-15This commit merges the glib-threads branch into the mainOwen Taylor
branch. See the ChangeLog for details of the changes. In brief overview: - The set of threading functions can be set - A default implementation is provided in -lgthread - All static data structures are locked using these functions if g_thread_init() is called.
1998-11-28implemented incremental freezing facility.Tim Janik
Sat Nov 28 01:23:25 1998 Tim Janik <timj@gtk.org> * ghash.c: implemented incremental freezing facility.
1998-11-26reverted the g_hash_table_set_key_freefunc() addition, since it's toTim Janik
Thu Nov 26 01:36:20 1998 Tim Janik <timj@gtk.org> * glib.h: * ghash.c: reverted the g_hash_table_set_key_freefunc() addition, since it's to specialized and needs to be resolved in a generic fashion.
1998-11-24added GFreeFunc and g_hash_table_set_key_freefunc() prototype. addedEST 1998 Michael K. Johnson
Tue Nov 24 14:05:47 EST 1998 Michael K. Johnson <johnsonm@redhat.com> * glib.h: added GFreeFunc and g_hash_table_set_key_freefunc() prototype. * ghash.c: added g_hash_table_set_key_freefunc() implementation. Modified the prototypes of the functions g_hash_node_destroy() and g_hash_nodes_destroy(), and changed the functions that call them to match the new definitions. This changes no external interfaces, and should create no binary or source incompatibilities. It does add a member to the GHashTable structure.
1998-09-21NEWS file update for upcoming release of GLib + GModule version 1.1.3,Tim Janik
Mon Sep 21 02:22:12 1998 Tim Janik <timj@gtk.org> * NEWS file update for upcoming release of GLib + GModule version 1.1.3, binary age 0, interface age 0. (GModule uses the same version numbers as GLib.) * glib.h: swap the inclusion of of float.h and limits.h to work around a egcs 1.1 oddity on Solaris 2.5.1 (fix provided by Per Abrahamsen <abraham@dina.kvl.dk>). * glib.h: * gscanner.c: renamed the GValue union to GTokenValue, this should not affect source compatibility in most cases. * ghash.c: added some g_return_if_fail() statements. make g_hash_table_lookup_node() an inline function so we save an extra function invokation on lookups. Mon Sep 21 01:54:48 1998 Tim Janik <timj@gtk.org> * gmodule.h: * gmodule.c: renamed old _de_init functionality to _unload. modules are now expected to export: G_MODULE_EXPORT const gchar* g_module_check_init (GModule *module); and G_MODULE_EXPORT void g_module_unload (GModule *module); returning a string other than NULL from g_module_check_init() will prevent the module from being loaded. a call to g_module_make_resident() from g_module_unload() will prevent the module from being unloaded and still make it resident.
1998-09-20This is Josh, commiting as Manish. This is completely new, andManish Singh
nothing will break. * glib.h: New function g_hash_table_foreach_remove is similar to g_hash_table_foreach, but the callback's return value indicates whether to remove the element (if TRUE) or not (if FALSE).
1998-09-02Mostly changes to GArray code. See ChangeLog.Manish Singh
1998-07-09Renamed g_hash_table_lookup_full to g_hash_table_lookup_extended toLauri Alanko
conform with naming conventions.
1998-07-07Generic hash cleanup, added a function (g_hash_table_lookup_full).Lauri Alanko
1998-06-12[Changes from josh to sync with his glib stuff -Yosh]Josh MacDonald
Fri Jun 12 00:39:28 1998 Josh MacDonald <jmacd@icw.EECS.Berkeley.EDU> * glib.h: add new hash and equal functions g_int_*. complement g_direct_hash with g_direct_equal. * grel.c: new file, GRelations implement tuples of N-N mappings. A comment in glib.h briefly describes the interface. * ghash.c: new function, g_hash_table_size * glib.h: new typedefs, gsize, gssize, gtime. * garray.c: new functions implementing a simplified GArray. This GPtrArray is an array of gpointers and has functions to add and remove elements, much like java.lang.Vector. * garray.c: new functions for the single-byte special case of GArray. The functions g_byte_array* operate on arrays of bytes. Internally, a GArray is used. * testglib.c: tests for g_ptr_array, g_byte_array, and g_relation...
1998-06-10Initial revisionOwen Taylor