void optpp(md_addr_t addr, int L, int (*stack_proc)(int start, int end), void (*inf_handler)(md_addr_t addr, int cur_time)) { int prev_time, sf; if (p_inum > la_limit-1) { start = (la_limit % (2*LA_DIST)); end = start + LA_DIST; if ((sf = (*stack_proc)(start, end)) == 1) return; la_limit += LA_DIST; toggle(oe_flag); if (oe_flag) base += 2*LA_DIST; } addr >>= L; addr_array[(p_inum - base) % (2*LA_DIST)] = addr; if ((prev_time = ft_hash(addr)) >= 0) { if ((la_limit - prev_time) <= 2*LA_DIST) time_array[(prev_time - base) % (2*LA_DIST)] = p_inum; else (*inf_handler)(addr, p_inum); } else (*inf_handler)(addr, p_inum); ++p_inum; }
int ft_place_tree(t_btree **hash_tab, char *keyword, char *value) { size_t hash; hash = ft_hash(keyword); return (ft_create_tree(&hash_tab[hash], keyword, value)); free(keyword); free(value); }