From d139b76ece47d95feccd303c4bd232893e7f18b0 Mon Sep 17 00:00:00 2001 From: Paul Driver Date: Fri, 27 Apr 2018 10:21:09 -0700 Subject: [PATCH] lien --- jets/b/lien.c | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/jets/b/lien.c b/jets/b/lien.c index 6768ab5110..cede8fa83d 100644 --- a/jets/b/lien.c +++ b/jets/b/lien.c @@ -3,12 +3,8 @@ */ #include "all.h" - -/* functions -*/ - u3_noun - u3qb_lien(u3_noun a, - u3_noun b) + static u3_noun + _lien_in(u3j_site* sit_u, u3_noun a) { if ( 0 == a ) { return c3n; @@ -18,14 +14,28 @@ if ( c3n == u3du(a) ) { return u3m_bail(c3__exit); } - else switch ( (loz = u3n_slam_on(u3k(b), u3k(u3h(a)))) ) { + else switch ( (loz = u3j_gate_slam(sit_u, u3k(u3h(a)))) ) { case c3y: return c3y; - case c3n: return u3qb_lien(u3t(a), b); + case c3n: return _lien_in(sit_u, u3t(a)); default: u3z(loz); return u3m_bail(c3__exit); } } } + +/* functions +*/ + u3_noun + u3qb_lien(u3_noun a, + u3_noun b) + { + u3_noun pro; + u3j_site sit_u; + u3j_gate_prep(&sit_u, b); + pro = _lien_in(&sit_u, a); + u3j_gate_lose(&sit_u); + return pro; + } u3_noun u3wb_lien(u3_noun cor) {