aboutsummaryrefslogtreecommitdiff
path: root/miniDB/HashMap.h
diff options
context:
space:
mode:
Diffstat (limited to 'miniDB/HashMap.h')
-rw-r--r--miniDB/HashMap.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/miniDB/HashMap.h b/miniDB/HashMap.h
new file mode 100644
index 0000000..0698d3b
--- /dev/null
+++ b/miniDB/HashMap.h
@@ -0,0 +1,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 \ No newline at end of file