lua/hash.h

39 lines
697 B
C
Raw Normal View History

1993-07-28 06:18:00 -07:00
/*
** hash.h
** hash manager for lua
1996-03-08 04:04:04 -08:00
** $Id: hash.h,v 2.10 1996/02/12 18:32:40 roberto Exp roberto $
1993-07-28 06:18:00 -07:00
*/
#ifndef hash_h
#define hash_h
#include "types.h"
#include "opcode.h"
1993-07-28 06:18:00 -07:00
typedef struct node
{
Object ref;
Object val;
} Node;
typedef struct Hash
{
struct Hash *next;
1993-07-28 06:18:00 -07:00
char mark;
Word nhash;
Word nuse;
Node *node;
1993-07-28 06:18:00 -07:00
} Hash;
1996-02-07 06:13:17 -08:00
int lua_equalObj (Object *t1, Object *t2);
Word luaI_redimension (Word nhash);
Hash *lua_createarray (Word nhash);
void lua_hashmark (Hash *h);
Long lua_hashcollector (void);
Object *lua_hashget (Hash *t, Object *ref);
1993-07-28 06:18:00 -07:00
Object *lua_hashdefine (Hash *t, Object *ref);
void lua_next (void);
#endif