/*
- * Copyright (C) 1995-2007 University of Karlsruhe. All right reserved.
+ * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved.
*
* This file is part of libFirm.
*
* @version $Id$
*
* This implements a set of pointers which allows to specify custom callbacks
- * for comparing and hashing it's elements.
+ * for comparing and hashing its elements.
*/
#include "config.h"
#define ValueType void*
#define NullValue NULL
#define DeletedValue ((void*)-1)
-#define Hash(this,value) this->hash_function(value)
+#define Hash(this,key) this->hash_function(key)
#define KeysEqual(this,key1,key2) this->cmp_function(key1, key2)
+#define SCALAR_RETURN
#define SetRangeEmpty(ptr,size) memset(ptr, 0, (size) * sizeof(cpset_hashset_entry_t))
-#define hashset_init _cpset_init
-#define hashset_init_size _cpset_init_size
+void cpset_init_(cpset_t *self);
+#define hashset_init cpset_init_
+void cpset_init_size_(cpset_t *self, size_t expected_elems);
+#define hashset_init_size cpset_init_size_
#define hashset_destroy cpset_destroy
#define hashset_insert cpset_insert
#define hashset_remove cpset_remove
#include "hashset.c"
-void cpset_init(cpset_t *this, cpset_hash_function hash_function,
+void cpset_init(cpset_t *this_, cpset_hash_function hash_function,
cpset_cmp_function cmp_function)
{
- this->hash_function = hash_function;
- this->cmp_function = cmp_function;
- _cpset_init(this);
+ this_->hash_function = hash_function;
+ this_->cmp_function = cmp_function;
+ cpset_init_(this_);
}
-void cpset_init_size(cpset_t *this, cpset_hash_function hash_function,
+void cpset_init_size(cpset_t *this_, cpset_hash_function hash_function,
cpset_cmp_function cmp_function, size_t expected_elems)
{
- this->hash_function = hash_function;
- this->cmp_function = cmp_function;
- _cpset_init_size(this, expected_elems);
+ this_->hash_function = hash_function;
+ this_->cmp_function = cmp_function;
+ cpset_init_size_(this_, expected_elems);
}