Fix ruamoko's hashtab_t typedef

Being typedefed directly to a pointer is a holdover from when pointer
declarations were really awkward.
This commit is contained in:
Bill Currie 2020-02-19 12:58:55 +09:00
parent 7a315b4a89
commit a6f3e1753a
4 changed files with 33 additions and 33 deletions

View file

@ -1,24 +1,24 @@
#ifndef __ruamoko_hash_h #ifndef __ruamoko_hash_h
#define __ruamoko_hash_h #define __ruamoko_hash_h
typedef struct _hashtab_t *hashtab_t; typedef struct _hashtab_t hashtab_t;
@extern hashtab_t Hash_NewTable (int size, string gk (void *ele, void *data), void f (void *ele, void *data), void *ud); @extern hashtab_t *Hash_NewTable (int size, string gk (void *ele, void *data), void f (void *ele, void *data), void *ud);
@extern void Hash_SetHashCompare (hashtab_t tab, unsigned gh (void *ele, void *data), int cmp (void *ele1, void *ele2, void *data)); @extern void Hash_SetHashCompare (hashtab_t *tab, unsigned gh (void *ele, void *data), int cmp (void *ele1, void *ele2, void *data));
@extern void Hash_DelTable (hashtab_t tab); @extern void Hash_DelTable (hashtab_t *tab);
@extern void Hash_FlushTable (hashtab_t tab); @extern void Hash_FlushTable (hashtab_t *tab);
@extern int Hash_Add (hashtab_t tab, void *ele); @extern int Hash_Add (hashtab_t *tab, void *ele);
@extern int Hash_AddElement (hashtab_t tab, void *ele); @extern int Hash_AddElement (hashtab_t *tab, void *ele);
@extern void *Hash_Find (hashtab_t tab, string key); @extern void *Hash_Find (hashtab_t *tab, string key);
@extern void *Hash_FindElement (hashtab_t tab, void *ele); @extern void *Hash_FindElement (hashtab_t *tab, void *ele);
@extern void **Hash_FindList (hashtab_t tab, string key); @extern void **Hash_FindList (hashtab_t *tab, string key);
@extern void **Hash_FindElementList (hashtab_t tab, void *ele); @extern void **Hash_FindElementList (hashtab_t *tab, void *ele);
@extern void *Hash_Del (hashtab_t tab, string key); @extern void *Hash_Del (hashtab_t *tab, string key);
@extern void *Hash_DelElement (hashtab_t tab, void *ele); @extern void *Hash_DelElement (hashtab_t *tab, void *ele);
@extern void Hash_Free (hashtab_t tab, void *ele); @extern void Hash_Free (hashtab_t *tab, void *ele);
@extern int Hash_String (string str); @extern int Hash_String (string str);
@extern int Hash_Buffer (void *buf, int len); @extern int Hash_Buffer (void *buf, int len);
@extern void **Hash_GetList (hashtab_t tab); @extern void **Hash_GetList (hashtab_t *tab);
@extern void Hash_Stats (hashtab_t tab); @extern void Hash_Stats (hashtab_t *tab);
#endif // __ruamoko_hash_h #endif // __ruamoko_hash_h

View file

@ -1,19 +1,19 @@
#include "hash.h" #include "hash.h"
hashtab_t Hash_NewTable (int size, string gk (void *ele, void *data), void f (void *ele, void *data), void *ud) = #0; hashtab_t *Hash_NewTable (int size, string gk (void *ele, void *data), void f (void *ele, void *data), void *ud) = #0;
void Hash_SetHashCompare (hashtab_t tab, unsigned gh (void *ele, void *data), int cmp (void *ele1, void *ele2, void *data)) = #0; void Hash_SetHashCompare (hashtab_t *tab, unsigned gh (void *ele, void *data), int cmp (void *ele1, void *ele2, void *data)) = #0;
void Hash_DelTable (hashtab_t tab) = #0; void Hash_DelTable (hashtab_t *tab) = #0;
void Hash_FlushTable (hashtab_t tab) = #0; void Hash_FlushTable (hashtab_t *tab) = #0;
int Hash_Add (hashtab_t tab, void *ele) = #0; int Hash_Add (hashtab_t *tab, void *ele) = #0;
int Hash_AddElement (hashtab_t tab, void *ele) = #0; int Hash_AddElement (hashtab_t *tab, void *ele) = #0;
void *Hash_Find (hashtab_t tab, string key) = #0; void *Hash_Find (hashtab_t *tab, string key) = #0;
void *Hash_FindElement (hashtab_t tab, void *ele) = #0; void *Hash_FindElement (hashtab_t *tab, void *ele) = #0;
void **Hash_FindList (hashtab_t tab, string key) = #0; void **Hash_FindList (hashtab_t *tab, string key) = #0;
void **Hash_FindElementList (hashtab_t tab, void *ele) = #0; void **Hash_FindElementList (hashtab_t *tab, void *ele) = #0;
void *Hash_Del (hashtab_t tab, string key) = #0; void *Hash_Del (hashtab_t *tab, string key) = #0;
void *Hash_DelElement (hashtab_t tab, void *ele) = #0; void *Hash_DelElement (hashtab_t *tab, void *ele) = #0;
void Hash_Free (hashtab_t tab, void *ele) = #0; void Hash_Free (hashtab_t *tab, void *ele) = #0;
int Hash_String (string str) = #0; int Hash_String (string str) = #0;
int Hash_Buffer (void *buf, int len) = #0; int Hash_Buffer (void *buf, int len) = #0;
void **Hash_GetList (hashtab_t tab) = #0; void **Hash_GetList (hashtab_t *tab) = #0;
void Hash_Stats (hashtab_t tab) = #0; void Hash_Stats (hashtab_t *tab) = #0;

View file

@ -11,7 +11,7 @@
{ {
state_t state; state_t state;
SchemeObject *value; SchemeObject *value;
hashtab_t globals; hashtab_t *globals;
SchemeObject *all_globals; SchemeObject *all_globals;
} }
- (void) loadCode: (CompiledCode *) code; - (void) loadCode: (CompiledCode *) code;

View file

@ -16,7 +16,7 @@ void SymbolFree (void *ele, void *data)
[s release]; [s release];
} }
hashtab_t symbols; hashtab_t *symbols;
Symbol *lparen; Symbol *lparen;
Symbol *rparen; Symbol *rparen;
Symbol *quote; Symbol *quote;