mirror of
https://github.com/urbit/shrub.git
synced 2024-11-28 05:22:27 +03:00
Various %bull-related updates.
This commit is contained in:
parent
4bb328a1a4
commit
2b78e93642
2
Makefile
2
Makefile
@ -174,13 +174,13 @@ J191_5_OFILES=\
|
||||
|
||||
J191_6_OFILES=\
|
||||
gen191/6/ap.o \
|
||||
gen191/6/bull.o \
|
||||
gen191/6/cell.o \
|
||||
gen191/6/comb.o \
|
||||
gen191/6/cons.o \
|
||||
gen191/6/core.o \
|
||||
gen191/6/cube.o \
|
||||
gen191/6/face.o \
|
||||
gen191/6/fine.o \
|
||||
gen191/6/fitz.o \
|
||||
gen191/6/flan.o \
|
||||
gen191/6/flay.o \
|
||||
|
40
gen191/6/bull.c
Normal file
40
gen191/6/bull.c
Normal file
@ -0,0 +1,40 @@
|
||||
/* j/6/bull.c
|
||||
**
|
||||
** This file is in the public domain.
|
||||
*/
|
||||
#include "all.h"
|
||||
#include "../pit.h"
|
||||
|
||||
/* functions
|
||||
*/
|
||||
u2_noun // transfer
|
||||
j2_mby(Pt6, bull)(u2_wire wir_r,
|
||||
u2_noun bid, // retain
|
||||
u2_noun der) // retain
|
||||
{
|
||||
if ( c3__void == der ) {
|
||||
return c3__void;
|
||||
}
|
||||
else return u2_bt
|
||||
(wir_r, c3__bull, u2_rx(wir_r, bid), u2_rx(wir_r, der));
|
||||
}
|
||||
u2_noun // transfer
|
||||
j2_mb(Pt6, bull)(u2_wire wir_r,
|
||||
u2_noun cor) // retain
|
||||
{
|
||||
u2_noun bid, der;
|
||||
|
||||
if ( u2_no == u2_mean(cor, u2_cv_sam_2, &bid, u2_cv_sam_3, &der, 0) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
} else {
|
||||
return j2_mby(Pt6, bull)(wir_r, bid, der);
|
||||
}
|
||||
}
|
||||
|
||||
/* structures
|
||||
*/
|
||||
u2_ho_jet
|
||||
j2_mbj(Pt6, bull)[] = {
|
||||
{ ".2", c3__hevy, j2_mb(Pt6, bull), Tier6_a, u2_none, u2_none },
|
||||
{ }
|
||||
};
|
@ -27,7 +27,10 @@
|
||||
default: return u2_bl_bail(wir_r, c3__fail);
|
||||
|
||||
case c3__atom: return _0;
|
||||
|
||||
case c3__bull: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
return _burn_in(wir_r, van, q_sut, gil);
|
||||
}
|
||||
case c3__cell: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
return u2_bc
|
||||
|
@ -43,7 +43,7 @@
|
||||
u2_noun ref, // retain
|
||||
u2_noun bix) // retain
|
||||
{
|
||||
u2_noun p_sut, q_sut, r_sut, p_ref, q_ref;
|
||||
u2_noun p_sut, q_sut, p_ref, q_ref;
|
||||
|
||||
if ( u2_no == u2_dust(ref) ) {
|
||||
switch ( ref ) {
|
||||
@ -74,6 +74,14 @@
|
||||
}
|
||||
else return _crop_sint(wir_r, van, sut, ref, bix);
|
||||
}
|
||||
case c3__bull: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
u2_noun foz = _crop_dext(wir_r, van, q_sut, ref, bix);
|
||||
u2_noun ret = j2_mby(Pt6, bull)(wir_r, p_sut, foz);
|
||||
|
||||
u2_rz(wir_r, foz);
|
||||
return ret;
|
||||
}
|
||||
case c3__cell: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
if ( c3__atom == u2_h(ref) ) {
|
||||
@ -131,14 +139,6 @@
|
||||
u2_rz(wir_r, foz);
|
||||
return ret;
|
||||
}
|
||||
case c3__fine: u2_bi_trel(wir_r, u2_t(sut), &p_sut, &q_sut, &r_sut);
|
||||
{
|
||||
u2_noun foz = _crop_dext(wir_r, van, r_sut, ref, bix);
|
||||
u2_noun ret = j2_mby(Pt6, fine)(wir_r, p_sut, q_sut, foz);
|
||||
|
||||
u2_rz(wir_r, foz);
|
||||
return ret;
|
||||
}
|
||||
case c3__fork: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
u2_noun dis = _crop_dext(wir_r, van, p_sut, ref, bix);
|
||||
@ -187,9 +187,12 @@
|
||||
switch ( u2_h(ref) ) {
|
||||
default: return u2_bl_bail(wir_r, c3__fail);
|
||||
|
||||
case c3__bull: u2_bi_cell(wir_r, u2_t(ref), &p_ref, &q_ref);
|
||||
{
|
||||
return _crop_dext(wir_r, van, sut, q_ref, bix);
|
||||
}
|
||||
case c3__core:
|
||||
case c3__cube:
|
||||
case c3__fine: {
|
||||
case c3__cube: {
|
||||
return u2_rx(wir_r, sut);
|
||||
}
|
||||
case c3__face: u2_bi_cell(wir_r, u2_t(ref), &p_ref, &q_ref);
|
||||
|
@ -21,7 +21,7 @@
|
||||
u2_noun lat, // retain
|
||||
u2_noun vil) // retain
|
||||
{
|
||||
u2_noun ret, p_sut, q_sut, r_sut;
|
||||
u2_noun ret, p_sut, q_sut;
|
||||
|
||||
if ( u2_no == u2_dust(sut) ) switch ( sut ) {
|
||||
default: return u2_bl_bail(wir_r, c3__fail);
|
||||
@ -50,6 +50,20 @@
|
||||
ret = c3__void;
|
||||
break;
|
||||
}
|
||||
case c3__bull: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
u2_noun hic = j2_mcx(Pt6, ut, cull)
|
||||
(wir_r, van, q_sut, pol, axe, ref);
|
||||
|
||||
if ( u2_yes == u2_sing(hic, q_sut) ) {
|
||||
ret = u2_rx(wir_r, sut);
|
||||
} else {
|
||||
ret = j2_mby(Pt6, bull)(wir_r, p_sut, hic);
|
||||
}
|
||||
u2_rl_lose(wir_r, hic);
|
||||
|
||||
break;
|
||||
}
|
||||
case c3__cell: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
u2_noun hub;
|
||||
@ -92,19 +106,6 @@
|
||||
|
||||
break;
|
||||
}
|
||||
case c3__fine: u2_bi_trel(wir_r, u2_t(sut), &p_sut, &q_sut, &r_sut);
|
||||
{
|
||||
u2_noun hic = j2_mcx(Pt6, ut, cull)(wir_r, van, r_sut, pol, axe, ref);
|
||||
|
||||
if ( u2_yes == u2_sing(hic, r_sut) ) {
|
||||
ret = u2_rx(wir_r, sut);
|
||||
} else {
|
||||
ret = j2_mby(Pt6, fine)(wir_r, p_sut, q_sut, hic);
|
||||
}
|
||||
u2_rl_lose(wir_r, hic);
|
||||
|
||||
break;
|
||||
}
|
||||
case c3__fork: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
if ( u2_yes == j2_mcc(Pt4, in, has)(wir_r, vil, sut) ) {
|
||||
|
@ -16,7 +16,7 @@
|
||||
u2_noun cog,
|
||||
u2_noun gil)
|
||||
{
|
||||
u2_noun p_sut, q_sut;
|
||||
u2_noun p_sut, q_sut, pp_sut, qp_sut, rp_sut;
|
||||
|
||||
if ( u2_yes == u2_stud(sut) ) {
|
||||
return u2_bc(wir_r, u2_rx(wir_r, dep), u2_nul);
|
||||
@ -24,6 +24,32 @@
|
||||
else switch ( u2_h(sut) ) {
|
||||
default: return u2_bc(wir_r, u2_rx(wir_r, dep), u2_nul);
|
||||
|
||||
case c3__bull: {
|
||||
if ( (u2_no == u2_as_trel(sut, 0, &p_sut, &q_sut)) ||
|
||||
(u2_no == u2_as_trel(p_sut, &pp_sut, &qp_sut, &rp_sut)) )
|
||||
{
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
}
|
||||
else {
|
||||
if ( u2_no == u2_sing(cog, pp_sut) ) {
|
||||
return u2_bc(wir_r, u2_rx(wir_r, dep), u2_nul);
|
||||
}
|
||||
else {
|
||||
if ( 0 == dep ) {
|
||||
return u2_bc
|
||||
(wir_r, 0,
|
||||
u2_bq(wir_r,
|
||||
u2_nul,
|
||||
u2_rx(wir_r, qp_sut),
|
||||
u2_yes,
|
||||
u2_rx(wir_r, rp_sut)));
|
||||
} else {
|
||||
return u2_bc
|
||||
(wir_r, j2_mbc(Pt1, dec)(wir_r, dep), u2_nul);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
case c3__cell: {
|
||||
if ( (u2_no == u2_as_trel(sut, 0, &p_sut, &q_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
@ -177,13 +203,6 @@
|
||||
}
|
||||
}
|
||||
case c3__cube:
|
||||
case c3__fine: {
|
||||
u2_type fop = j2_mcy(Pt6, ut, repo)(wir_r, van, sut);
|
||||
u2_noun ret = _find_in(wir_r, van, fop, dep, way, cog, gil);
|
||||
|
||||
u2_rz(wir_r, fop);
|
||||
return ret;
|
||||
}
|
||||
case c3__fork: {
|
||||
if ( (u2_no == u2_as_trel(sut, 0, &p_sut, &q_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
|
@ -13,7 +13,7 @@
|
||||
u2_noun sut, // retain
|
||||
u2_noun dib) // retain
|
||||
{
|
||||
u2_noun p_sut, q_sut, r_sut;
|
||||
u2_noun p_sut, q_sut;
|
||||
|
||||
if ( u2_no == u2_dust(sut) ) switch ( sut ) {
|
||||
default: return u2_bl_bail(wir_r, c3__fail);
|
||||
@ -34,6 +34,10 @@
|
||||
{
|
||||
return u2_stud(dib);
|
||||
}
|
||||
case c3__bull: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
return j2_mcx(Pt6, ut, firm)(wir_r, van, q_sut, dib);
|
||||
}
|
||||
case c3__cell: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
return u2_and
|
||||
@ -63,23 +67,6 @@
|
||||
{
|
||||
return j2_mcx(Pt6, ut, firm)(wir_r, van, q_sut, dib);
|
||||
}
|
||||
case c3__fine: u2_bi_trel(wir_r, u2_t(sut), &p_sut, &q_sut, &r_sut);
|
||||
{
|
||||
if ( u2_no == j2_mcx(Pt6, ut, firm)(wir_r, van, r_sut, dib) ) {
|
||||
return u2_no;
|
||||
} else {
|
||||
u2_noun feg = j2_mcy(Pt6, ut, bust)(wir_r, van, q_sut, dib);
|
||||
u2_bean ret;
|
||||
|
||||
switch ( p_sut ) {
|
||||
default: return u2_bl_bail(wir_r, c3__fail);
|
||||
case c3__pure: ret = u2_sing(dib, feg);
|
||||
case c3__very: ret = u2_sing(u2_yes, feg);
|
||||
}
|
||||
u2_rz(wir_r, feg);
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
case c3__fork: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
return u2_or(j2_mcx(Pt6, ut, firm)(wir_r, van, p_sut, dib),
|
||||
|
@ -36,6 +36,13 @@
|
||||
u2_rl_lose(wir_r, ton);
|
||||
return pro;
|
||||
}
|
||||
case c3__bull: {
|
||||
if ( (u2_no == u2_as_trel(sut, 0, &p_sut, &q_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
} else {
|
||||
return _fish_in(wir_r, van, q_sut, axe, vit);
|
||||
}
|
||||
}
|
||||
case c3__cell: {
|
||||
if ( (u2_no == u2_as_trel(sut, 0, &p_sut, &q_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
@ -78,9 +85,6 @@
|
||||
return _fish_in(wir_r, van, q_sut, axe, vit);
|
||||
}
|
||||
}
|
||||
case c3__fine: {
|
||||
return u2_bc(wir_r, _0, _0);
|
||||
}
|
||||
case c3__fork: {
|
||||
if ( (u2_no == u2_as_trel(sut, 0, &p_sut, &q_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
|
@ -41,7 +41,7 @@
|
||||
u2_noun ref,
|
||||
u2_noun bix)
|
||||
{
|
||||
u2_noun p_sut, q_sut, r_sut;
|
||||
u2_noun p_sut, q_sut;
|
||||
|
||||
if ( u2_yes == u2_sing(sut, ref) || (c3__noun == ref) ) {
|
||||
return u2_rx(wir_r, sut);
|
||||
@ -75,6 +75,14 @@
|
||||
}
|
||||
return _fuse_in(wir_r, van, ref, sut, bix);
|
||||
}
|
||||
case c3__bull: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
u2_noun vot = _fuse_in(wir_r, van, q_sut, ref, bix);
|
||||
u2_noun ret = j2_mby(Pt6, bull)(wir_r, p_sut, vot);
|
||||
|
||||
u2_rl_lose(wir_r, vot);
|
||||
return ret;
|
||||
}
|
||||
case c3__cell: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
u2_noun p_ref, q_ref;
|
||||
@ -115,14 +123,6 @@
|
||||
u2_rl_lose(wir_r, vot);
|
||||
return ret;
|
||||
}
|
||||
case c3__fine: u2_bi_trel(wir_r, u2_t(sut), &p_sut, &q_sut, &r_sut);
|
||||
{
|
||||
u2_noun vot = _fuse_in(wir_r, van, r_sut, ref, bix);
|
||||
u2_noun ret = j2_mby(Pt6, fine)(wir_r, p_sut, q_sut, vot);
|
||||
|
||||
u2_rz(wir_r, vot);
|
||||
return ret;
|
||||
}
|
||||
case c3__fork: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
u2_noun dis = _fuse_in(wir_r, van, p_sut, ref, bix);
|
||||
|
@ -30,6 +30,10 @@
|
||||
{
|
||||
return u2_rx(wir_r, ref);
|
||||
}
|
||||
case c3__bull: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
return j2_mby(Pt6, bull)(wir_r, p_sut, ref);
|
||||
}
|
||||
case c3__face: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
if ( u2_yes == u2_sing(p_sut, u2_t(qog)) ) {
|
||||
@ -37,7 +41,6 @@
|
||||
}
|
||||
else return u2_bl_error(wir_r, "heal-name");
|
||||
}
|
||||
case c3__fine:
|
||||
case c3__hold: {
|
||||
u2_noun rep = j2_mcy(Pt6, ut, repo)(wir_r, van, sut);
|
||||
u2_noun ret = _heal_by(wir_r, van, rep, qog, ref);
|
||||
|
@ -660,6 +660,19 @@
|
||||
u2_rl_lose(wir_r, dov);
|
||||
return ret;
|
||||
}
|
||||
case c3__tstr: u2_bi_trel(wir_r, u2_t(gen), &p_gen, &q_gen, &r_gen);
|
||||
_mint_used(wir_r);
|
||||
{
|
||||
u2_noun sep = j2_mcy(Pt6, ut, seep)(wir_r, van, sut, c3__both, q_gen);
|
||||
u2_noun bid = u2_bt(wir_r, u2k(p_gen), u2k(q_gen), sep);
|
||||
u2_noun boc = j2_mby(Pt6, bull)(wir_r, bid, sut);
|
||||
u2_noun ret = _mint_in(wir_r, van, boc, gol, r_gen);
|
||||
|
||||
u2z(bid);
|
||||
u2z(boc);
|
||||
|
||||
return ret;
|
||||
}
|
||||
case c3__cnts: u2_bi_cell(wir_r, u2_t(gen), &p_gen, &q_gen);
|
||||
_mint_used(wir_r);
|
||||
{
|
||||
|
@ -42,7 +42,7 @@
|
||||
u2_noun sut,
|
||||
u2_noun gil)
|
||||
{
|
||||
u2_noun p_sut, q_sut, r_sut;
|
||||
u2_noun p_sut, q_sut;
|
||||
|
||||
if ( u2_no == u2_dust(sut) ) switch ( sut ) {
|
||||
default: return u2_bl_bail(wir_r, c3__fail);
|
||||
@ -60,6 +60,10 @@
|
||||
{
|
||||
return u2_no;
|
||||
}
|
||||
case c3__bull: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
return _moot_to(wir_r, van, q_sut, gil);
|
||||
}
|
||||
case c3__cell: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
return u2_or(_moot_to(wir_r, van, p_sut, gil),
|
||||
@ -77,10 +81,6 @@
|
||||
{
|
||||
return _moot_to(wir_r, van, q_sut, gil);
|
||||
}
|
||||
case c3__fine: u2_bi_trel(wir_r, u2_t(sut), &p_sut, &q_sut, &r_sut);
|
||||
{
|
||||
return _moot_to(wir_r, van, r_sut, gil);
|
||||
}
|
||||
case c3__fork: u2_bi_cell(wir_r, u2_t(sut), &p_sut, &q_sut);
|
||||
{
|
||||
return u2_and(_moot_to(wir_r, van, p_sut, gil),
|
||||
|
@ -588,6 +588,24 @@
|
||||
u2_rz(wir_r, lem);
|
||||
return ret;
|
||||
}
|
||||
case c3__tstr: u2_bi_trel(wir_r, u2_t(gen), &p_gen, &q_gen, &r_gen);
|
||||
_mull_used(wir_r);
|
||||
{
|
||||
u2_noun sep = j2_mcy(Pt6, ut, seep)(wir_r, van, sut, c3__both, q_gen);
|
||||
u2_noun pox = j2_mcy(Pt6, ut, seep)(wir_r, van, dox, c3__both, q_gen);
|
||||
u2_noun bid = u2_bt(wir_r, u2k(p_gen), u2k(q_gen), sep);
|
||||
u2_noun yub = u2_bt(wir_r, u2k(p_gen), u2k(q_gen), pox);
|
||||
u2_noun boc = j2_mby(Pt6, bull)(wir_r, bid, sut);
|
||||
u2_noun nuf = j2_mby(Pt6, bull)(wir_r, yub, dox);
|
||||
u2_noun ret = _mull_in(wir_r, van, boc, gol, nuf, r_gen);
|
||||
|
||||
u2z(bid);
|
||||
u2z(yub);
|
||||
u2z(boc);
|
||||
u2z(nuf);
|
||||
|
||||
return ret;
|
||||
}
|
||||
case c3__cnts: u2_bi_cell(wir_r, u2_t(gen), &p_gen, &q_gen);
|
||||
_mull_used(wir_r);
|
||||
{
|
||||
|
@ -191,7 +191,7 @@
|
||||
u2_noun ref,
|
||||
u2_noun gil)
|
||||
{
|
||||
u2_noun p_sut, q_sut, r_sut, p_ref, q_ref, r_ref;
|
||||
u2_noun p_sut, q_sut, p_ref, q_ref;
|
||||
|
||||
if ( (u2_no == u2_dust(sut)) ) switch ( sut ) {
|
||||
default: return u2_bl_bail(wir_r, c3__fail);
|
||||
@ -217,6 +217,13 @@
|
||||
}
|
||||
else return _nest_sint(wir_r, van, sut, tel, ref, gil);
|
||||
}
|
||||
case c3__bull: {
|
||||
if ( (u2_no == u2_as_trel(sut, 0, &p_sut, &q_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
} else {
|
||||
return _nest_dext(wir_r, van, q_sut, tel, ref, gil);
|
||||
}
|
||||
}
|
||||
case c3__cell: {
|
||||
if ( (u2_no == u2_as_trel(sut, 0, &p_sut, &q_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
@ -255,19 +262,6 @@
|
||||
return _nest_dext(wir_r, van, q_sut, tel, ref, gil);
|
||||
}
|
||||
}
|
||||
case c3__fine: {
|
||||
if ( (u2_no == u2_as_qual(sut, 0, &p_sut, &q_sut, &r_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
} else {
|
||||
if ( (u2_yes == u2_as_pqr(ref, c3__fine, &p_ref, &q_ref, &r_ref)) ) {
|
||||
return u2_and
|
||||
(u2_sing(p_sut, p_ref),
|
||||
u2_and(u2_sing(q_sut, q_ref),
|
||||
_nest_dext(wir_r, van, r_sut, tel, r_ref, gil)));
|
||||
}
|
||||
else return _nest_sint(wir_r, van, sut, tel, ref, gil);
|
||||
}
|
||||
}
|
||||
case c3__fork: {
|
||||
if ( (u2_no == u2_as_trel(sut, 0, &p_sut, &q_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
@ -286,7 +280,6 @@
|
||||
case c3__cell:
|
||||
case c3__cube:
|
||||
case c3__core:
|
||||
case c3__fine:
|
||||
break;
|
||||
}
|
||||
|
||||
@ -382,7 +375,7 @@
|
||||
u2_noun ref,
|
||||
u2_noun gil)
|
||||
{
|
||||
u2_noun p_ref, q_ref, r_ref;
|
||||
u2_noun p_ref, q_ref;
|
||||
|
||||
if ( (u2_no == u2_dust(ref)) ) {
|
||||
switch ( ref ) {
|
||||
@ -398,6 +391,13 @@
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
}
|
||||
case c3__atom: return u2_no;
|
||||
case c3__bull: {
|
||||
if ( u2_no == u2_as_trel(ref, 0, &p_ref, &q_ref) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
} else {
|
||||
return _nest_dext(wir_r, van, sut, tel, q_ref, gil);
|
||||
}
|
||||
}
|
||||
case c3__cell: return u2_no;
|
||||
case c3__core: {
|
||||
u2_type gam = j2_mcy(Pt6, ut, repo)(wir_r, van, ref);
|
||||
@ -420,13 +420,6 @@
|
||||
return _nest_dext(wir_r, van, sut, tel, q_ref, gil);
|
||||
}
|
||||
}
|
||||
case c3__fine: {
|
||||
if ( u2_no == u2_as_qual(ref, 0, &p_ref, &q_ref, &r_ref) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
} else {
|
||||
return _nest_dext(wir_r, van, sut, tel, r_ref, gil);
|
||||
}
|
||||
}
|
||||
case c3__fork: {
|
||||
if ( (u2_yes == u2_mean(ref, 6, &p_ref, 7, &q_ref, 0)) ) {
|
||||
return u2_and(_nest_dext(wir_r, van, sut, u2_no, p_ref, gil),
|
||||
|
@ -106,13 +106,6 @@
|
||||
return _peek_in(wir_r, van, q_sut, way, axe, gil);
|
||||
}
|
||||
}
|
||||
case c3__fine: {
|
||||
if ( (u2_no == u2_as_qual(sut, 0, &p_sut, &q_sut, &r_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
} else {
|
||||
return _peek_in(wir_r, van, r_sut, way, axe, gil);
|
||||
}
|
||||
}
|
||||
case c3__fork: {
|
||||
if ( (u2_no == u2_as_trel(sut, 0, &p_sut, &q_sut)) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
|
@ -340,6 +340,19 @@
|
||||
u2_rz(wir_r, boc);
|
||||
return ret;
|
||||
}
|
||||
case c3__tstr: u2_bi_trel(wir_r, u2_t(gen), &p_gen, &q_gen, &r_gen);
|
||||
_play_used(wir_r);
|
||||
{
|
||||
u2_noun sep = j2_mcy(Pt6, ut, seep)(wir_r, van, sut, c3__both, q_gen);
|
||||
u2_noun bid = u2_bt(wir_r, u2k(p_gen), u2k(q_gen), sep);
|
||||
u2_noun boc = j2_mby(Pt6, bull)(wir_r, bid, sut);
|
||||
u2_noun ret = _play_x(wir_r, van, boc, r_gen);
|
||||
|
||||
u2z(bid);
|
||||
u2z(boc);
|
||||
|
||||
return ret;
|
||||
}
|
||||
case c3__cnts: u2_bi_cell(wir_r, u2_t(gen), &p_gen, &q_gen);
|
||||
_play_used(wir_r);
|
||||
{
|
||||
|
@ -12,7 +12,7 @@
|
||||
u2_noun van, // retain
|
||||
u2_noun sut) // retain
|
||||
{
|
||||
u2_noun p_sut, q_sut, r_sut;
|
||||
u2_noun p_sut, q_sut;
|
||||
|
||||
if ( u2_no == u2_dust(sut) ) switch ( sut ) {
|
||||
default: return u2_rx(wir_r, sut);
|
||||
@ -27,6 +27,13 @@
|
||||
return u2_bl_error(wir_r, "repo-flat");
|
||||
}
|
||||
|
||||
case c3__bull: {
|
||||
if ( u2_no == u2_as_cell(u2_t(sut), &p_sut, &q_sut)) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
} else {
|
||||
return u2_rx(wir_r, q_sut);
|
||||
}
|
||||
}
|
||||
case c3__core: {
|
||||
if ( u2_no == u2_as_cell(u2_t(sut), &p_sut, &q_sut) ) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
@ -48,13 +55,6 @@
|
||||
return u2_rx(wir_r, q_sut);
|
||||
}
|
||||
}
|
||||
case c3__fine: {
|
||||
if ( u2_no == u2_as_trel(u2_t(sut), &p_sut, &q_sut, &r_sut)) {
|
||||
return u2_bl_bail(wir_r, c3__fail);
|
||||
} else {
|
||||
return u2_rx(wir_r, r_sut);
|
||||
}
|
||||
}
|
||||
case c3__hold: {
|
||||
p_sut = u2_t(sut);
|
||||
return j2_mcy(Pt6, ut, rest)(wir_r, van, sut, p_sut);
|
||||
|
@ -141,7 +141,7 @@
|
||||
u2_noun t_hyp = u2_t(hyp);
|
||||
u2_noun zar;
|
||||
u2_noun p_zar, q_zar;
|
||||
u2_noun yip, sic, syp, ret;
|
||||
u2_noun yip, syp, ret;
|
||||
|
||||
if ( u2_yes == u2_dust(i_hyp) ) {
|
||||
yip = u2_rx(wir_r, i_hyp);
|
||||
@ -152,6 +152,7 @@
|
||||
zar = j2_mcx(Pt6, ut, seek)(wir_r, van, sut, way, t_hyp);
|
||||
u2_as_cell(zar, &p_zar, &q_zar);
|
||||
|
||||
#if 0
|
||||
if ( u2_yes == u2_h(yip) ) {
|
||||
sic = u2_nul;
|
||||
} else {
|
||||
@ -164,6 +165,7 @@
|
||||
|
||||
return u2_t(sic);
|
||||
}
|
||||
#endif
|
||||
|
||||
if ( u2_yes == u2_h(q_zar) ) {
|
||||
syp = u2_rx(wir_r, u2_t(q_zar));
|
||||
@ -312,6 +314,27 @@
|
||||
}
|
||||
}
|
||||
|
||||
u2_noun // transfer
|
||||
j2_mcy(Pt6, ut, seep)(u2_wire wir_r,
|
||||
u2_noun van, // retain
|
||||
u2_noun sut, // retain
|
||||
u2_noun way, // retain
|
||||
u2_noun hyp) // retain
|
||||
{
|
||||
u2_noun zar = j2_mcy(Pt6, ut, seek)(wir_r, van, sut, way, hyp);
|
||||
u2_noun q_zar = u2t(zar);
|
||||
|
||||
if ( u2_yes != u2h(q_zar) ) {
|
||||
return u2_cm_bail(c3__exit);
|
||||
}
|
||||
else {
|
||||
u2_noun ret = u2_rx(wir_r, u2t(q_zar));
|
||||
|
||||
u2_rz(wir_r, zar);
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
||||
u2_weak
|
||||
j2_mck(Pt6, ut, seek)(u2_wire wir_r,
|
||||
u2_noun cor)
|
||||
|
12
gen191/pit.h
12
gen191/pit.h
@ -350,6 +350,11 @@
|
||||
|
||||
/** Tier 6.
|
||||
**/
|
||||
u2_noun // transfer
|
||||
j2_mby(Pt6, bull)(u2_wire wir_r,
|
||||
u2_noun bid, // retain
|
||||
u2_noun der); // retain
|
||||
|
||||
u2_noun // transfer
|
||||
j2_mby(Pt6, cell)(u2_wire wir_r,
|
||||
u2_noun hed, // retain
|
||||
@ -604,6 +609,13 @@
|
||||
u2_noun way,
|
||||
u2_noun hep); // retain
|
||||
|
||||
u2_noun // transfer
|
||||
j2_mcy(Pt6, ut, seep)(u2_wire wir_r,
|
||||
u2_noun van, // retain
|
||||
u2_noun sut, // retain
|
||||
u2_noun way,
|
||||
u2_noun hep); // retain
|
||||
|
||||
u2_noun // transfer
|
||||
j2_mcy(Pt6, ut, tack)(u2_wire wir_r,
|
||||
u2_noun van, // retain
|
||||
|
@ -110,13 +110,13 @@
|
||||
|
||||
/* tier 6
|
||||
*/
|
||||
extern u2_ho_jet j2_mbj(Pt6, bull)[];
|
||||
extern u2_ho_jet j2_mbj(Pt6, cell)[];
|
||||
extern u2_ho_jet j2_mbj(Pt6, comb)[];
|
||||
extern u2_ho_jet j2_mbj(Pt6, cons)[];
|
||||
extern u2_ho_jet j2_mbj(Pt6, core)[];
|
||||
extern u2_ho_jet j2_mbj(Pt6, cube)[];
|
||||
extern u2_ho_jet j2_mbj(Pt6, face)[];
|
||||
extern u2_ho_jet j2_mbj(Pt6, fine)[];
|
||||
extern u2_ho_jet j2_mbj(Pt6, fitz)[];
|
||||
extern u2_ho_jet j2_mbj(Pt6, flan)[];
|
||||
extern u2_ho_jet j2_mbj(Pt6, flip)[];
|
||||
@ -237,13 +237,13 @@
|
||||
{ j2_sb(Pt5, stew), 0, j2_mbd(Pt5, stew), 0, u2_none },
|
||||
{ j2_sb(Pt5, stir), 0, j2_mbd(Pt5, stir), 0, u2_none },
|
||||
{ j2_sb(Pt5, trip), j2_mbj(Pt5, trip), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, bull), j2_mbj(Pt6, bull), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, cell), j2_mbj(Pt6, cell), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, comb), j2_mbj(Pt6, comb), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, cons), j2_mbj(Pt6, cons), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, core), j2_mbj(Pt6, core), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, cube), j2_mbj(Pt6, cube), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, face), j2_mbj(Pt6, face), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, fine), j2_mbj(Pt6, fine), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, fitz), j2_mbj(Pt6, fitz), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, flan), j2_mbj(Pt6, flan), 0, 0, u2_none },
|
||||
{ j2_sb(Pt6, flip), j2_mbj(Pt6, flip), 0, 0, u2_none },
|
||||
|
@ -124,6 +124,7 @@
|
||||
# define c3__brts c3_s4('b','r','t','s')
|
||||
# define c3__brzp c3_s4('b','r','z','p')
|
||||
# define c3__bud c3_s3('b','u','d')
|
||||
# define c3__bull c3_s4('b','u','l','l')
|
||||
# define c3__bump c3_s4('b','u','m','p')
|
||||
# define c3__bund c3_s4('b','u','n','d')
|
||||
# define c3__bung c3_s4('b','u','n','g')
|
||||
@ -1011,6 +1012,7 @@
|
||||
# define c3__tshp c3_s4('t','s','h','p')
|
||||
# define c3__tsls c3_s4('t','s','l','s')
|
||||
# define c3__tsms c3_s4('t','s','m','s')
|
||||
# define c3__tstr c3_s4('t','s','t','r')
|
||||
# define c3__tub c3_s3('t','u','b')
|
||||
# define c3__tul c3_s3('t','u','l')
|
||||
# define c3__tule c3_s4('t','u','l','e')
|
||||
|
Loading…
Reference in New Issue
Block a user