]> git.lizzy.rs Git - plan9front.git/blob - sys/src/cmd/eqn/funny.c
ndb/dns: remove single-ip-address assuptions
[plan9front.git] / sys / src / cmd / eqn / funny.c
1 #include "e.h"
2 #include "y.tab.h"
3
4 extern int Funnyps;
5 extern double Funnyht, Funnybase;
6
7 void funny(int n)
8 {
9         char *f = 0;
10
11         yyval = salloc();
12         switch (n) {
13         case SUM:
14                 f = lookup(deftbl, "sum_def")->cval; break;
15         case UNION:
16                 f = lookup(deftbl, "union_def")->cval; break;
17         case INTER:     /* intersection */
18                 f = lookup(deftbl, "inter_def")->cval; break;
19         case PROD:
20                 f = lookup(deftbl, "prod_def")->cval; break;
21         default:
22                 ERROR "funny type %d in funny", n FATAL;
23         }
24         printf(".ds %d %s\n", yyval, f);
25         eht[yyval] = EM(1.0, ps+Funnyps) - EM(Funnyht, ps);
26         ebase[yyval] = EM(Funnybase, ps);
27         dprintf(".\tS%d <- %s; h=%g b=%g\n", 
28                 yyval, f, eht[yyval], ebase[yyval]);
29         lfont[yyval] = rfont[yyval] = ROM;
30 }