c_src: update for 0.4
[nit.git] / c_src / hash._sep.h
index 7afbe18..59914e6 100644 (file)
 /* This C header file is generated by NIT to compile modules and programs that requires hash. */
 #ifndef hash_sep
 #define hash_sep
-#include "string._sep.h"
+#include "kernel._sep.h"
 #include <nit_common.h>
-
-extern const classtable_elt_t VFT_HashCollection[];
-
-extern const classtable_elt_t VFT_HashNode[];
-
-extern const classtable_elt_t VFT_HashMap[];
-
-extern const classtable_elt_t VFT_HashMapNode[];
-
-extern const classtable_elt_t VFT_HashMapIterator[];
-
-extern const classtable_elt_t VFT_HashSet[];
-
-extern const classtable_elt_t VFT_HashSetNode[];
-
-extern const classtable_elt_t VFT_HashSetIterator[];
 extern const char *LOCATE_hash;
 extern const int SFT_hash[];
 #define CALL_hash___Object___hash(recv) ((hash___Object___hash_t)CALL((recv), (SFT_hash[0] + 0)))
-#define ID_HashCollection (SFT_hash[1])
-#define COLOR_HashCollection (SFT_hash[2])
-#define ATTR_hash___HashCollection____array(recv) ATTR(recv, (SFT_hash[3] + 0))
-#define ATTR_hash___HashCollection____capacity(recv) ATTR(recv, (SFT_hash[3] + 1))
-#define ATTR_hash___HashCollection____length(recv) ATTR(recv, (SFT_hash[3] + 2))
-#define ATTR_hash___HashCollection____first_item(recv) ATTR(recv, (SFT_hash[3] + 3))
-#define ATTR_hash___HashCollection____last_item(recv) ATTR(recv, (SFT_hash[3] + 4))
-#define ATTR_hash___HashCollection____last_accessed_index(recv) ATTR(recv, (SFT_hash[3] + 5))
-#define ATTR_hash___HashCollection____last_accessed_key(recv) ATTR(recv, (SFT_hash[3] + 6))
-#define INIT_TABLE_POS_HashCollection (SFT_hash[4] + 0)
-#define CALL_hash___HashCollection___first_item(recv) ((hash___HashCollection___first_item_t)CALL((recv), (SFT_hash[4] + 1)))
-#define CALL_hash___HashCollection___index_at(recv) ((hash___HashCollection___index_at_t)CALL((recv), (SFT_hash[4] + 2)))
-#define CALL_hash___HashCollection___store(recv) ((hash___HashCollection___store_t)CALL((recv), (SFT_hash[4] + 3)))
-#define CALL_hash___HashCollection___remove_index(recv) ((hash___HashCollection___remove_index_t)CALL((recv), (SFT_hash[4] + 4)))
-#define CALL_hash___HashCollection___raz(recv) ((hash___HashCollection___raz_t)CALL((recv), (SFT_hash[4] + 5)))
-#define CALL_hash___HashCollection___enlarge(recv) ((hash___HashCollection___enlarge_t)CALL((recv), (SFT_hash[4] + 6)))
-#define CALL_hash___HashCollection___init(recv) ((hash___HashCollection___init_t)CALL((recv), (SFT_hash[4] + 7)))
-#define ID_HashNode (SFT_hash[5])
-#define COLOR_HashNode (SFT_hash[6])
-#define ATTR_hash___HashNode____next_item(recv) ATTR(recv, (SFT_hash[7] + 0))
-#define ATTR_hash___HashNode____prev_item(recv) ATTR(recv, (SFT_hash[7] + 1))
-#define INIT_TABLE_POS_HashNode (SFT_hash[8] + 0)
-#define CALL_hash___HashNode___key(recv) ((hash___HashNode___key_t)CALL((recv), (SFT_hash[8] + 1)))
-#define CALL_hash___HashNode___next_item(recv) ((hash___HashNode___next_item_t)CALL((recv), (SFT_hash[8] + 2)))
-#define CALL_hash___HashNode___next_item__eq(recv) ((hash___HashNode___next_item__eq_t)CALL((recv), (SFT_hash[8] + 3)))
-#define CALL_hash___HashNode___prev_item(recv) ((hash___HashNode___prev_item_t)CALL((recv), (SFT_hash[8] + 4)))
-#define CALL_hash___HashNode___prev_item__eq(recv) ((hash___HashNode___prev_item__eq_t)CALL((recv), (SFT_hash[8] + 5)))
-#define CALL_hash___HashNode___init(recv) ((hash___HashNode___init_t)CALL((recv), (SFT_hash[8] + 6)))
-#define ID_HashMap (SFT_hash[9])
-#define COLOR_HashMap (SFT_hash[10])
-#define INIT_TABLE_POS_HashMap (SFT_hash[11] + 0)
-#define CALL_hash___HashMap___init(recv) ((hash___HashMap___init_t)CALL((recv), (SFT_hash[11] + 1)))
-#define ID_HashMapNode (SFT_hash[12])
-#define COLOR_HashMapNode (SFT_hash[13])
-#define INIT_TABLE_POS_HashMapNode (SFT_hash[14] + 0)
-#define CALL_hash___HashMapNode___init(recv) ((hash___HashMapNode___init_t)CALL((recv), (SFT_hash[14] + 1)))
-#define ID_HashMapIterator (SFT_hash[15])
-#define COLOR_HashMapIterator (SFT_hash[16])
-#define ATTR_hash___HashMapIterator____map(recv) ATTR(recv, (SFT_hash[17] + 0))
-#define ATTR_hash___HashMapIterator____node(recv) ATTR(recv, (SFT_hash[17] + 1))
-#define INIT_TABLE_POS_HashMapIterator (SFT_hash[18] + 0)
-#define CALL_hash___HashMapIterator___init(recv) ((hash___HashMapIterator___init_t)CALL((recv), (SFT_hash[18] + 1)))
-#define ID_HashSet (SFT_hash[19])
-#define COLOR_HashSet (SFT_hash[20])
-#define INIT_TABLE_POS_HashSet (SFT_hash[21] + 0)
-#define CALL_hash___HashSet___init(recv) ((hash___HashSet___init_t)CALL((recv), (SFT_hash[21] + 1)))
-#define ID_HashSetNode (SFT_hash[22])
-#define COLOR_HashSetNode (SFT_hash[23])
-#define ATTR_hash___HashSetNode____key(recv) ATTR(recv, (SFT_hash[24] + 0))
-#define INIT_TABLE_POS_HashSetNode (SFT_hash[25] + 0)
-#define CALL_hash___HashSetNode___key__eq(recv) ((hash___HashSetNode___key__eq_t)CALL((recv), (SFT_hash[25] + 1)))
-#define CALL_hash___HashSetNode___init(recv) ((hash___HashSetNode___init_t)CALL((recv), (SFT_hash[25] + 2)))
-#define ID_HashSetIterator (SFT_hash[26])
-#define COLOR_HashSetIterator (SFT_hash[27])
-#define ATTR_hash___HashSetIterator____set(recv) ATTR(recv, (SFT_hash[28] + 0))
-#define ATTR_hash___HashSetIterator____node(recv) ATTR(recv, (SFT_hash[28] + 1))
-#define INIT_TABLE_POS_HashSetIterator (SFT_hash[29] + 0)
-#define CALL_hash___HashSetIterator___init(recv) ((hash___HashSetIterator___init_t)CALL((recv), (SFT_hash[29] + 1)))
-typedef val_t (* hash___Object___hash_t)(val_t  self);
-val_t hash___Object___hash(val_t  self);
-#define LOCATE_hash___Object___hash "hash::Object::hash"
-val_t NEW_String_string___String___init();
-val_t NEW_String_string___String___from(val_t p0);
-val_t NEW_String_string___String___with_capacity(val_t p0);
-val_t NEW_String_string___String___with_native(val_t p0, val_t p1);
-val_t NEW_String_string___String___from_cstring(val_t p0);
-val_t NEW_String_string___String___filled_with(val_t p0, val_t p1);
-typedef val_t (* hash___String___hash_t)(val_t  self);
-val_t hash___String___hash(val_t  self);
-#define LOCATE_hash___String___hash "hash::String::(hash::Object::hash)"
-typedef val_t (* hash___Int___hash_t)(val_t  self);
-val_t hash___Int___hash(val_t  self);
-#define LOCATE_hash___Int___hash "hash::Int::(hash::Object::hash)"
-typedef val_t (* hash___Char___hash_t)(val_t  self);
-val_t hash___Char___hash(val_t  self);
-#define LOCATE_hash___Char___hash "hash::Char::(hash::Object::hash)"
-typedef val_t (* hash___Bool___hash_t)(val_t  self);
-val_t hash___Bool___hash(val_t  self);
-#define LOCATE_hash___Bool___hash "hash::Bool::(hash::Object::hash)"
-typedef val_t (* hash___HashCollection___length_t)(val_t  self);
-val_t hash___HashCollection___length(val_t  self);
-#define LOCATE_hash___HashCollection___length "hash::HashCollection::(abstract_collection::Collection::length)"
-typedef val_t (* hash___HashCollection___first_item_t)(val_t  self);
-val_t hash___HashCollection___first_item(val_t  self);
-#define LOCATE_hash___HashCollection___first_item "hash::HashCollection::first_item"
-typedef val_t (* hash___HashCollection___index_at_t)(val_t  self, val_t  param0);
-val_t hash___HashCollection___index_at(val_t  self, val_t  param0);
-#define LOCATE_hash___HashCollection___index_at "hash::HashCollection::index_at"
-typedef void (* hash___HashCollection___store_t)(val_t  self, val_t  param0, val_t  param1);
-void hash___HashCollection___store(val_t  self, val_t  param0, val_t  param1);
-#define LOCATE_hash___HashCollection___store "hash::HashCollection::store"
-typedef void (* hash___HashCollection___remove_index_t)(val_t  self, val_t  param0);
-void hash___HashCollection___remove_index(val_t  self, val_t  param0);
-#define LOCATE_hash___HashCollection___remove_index "hash::HashCollection::remove_index"
-typedef void (* hash___HashCollection___raz_t)(val_t  self);
-void hash___HashCollection___raz(val_t  self);
-#define LOCATE_hash___HashCollection___raz "hash::HashCollection::raz"
-typedef void (* hash___HashCollection___enlarge_t)(val_t  self, val_t  param0);
-void hash___HashCollection___enlarge(val_t  self, val_t  param0);
-#define LOCATE_hash___HashCollection___enlarge "hash::HashCollection::enlarge"
-typedef void (* hash___HashCollection___init_t)(val_t  self, int* init_table);
-void hash___HashCollection___init(val_t  self, int* init_table);
-#define LOCATE_hash___HashCollection___init "hash::HashCollection::init"
-val_t NEW_HashCollection_hash___HashCollection___init();
-typedef val_t (* hash___HashNode___key_t)(val_t  self);
-val_t hash___HashNode___key(val_t  self);
-#define LOCATE_hash___HashNode___key "hash::HashNode::key"
-typedef val_t (* hash___HashNode___next_item_t)(val_t  self);
-val_t hash___HashNode___next_item(val_t  self);
-#define LOCATE_hash___HashNode___next_item "hash::HashNode::next_item"
-typedef void (* hash___HashNode___next_item__eq_t)(val_t  self, val_t  param0);
-void hash___HashNode___next_item__eq(val_t  self, val_t  param0);
-#define LOCATE_hash___HashNode___next_item__eq "hash::HashNode::next_item="
-typedef val_t (* hash___HashNode___prev_item_t)(val_t  self);
-val_t hash___HashNode___prev_item(val_t  self);
-#define LOCATE_hash___HashNode___prev_item "hash::HashNode::prev_item"
-typedef void (* hash___HashNode___prev_item__eq_t)(val_t  self, val_t  param0);
-void hash___HashNode___prev_item__eq(val_t  self, val_t  param0);
-#define LOCATE_hash___HashNode___prev_item__eq "hash::HashNode::prev_item="
-typedef void (* hash___HashNode___init_t)(val_t  self, int* init_table);
-void hash___HashNode___init(val_t  self, int* init_table);
-#define LOCATE_hash___HashNode___init "hash::HashNode::init"
-val_t NEW_HashNode_hash___HashNode___init();
-typedef val_t (* hash___HashMap___iterator_t)(val_t  self);
-val_t hash___HashMap___iterator(val_t  self);
-#define LOCATE_hash___HashMap___iterator "hash::HashMap::(abstract_collection::Collection::iterator)"
-typedef val_t (* hash___HashMap___is_empty_t)(val_t  self);
-val_t hash___HashMap___is_empty(val_t  self);
-#define LOCATE_hash___HashMap___is_empty "hash::HashMap::(abstract_collection::Collection::is_empty)"
-typedef val_t (* hash___HashMap___has_t)(val_t  self, val_t  param0);
-val_t hash___HashMap___has(val_t  self, val_t  param0);
-#define LOCATE_hash___HashMap___has "hash::HashMap::(abstract_collection::Collection::has)"
-typedef val_t (* hash___HashMap___has_only_t)(val_t  self, val_t  param0);
-val_t hash___HashMap___has_only(val_t  self, val_t  param0);
-#define LOCATE_hash___HashMap___has_only "hash::HashMap::(abstract_collection::Collection::has_only)"
-typedef val_t (* hash___HashMap___count_t)(val_t  self, val_t  param0);
-val_t hash___HashMap___count(val_t  self, val_t  param0);
-#define LOCATE_hash___HashMap___count "hash::HashMap::(abstract_collection::Collection::count)"
-typedef val_t (* hash___HashMap___first_t)(val_t  self);
-val_t hash___HashMap___first(val_t  self);
-#define LOCATE_hash___HashMap___first "hash::HashMap::(abstract_collection::Collection::first)"
-typedef void (* hash___HashMap___clear_t)(val_t  self);
-void hash___HashMap___clear(val_t  self);
-#define LOCATE_hash___HashMap___clear "hash::HashMap::(abstract_collection::RemovableCollection::clear)"
-typedef void (* hash___HashMap___remove_t)(val_t  self, val_t  param0);
-void hash___HashMap___remove(val_t  self, val_t  param0);
-#define LOCATE_hash___HashMap___remove "hash::HashMap::(abstract_collection::RemovableCollection::remove)"
-typedef void (* hash___HashMap_____braeq_t)(val_t  self, val_t  param0, val_t  param1);
-void hash___HashMap_____braeq(val_t  self, val_t  param0, val_t  param1);
-#define LOCATE_hash___HashMap_____braeq "hash::HashMap::(abstract_collection::Map::[]=)"
-typedef void (* hash___HashMap___remove_at_t)(val_t  self, val_t  param0);
-void hash___HashMap___remove_at(val_t  self, val_t  param0);
-#define LOCATE_hash___HashMap___remove_at "hash::HashMap::(abstract_collection::Map::remove_at)"
-typedef val_t (* hash___HashMap___couple_at_t)(val_t  self, val_t  param0);
-val_t hash___HashMap___couple_at(val_t  self, val_t  param0);
-#define LOCATE_hash___HashMap___couple_at "hash::HashMap::(abstract_collection::CoupleMap::couple_at)"
-typedef void (* hash___HashMap___init_t)(val_t  self, int* init_table);
-void hash___HashMap___init(val_t  self, int* init_table);
-#define LOCATE_hash___HashMap___init "hash::HashMap::init"
-val_t NEW_HashMap_hash___HashMap___init();
-typedef val_t (* hash___HashMapNode___key_t)(val_t  self);
-val_t hash___HashMapNode___key(val_t  self);
-#define LOCATE_hash___HashMapNode___key "hash::HashMapNode::(hash::HashNode::key)"
-typedef void (* hash___HashMapNode___init_t)(val_t  self, val_t  param0, val_t  param1, int* init_table);
-void hash___HashMapNode___init(val_t  self, val_t  param0, val_t  param1, int* init_table);
-#define LOCATE_hash___HashMapNode___init "hash::HashMapNode::init"
-val_t NEW_HashMapNode_hash___HashMapNode___init(val_t p0, val_t p1);
-typedef val_t (* hash___HashMapIterator___item_t)(val_t  self);
-val_t hash___HashMapIterator___item(val_t  self);
-#define LOCATE_hash___HashMapIterator___item "hash::HashMapIterator::(abstract_collection::Iterator::item)"
-typedef void (* hash___HashMapIterator___next_t)(val_t  self);
-void hash___HashMapIterator___next(val_t  self);
-#define LOCATE_hash___HashMapIterator___next "hash::HashMapIterator::(abstract_collection::Iterator::next)"
-typedef val_t (* hash___HashMapIterator___is_ok_t)(val_t  self);
-val_t hash___HashMapIterator___is_ok(val_t  self);
-#define LOCATE_hash___HashMapIterator___is_ok "hash::HashMapIterator::(abstract_collection::Iterator::is_ok)"
-typedef val_t (* hash___HashMapIterator___key_t)(val_t  self);
-val_t hash___HashMapIterator___key(val_t  self);
-#define LOCATE_hash___HashMapIterator___key "hash::HashMapIterator::(abstract_collection::MapIterator::key)"
-typedef void (* hash___HashMapIterator___item__eq_t)(val_t  self, val_t  param0);
-void hash___HashMapIterator___item__eq(val_t  self, val_t  param0);
-#define LOCATE_hash___HashMapIterator___item__eq "hash::HashMapIterator::(abstract_collection::MapIterator::item=)"
-typedef void (* hash___HashMapIterator___init_t)(val_t  self, val_t  param0, int* init_table);
-void hash___HashMapIterator___init(val_t  self, val_t  param0, int* init_table);
-#define LOCATE_hash___HashMapIterator___init "hash::HashMapIterator::init"
-val_t NEW_HashMapIterator_hash___HashMapIterator___init(val_t p0);
-typedef val_t (* hash___HashSet___iterator_t)(val_t  self);
-val_t hash___HashSet___iterator(val_t  self);
-#define LOCATE_hash___HashSet___iterator "hash::HashSet::(abstract_collection::Collection::iterator)"
-typedef val_t (* hash___HashSet___is_empty_t)(val_t  self);
-val_t hash___HashSet___is_empty(val_t  self);
-#define LOCATE_hash___HashSet___is_empty "hash::HashSet::(abstract_collection::Collection::is_empty)"
-typedef val_t (* hash___HashSet___has_t)(val_t  self, val_t  param0);
-val_t hash___HashSet___has(val_t  self, val_t  param0);
-#define LOCATE_hash___HashSet___has "hash::HashSet::(abstract_collection::Collection::has)"
-typedef val_t (* hash___HashSet___first_t)(val_t  self);
-val_t hash___HashSet___first(val_t  self);
-#define LOCATE_hash___HashSet___first "hash::HashSet::(abstract_collection::Collection::first)"
-typedef void (* hash___HashSet___clear_t)(val_t  self);
-void hash___HashSet___clear(val_t  self);
-#define LOCATE_hash___HashSet___clear "hash::HashSet::(abstract_collection::RemovableCollection::clear)"
-typedef void (* hash___HashSet___remove_t)(val_t  self, val_t  param0);
-void hash___HashSet___remove(val_t  self, val_t  param0);
-#define LOCATE_hash___HashSet___remove "hash::HashSet::(abstract_collection::RemovableCollection::remove)"
-typedef void (* hash___HashSet___add_t)(val_t  self, val_t  param0);
-void hash___HashSet___add(val_t  self, val_t  param0);
-#define LOCATE_hash___HashSet___add "hash::HashSet::(abstract_collection::SimpleCollection::add)"
-typedef void (* hash___HashSet___init_t)(val_t  self, int* init_table);
-void hash___HashSet___init(val_t  self, int* init_table);
-#define LOCATE_hash___HashSet___init "hash::HashSet::init"
-val_t NEW_HashSet_hash___HashSet___init();
-typedef val_t (* hash___HashSetNode___key_t)(val_t  self);
-val_t hash___HashSetNode___key(val_t  self);
-#define LOCATE_hash___HashSetNode___key "hash::HashSetNode::(hash::HashNode::key)"
-typedef void (* hash___HashSetNode___key__eq_t)(val_t  self, val_t  param0);
-void hash___HashSetNode___key__eq(val_t  self, val_t  param0);
-#define LOCATE_hash___HashSetNode___key__eq "hash::HashSetNode::key="
-typedef void (* hash___HashSetNode___init_t)(val_t  self, val_t  param0, int* init_table);
-void hash___HashSetNode___init(val_t  self, val_t  param0, int* init_table);
-#define LOCATE_hash___HashSetNode___init "hash::HashSetNode::init"
-val_t NEW_HashSetNode_hash___HashSetNode___init(val_t p0);
-typedef val_t (* hash___HashSetIterator___item_t)(val_t  self);
-val_t hash___HashSetIterator___item(val_t  self);
-#define LOCATE_hash___HashSetIterator___item "hash::HashSetIterator::(abstract_collection::Iterator::item)"
-typedef void (* hash___HashSetIterator___next_t)(val_t  self);
-void hash___HashSetIterator___next(val_t  self);
-#define LOCATE_hash___HashSetIterator___next "hash::HashSetIterator::(abstract_collection::Iterator::next)"
-typedef val_t (* hash___HashSetIterator___is_ok_t)(val_t  self);
-val_t hash___HashSetIterator___is_ok(val_t  self);
-#define LOCATE_hash___HashSetIterator___is_ok "hash::HashSetIterator::(abstract_collection::Iterator::is_ok)"
-typedef void (* hash___HashSetIterator___init_t)(val_t  self, val_t  param0, int* init_table);
-void hash___HashSetIterator___init(val_t  self, val_t  param0, int* init_table);
-#define LOCATE_hash___HashSetIterator___init "hash::HashSetIterator::init"
-val_t NEW_HashSetIterator_hash___HashSetIterator___init(val_t p0);
+static const char * const LOCATE_hash___Object___hash = "hash::Object::hash";
+val_t hash___Object___hash(val_t p0);
+typedef val_t (*hash___Object___hash_t)(val_t p0);
+static const char * const LOCATE_hash___Int___hash = "hash::Int::(hash::Object::hash)";
+val_t hash___Int___hash(val_t p0);
+typedef val_t (*hash___Int___hash_t)(val_t p0);
+static const char * const LOCATE_hash___Char___hash = "hash::Char::(hash::Object::hash)";
+val_t hash___Char___hash(val_t p0);
+typedef val_t (*hash___Char___hash_t)(val_t p0);
+static const char * const LOCATE_hash___Bool___hash = "hash::Bool::(hash::Object::hash)";
+val_t hash___Bool___hash(val_t p0);
+typedef val_t (*hash___Bool___hash_t)(val_t p0);
 #endif