aboutsummaryrefslogtreecommitdiff
path: root/miniDB/HashMap.h
blob: 0698d3b6f4e22ce87181c59940ba3453af4842c3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#ifndef HASHM_H
#define HASHM_H

struct hashTable {
	int __count;
	int __buckets;
	struct Entry *__items;
	int __tombs;

	// public methods

	void (*insert)(struct hashTable *self, const char *key, int value);
	void (*dump)(struct hashTable *self);
	struct Entry *(*find)(struct hashTable *self, const char *key);
	void (*destructor)(struct hashTable *self);
	void (*pop)(struct hashTable *self, const char *key);
	float (*factor)(struct hashTable *self);
};

struct Entry {
	int __value;
	char *__key;
	int __state;
};

char *read_line();
int intger_input();
struct hashTable *createTable();

#endif