int main(int argc, char const *argv[]) { List tegut; initializeList(&tegut); std::cout << "Ausgabe first: " << tegut.first << std::endl; std::cout << "Ausgabe last: " << tegut.last << std::endl; for (int i = 0; i < 3; i++) { insert0(&tegut, insertArtikel()); // std::cout << "Ausgabe first: " << tegut.first << std::endl; // std::cout << "Ausgabe last: " << tegut.last << std::endl; } insertLast(&tegut, insertArtikel()); insertPos(&tegut, insertArtikel(), 2); outputList(&tegut); std::cout << "Nach remove0:" << std::endl; remove0(&tegut); outputList(&tegut); std::cout << "Nach removePos:" << std::endl; removePos(&tegut, 1); outputList(&tegut); return 0; }
Pair insert(char *name, byte arity, Psc mod_psc, int *is_new) { Pair *search_ptr, temp; if (is_globalmod(mod_psc)) { search_ptr = (Pair *)(symbol_table.table + hash(name, arity, symbol_table.size)); temp = insert0(name, arity, search_ptr, is_new); if (*is_new) symbol_table_increment_and_check_for_overflow; return temp; } else { search_ptr = (Pair *)&(get_data(mod_psc)); return insert0(name, arity, search_ptr, is_new); } } /* insert */
Pair insert_module(int type, char *name) { Pair new_pair; int is_new; new_pair = insert0(name, 0, (Pair *)&flags[MOD_LIST], &is_new); if (is_new) { set_type(new_pair->psc_ptr, type); } else { /* set loading bit: T_MODU - loaded; 0 - unloaded */ set_type(new_pair->psc_ptr, get_type(new_pair->psc_ptr) | type); } return new_pair; } /* insert_module */