Skip to content

Commit

Permalink
* st.h, st.c: Back out the introduction of st_*_func_t. Some
Browse files Browse the repository at this point in the history
  compilers complain about function type mismatch.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3313 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
  • Loading branch information
knu committed Jan 9, 2003
1 parent c65638c commit e29b4b4
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 12 deletions.
5 changes: 5 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
Thu Jan 9 13:26:18 2003 Akinori MUSHA <[email protected]>

* st.h, st.c: Back out the introduction of st_*_func_t. Some
compilers complain about function type mismatch.

Wed Jan 08 17:10:32 2003 NAKAMURA Usaku <[email protected]>

* ext/Win32API/lib/win32/registry.rb: added. [new]
Expand Down
6 changes: 3 additions & 3 deletions st.c
Original file line number Diff line number Diff line change
Expand Up @@ -43,8 +43,8 @@ static struct st_hash_type type_numhash = {
/* extern int strcmp(const char *, const char *); */
static int strhash(const char *);
static struct st_hash_type type_strhash = {
(st_compare_func_t)strcmp,
(st_hash_func_t)strhash,
strcmp,
strhash,
};

#ifdef RUBY_PLATFORM
Expand Down Expand Up @@ -482,7 +482,7 @@ st_cleanup_safe(table, never)
void
st_foreach(table, func, arg)
st_table *table;
st_each_func_t func;
int (*func)();
st_data_t arg;
{
st_table_entry *ptr, *last, *tmp;
Expand Down
14 changes: 5 additions & 9 deletions st.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,11 @@

typedef long st_data_t;

typedef int (*st_compare_func_t)(st_data_t data1, st_data_t data2);
typedef int (*st_hash_func_t)(st_data_t data);
typedef int (*st_each_func_t)(st_data_t key, st_data_t value, st_data_t data);

typedef struct st_table st_table;

struct st_hash_type {
st_compare_func_t compare;
st_hash_func_t hash;
int (*compare)();
int (*hash)();
};

struct st_table {
Expand All @@ -40,14 +36,14 @@ int st_delete(st_table *, st_data_t *, st_data_t *);
int st_delete_safe(st_table *, st_data_t *, st_data_t *, st_data_t);
int st_insert(st_table *, st_data_t, st_data_t);
int st_lookup(st_table *, st_data_t, st_data_t *);
void st_foreach(st_table *, st_each_func_t, st_data_t);
void st_foreach(st_table *, int (*)(), st_data_t);
void st_add_direct(st_table *, st_data_t, st_data_t);
void st_free_table(st_table *);
void st_cleanup_safe(st_table *, st_data_t);
st_table *st_copy(st_table *);

#define ST_NUMCMP ((st_compare_func_t) 0)
#define ST_NUMHASH ((st_hash_func_t) -2)
#define ST_NUMCMP ((int (*)()) 0)
#define ST_NUMHASH ((int (*)()) -2)

#define st_numcmp ST_NUMCMP
#define st_numhash ST_NUMHASH
Expand Down

0 comments on commit e29b4b4

Please sign in to comment.