static u2_flag _nest_dext(u2_wire wir_r, u2_noun van, u2_noun sut, u2_noun ref, u2_noun gil) { if ( (u2_yes == u2_sing(sut, ref)) ) { return u2_yes; } { u2_ho_jet *jet_j = &j2_mcj(Pt6, ut, nest)[0]; if ( !(jet_j->sat_s & u2_jet_memo) ) { return _nest_dext_in(wir_r, van, sut, ref, gil); } else { c3_m fun_m = u2_jet_fun_m(jet_j); u2_noun pro = u2_rl_find_cell(wir_r, fun_m, sut, ref); if ( u2_none != pro ) { return pro; } else { pro = _nest_dext_in(wir_r, van, sut, ref, gil); return u2_rl_save_cell(wir_r, fun_m, sut, ref, pro); } } } }
static u2_flag _nest_dext_to(u2_wire wir_r, u2_noun van, u2_noun sut, u2_flag tel, u2_noun ref, u2_noun gil) { u2_flag tyn = _nest_dext_in(wir_r, van, sut, tel, ref, gil); if ( (u2_yes == tyn) || (u2_no == tel) ) { return tyn; } else { u2_noun dun = j2_mcy(Pt6, ut, dunq)(wir_r, van, "need", sut); u2_noun niz = j2_mcy(Pt6, ut, dunq)(wir_r, van, "have", ref); u2_bl_push(wir_r, u2_bc(wir_r, c3__mean, dun)); u2_bl_push(wir_r, u2_bc(wir_r, c3__mean, niz)); return u2_bl_error(wir_r, "nest-fail"); } }
static u3_noun _nest_dext_to( u3_noun van, u3_noun sut, u3_noun tel, u3_noun ref, u3_noun gil) { u3_noun tyn = _nest_dext_in(van, sut, tel, ref, gil); if ( (c3y == tyn) || (c3n == tel) ) { return tyn; } else { // u3_noun dun = u3qfu_dunq(van, "need", sut); // u3_noun niz = u3qfu_dunq(van, "have", ref); // u3t_push(u3nc(c3__mean, dun)); // u3t_push(u3nc(c3__mean, niz)); return u3m_error("type-fail"); } }