-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathrepr.h
104 lines (97 loc) · 3.57 KB
/
repr.h
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
// Autogenerated file; see corresponding .js
char* repr_b(VP x,char* s,size_t sz) { int i,xn=x->n,skipn=0,skipstart=-1,skipend=-1;
IF_RET(xn==0,FMT_into_s(sz,"xb0()",0));
if(!SIMPLE(x)) { FMT_into_s(sz,"'b(...)",0); return s; }
else if(xn>1) FMT_into_s(sz,"(",0);
if(REPR_MAX_ITEMS && xn > REPR_MAX_ITEMS) {
skipn=xn-REPR_MAX_ITEMS; skipstart=(xn-skipn)/2; skipend=(xn+skipn)/2; }
for(i=0;i<xn-1;i++) {
if(skipn && i==skipstart) {
FMT_into_s(sz,".. (%d omitted) ..",skipn);
i=skipend;
continue;}
FMT_into_s(sz,"%d,",AS_b(x,i));
}
if(SIMPLE(x)) FMT_into_s(sz,"%d",AS_b(x,i));
if(x->n>1) FMT_into_s(sz,")",0);
return s; }
char* repr_i(VP x,char* s,size_t sz) { int i,xn=x->n,skipn=0,skipstart=-1,skipend=-1;
IF_RET(xn==0,FMT_into_s(sz,"xi0()",0));
if(!SIMPLE(x)) { FMT_into_s(sz,"'i(...)",0); return s; }
else if(xn>1) FMT_into_s(sz,"(",0);
if(REPR_MAX_ITEMS && xn > REPR_MAX_ITEMS) {
skipn=xn-REPR_MAX_ITEMS; skipstart=(xn-skipn)/2; skipend=(xn+skipn)/2; }
for(i=0;i<xn-1;i++) {
if(skipn && i==skipstart) {
FMT_into_s(sz,".. (%d omitted) ..",skipn);
i=skipend;
continue;}
FMT_into_s(sz,"%d,",AS_i(x,i));
}
if(SIMPLE(x)) FMT_into_s(sz,"%d",AS_i(x,i));
if(x->n>1) FMT_into_s(sz,")",0);
return s; }
char* repr_j(VP x,char* s,size_t sz) { int i,xn=x->n,skipn=0,skipstart=-1,skipend=-1;
IF_RET(xn==0,FMT_into_s(sz,"xj0()",0));
if(!SIMPLE(x)) { FMT_into_s(sz,"'j(...)",0); return s; }
else if(xn>1) FMT_into_s(sz,"(",0);
if(REPR_MAX_ITEMS && xn > REPR_MAX_ITEMS) {
skipn=xn-REPR_MAX_ITEMS; skipstart=(xn-skipn)/2; skipend=(xn+skipn)/2; }
for(i=0;i<xn-1;i++) {
if(skipn && i==skipstart) {
FMT_into_s(sz,".. (%d omitted) ..",skipn);
i=skipend;
continue;}
FMT_into_s(sz,"%ld,",AS_j(x,i));
}
if(SIMPLE(x)) FMT_into_s(sz,"%ld",AS_j(x,i));
if(x->n>1) FMT_into_s(sz,")",0);
return s; }
char* repr_f(VP x,char* s,size_t sz) { int i,xn=x->n,skipn=0,skipstart=-1,skipend=-1;
IF_RET(xn==0,FMT_into_s(sz,"xf0()",0));
if(!SIMPLE(x)) { FMT_into_s(sz,"'f(...)",0); return s; }
else if(xn>1) FMT_into_s(sz,"(",0);
if(REPR_MAX_ITEMS && xn > REPR_MAX_ITEMS) {
skipn=xn-REPR_MAX_ITEMS; skipstart=(xn-skipn)/2; skipend=(xn+skipn)/2; }
for(i=0;i<xn-1;i++) {
if(skipn && i==skipstart) {
FMT_into_s(sz,".. (%d omitted) ..",skipn);
i=skipend;
continue;}
FMT_into_s(sz,"%0.5f,",AS_f(x,i));
}
if(SIMPLE(x)) FMT_into_s(sz,"%0.5f",AS_f(x,i));
if(x->n>1) FMT_into_s(sz,")",0);
return s; }
char* repr_1(VP x,char* s,size_t sz) { int i,xn=x->n,skipn=0,skipstart=-1,skipend=-1;
IF_RET(xn==0,FMT_into_s(sz,"x10()",0));
if(!SIMPLE(x)) { FMT_into_s(sz,"'1(...)",0); return s; }
else if(xn>1) FMT_into_s(sz,"(",0);
if(REPR_MAX_ITEMS && xn > REPR_MAX_ITEMS) {
skipn=xn-REPR_MAX_ITEMS; skipstart=(xn-skipn)/2; skipend=(xn+skipn)/2; }
for(i=0;i<xn-1;i++) {
if(skipn && i==skipstart) {
FMT_into_s(sz,".. (%d omitted) ..",skipn);
i=skipend;
continue;}
FMT_into_s(sz,"%p,",AS_1(x,i));
}
if(SIMPLE(x)) FMT_into_s(sz,"%p",AS_1(x,i));
if(x->n>1) FMT_into_s(sz,")",0);
return s; }
char* repr_2(VP x,char* s,size_t sz) { int i,xn=x->n,skipn=0,skipstart=-1,skipend=-1;
IF_RET(xn==0,FMT_into_s(sz,"x20()",0));
if(!SIMPLE(x)) { FMT_into_s(sz,"'2(...)",0); return s; }
else if(xn>1) FMT_into_s(sz,"(",0);
if(REPR_MAX_ITEMS && xn > REPR_MAX_ITEMS) {
skipn=xn-REPR_MAX_ITEMS; skipstart=(xn-skipn)/2; skipend=(xn+skipn)/2; }
for(i=0;i<xn-1;i++) {
if(skipn && i==skipstart) {
FMT_into_s(sz,".. (%d omitted) ..",skipn);
i=skipend;
continue;}
FMT_into_s(sz,"%p,",AS_2(x,i));
}
if(SIMPLE(x)) FMT_into_s(sz,"%p",AS_2(x,i));
if(x->n>1) FMT_into_s(sz,")",0);
return s; }