summaryrefslogtreecommitdiff
path: root/vere/pkg/noun/jets/e/scot.c
blob: f39c46b05280de780a16d7c7c4a583742cafacd0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
/// @file

#include "jets/k.h"
#include "jets/q.h"
#include "jets/w.h"

#include "noun.h"

#include <ctype.h>

u3_atom
u3qe_scot(u3_atom a, u3_atom b)
{
  switch (a) {
    case c3__tas: return u3k(b);
    case c3__ud:  return u3s_etch_ud(b);
    case c3__ux:  return u3s_etch_ux(b);
    case c3__uv:  return u3s_etch_uv(b);
    case c3__uw:  return u3s_etch_uw(b);
    default:      return u3_none;
  }
}

u3_noun
u3we_scot(u3_noun cor)
{
  u3_atom a, b;
  u3x_mean(cor, u3x_sam_2, &a, u3x_sam_3, &b, 0);
  return u3qe_scot(u3x_atom(a), u3x_atom(b));
}