2014-09-04 07:44:53 +04:00
|
|
|
/* include/g/x.h
|
|
|
|
**
|
|
|
|
** This file is in the public domain.
|
|
|
|
*/
|
2014-11-06 03:20:01 +03:00
|
|
|
/** u3x_*: read, but bail with c3__exit on a crash.
|
2014-09-04 07:44:53 +04:00
|
|
|
**/
|
|
|
|
#if 1
|
2014-11-06 03:20:01 +03:00
|
|
|
# define u3x_h(som) u3a_h(som)
|
|
|
|
# define u3x_t(som) u3a_t(som)
|
2014-09-04 07:44:53 +04:00
|
|
|
#else
|
2014-11-06 03:20:01 +03:00
|
|
|
/* u3x_h (u3h): head.
|
2014-09-04 07:44:53 +04:00
|
|
|
*/
|
2014-09-06 00:13:24 +04:00
|
|
|
u3_noun
|
2014-11-06 03:20:01 +03:00
|
|
|
u3x_h(u3_noun som);
|
2014-09-04 07:44:53 +04:00
|
|
|
|
2014-11-06 03:20:01 +03:00
|
|
|
/* u3x_t (u3t): tail.
|
2014-09-04 07:44:53 +04:00
|
|
|
*/
|
2014-09-06 00:13:24 +04:00
|
|
|
u3_noun
|
2014-11-06 03:20:01 +03:00
|
|
|
u3x_t(u3_noun som);
|
2014-09-04 07:44:53 +04:00
|
|
|
#endif
|
2014-11-06 03:20:01 +03:00
|
|
|
/* u3x_good(): test for u3_none.
|
2014-09-04 07:44:53 +04:00
|
|
|
*/
|
2014-09-06 00:13:24 +04:00
|
|
|
u3_noun
|
2014-11-06 03:20:01 +03:00
|
|
|
u3x_good(u3_weak som);
|
2014-09-04 07:44:53 +04:00
|
|
|
|
2014-11-06 03:20:01 +03:00
|
|
|
/* u3x_at (u3at): fragment.
|
2014-09-04 07:44:53 +04:00
|
|
|
*/
|
2014-09-06 00:13:24 +04:00
|
|
|
u3_noun
|
2014-11-06 03:20:01 +03:00
|
|
|
u3x_at(u3_noun axe, u3_noun som);
|
2014-09-04 07:44:53 +04:00
|
|
|
|
2014-11-06 03:20:01 +03:00
|
|
|
/* u3x_cell():
|
2014-09-04 07:44:53 +04:00
|
|
|
**
|
|
|
|
** Divide `a` as a cell `[b c]`.
|
|
|
|
*/
|
|
|
|
void
|
2014-11-06 03:20:01 +03:00
|
|
|
u3x_cell(u3_noun a,
|
2014-09-06 00:13:24 +04:00
|
|
|
u3_noun* b,
|
|
|
|
u3_noun* c);
|
2014-09-04 07:44:53 +04:00
|
|
|
|
2014-11-06 03:20:01 +03:00
|
|
|
/* u3x_trel():
|
2014-09-04 07:44:53 +04:00
|
|
|
**
|
|
|
|
** Divide `a` as a trel `[b c d]`, or bail.
|
|
|
|
*/
|
|
|
|
void
|
2014-11-06 03:20:01 +03:00
|
|
|
u3x_trel(u3_noun a,
|
2014-09-06 00:13:24 +04:00
|
|
|
u3_noun* b,
|
|
|
|
u3_noun* c,
|
|
|
|
u3_noun* d);
|
2014-09-04 07:44:53 +04:00
|
|
|
|
2014-11-06 03:20:01 +03:00
|
|
|
/* u3x_qual():
|
2014-09-04 07:44:53 +04:00
|
|
|
**
|
|
|
|
** Divide `a` as a quadruple `[b c d e]`.
|
|
|
|
*/
|
|
|
|
void
|
2014-11-06 03:20:01 +03:00
|
|
|
u3x_qual(u3_noun a,
|
2014-09-06 00:13:24 +04:00
|
|
|
u3_noun* b,
|
|
|
|
u3_noun* c,
|
|
|
|
u3_noun* d,
|
|
|
|
u3_noun* e);
|
2014-10-22 00:53:27 +04:00
|
|
|
|
2014-11-06 03:20:01 +03:00
|
|
|
/* u3x_quil():
|
2014-10-22 00:53:27 +04:00
|
|
|
**
|
|
|
|
** Divide `a` as a quintuple `[b c d e f]`.
|
|
|
|
*/
|
|
|
|
void
|
2014-11-06 03:20:01 +03:00
|
|
|
u3x_quil(u3_noun a,
|
2014-10-22 00:53:27 +04:00
|
|
|
u3_noun* b,
|
|
|
|
u3_noun* c,
|
|
|
|
u3_noun* d,
|
|
|
|
u3_noun* e,
|
|
|
|
u3_noun* f);
|