lua/hash.h

39 lines
705 B
C
Raw Normal View History

1993-07-28 17:18:00 +04:00
/*
** hash.h
** hash manager for lua
** $Id: hash.h,v 2.13 1997/02/26 17:38:41 roberto Unstable roberto $
1993-07-28 17:18:00 +04:00
*/
#ifndef hash_h
#define hash_h
#include "types.h"
#include "opcode.h"
typedef struct node {
1993-07-28 17:18:00 +04:00
Object ref;
Object val;
} Node;
typedef struct Hash {
struct Hash *next;
Node *node;
int nhash;
int nuse;
int htag;
char mark;
1993-07-28 17:18:00 +04:00
} Hash;
1996-02-07 17:13:17 +03:00
int lua_equalObj (Object *t1, Object *t2);
1996-05-06 18:30:27 +04:00
int luaI_redimension (int nhash);
Hash *lua_createarray (int nhash);
void lua_hashmark (Hash *h);
Long lua_hashcollector (void);
void luaI_hashcallIM (void);
Object *lua_hashget (Hash *t, Object *ref);
1993-07-28 17:18:00 +04:00
Object *lua_hashdefine (Hash *t, Object *ref);
void lua_next (void);
#endif