@@ -33,6 +33,7 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_FLOAT64[ STDLIB_NDARRAY_NDTYPES ] =
33
33
34
34
[ STDLIB_NDARRAY_INT8 ] = 0 ,
35
35
[ STDLIB_NDARRAY_UINT8 ] = 0 ,
36
+ [ STDLIB_NDARRAY_UINT8C ] = 0 ,
36
37
[ STDLIB_NDARRAY_INT16 ] = 0 ,
37
38
[ STDLIB_NDARRAY_UINT16 ] = 0 ,
38
39
[ STDLIB_NDARRAY_INT32 ] = 0 ,
@@ -41,13 +42,19 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_FLOAT64[ STDLIB_NDARRAY_NDTYPES ] =
41
42
[ STDLIB_NDARRAY_UINT64 ] = 0 ,
42
43
43
44
[ STDLIB_NDARRAY_FLOAT32 ] = 1 ,
44
- [ STDLIB_NDARRAY_FLOAT64 ] = 1
45
+ [ STDLIB_NDARRAY_FLOAT64 ] = 1 ,
46
+
47
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
48
+
49
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
50
+ [ STDLIB_NDARRAY_GENERIC ] = 0
45
51
};
46
52
47
53
const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_FLOAT32 [ STDLIB_NDARRAY_NDTYPES ] = {
48
54
49
55
[ STDLIB_NDARRAY_INT8 ] = 0 ,
50
56
[ STDLIB_NDARRAY_UINT8 ] = 0 ,
57
+ [ STDLIB_NDARRAY_UINT8C ] = 0 ,
51
58
[ STDLIB_NDARRAY_INT16 ] = 0 ,
52
59
[ STDLIB_NDARRAY_UINT16 ] = 0 ,
53
60
[ STDLIB_NDARRAY_INT32 ] = 0 ,
@@ -56,13 +63,19 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_FLOAT32[ STDLIB_NDARRAY_NDTYPES ] =
56
63
[ STDLIB_NDARRAY_UINT64 ] = 0 ,
57
64
58
65
[ STDLIB_NDARRAY_FLOAT32 ] = 1 ,
59
- [ STDLIB_NDARRAY_FLOAT64 ] = 1
66
+ [ STDLIB_NDARRAY_FLOAT64 ] = 1 ,
67
+
68
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
69
+
70
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
71
+ [ STDLIB_NDARRAY_GENERIC ] = 0
60
72
};
61
73
62
74
const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_UINT64 [ STDLIB_NDARRAY_NDTYPES ] = {
63
75
64
76
[ STDLIB_NDARRAY_INT8 ] = 0 ,
65
77
[ STDLIB_NDARRAY_UINT8 ] = 1 ,
78
+ [ STDLIB_NDARRAY_UINT8C ] = 1 ,
66
79
[ STDLIB_NDARRAY_INT16 ] = 0 ,
67
80
[ STDLIB_NDARRAY_UINT16 ] = 1 ,
68
81
[ STDLIB_NDARRAY_INT32 ] = 0 ,
@@ -71,13 +84,19 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_UINT64[ STDLIB_NDARRAY_NDTYPES ] = {
71
84
[ STDLIB_NDARRAY_UINT64 ] = 1 ,
72
85
73
86
[ STDLIB_NDARRAY_FLOAT32 ] = 0 ,
74
- [ STDLIB_NDARRAY_FLOAT64 ] = 0
87
+ [ STDLIB_NDARRAY_FLOAT64 ] = 0 ,
88
+
89
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
90
+
91
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
92
+ [ STDLIB_NDARRAY_GENERIC ] = 0
75
93
};
76
94
77
95
const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_INT64 [ STDLIB_NDARRAY_NDTYPES ] = {
78
96
79
97
[ STDLIB_NDARRAY_INT8 ] = 1 ,
80
98
[ STDLIB_NDARRAY_UINT8 ] = 0 ,
99
+ [ STDLIB_NDARRAY_UINT8C ] = 0 ,
81
100
[ STDLIB_NDARRAY_INT16 ] = 1 ,
82
101
[ STDLIB_NDARRAY_UINT16 ] = 0 ,
83
102
[ STDLIB_NDARRAY_INT32 ] = 1 ,
@@ -86,13 +105,19 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_INT64[ STDLIB_NDARRAY_NDTYPES ] = {
86
105
[ STDLIB_NDARRAY_UINT64 ] = 0 ,
87
106
88
107
[ STDLIB_NDARRAY_FLOAT32 ] = 0 ,
89
- [ STDLIB_NDARRAY_FLOAT64 ] = 0
108
+ [ STDLIB_NDARRAY_FLOAT64 ] = 0 ,
109
+
110
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
111
+
112
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
113
+ [ STDLIB_NDARRAY_GENERIC ] = 0
90
114
};
91
115
92
116
const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_UINT32 [ STDLIB_NDARRAY_NDTYPES ] = {
93
117
94
118
[ STDLIB_NDARRAY_INT8 ] = 0 ,
95
119
[ STDLIB_NDARRAY_UINT8 ] = 1 ,
120
+ [ STDLIB_NDARRAY_UINT8C ] = 1 ,
96
121
[ STDLIB_NDARRAY_INT16 ] = 0 ,
97
122
[ STDLIB_NDARRAY_UINT16 ] = 1 ,
98
123
[ STDLIB_NDARRAY_INT32 ] = 0 ,
@@ -101,13 +126,19 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_UINT32[ STDLIB_NDARRAY_NDTYPES ] = {
101
126
[ STDLIB_NDARRAY_UINT64 ] = 1 ,
102
127
103
128
[ STDLIB_NDARRAY_FLOAT32 ] = 0 ,
104
- [ STDLIB_NDARRAY_FLOAT64 ] = 1
129
+ [ STDLIB_NDARRAY_FLOAT64 ] = 1 ,
130
+
131
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
132
+
133
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
134
+ [ STDLIB_NDARRAY_GENERIC ] = 0
105
135
};
106
136
107
137
const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_INT32 [ STDLIB_NDARRAY_NDTYPES ] = {
108
138
109
139
[ STDLIB_NDARRAY_INT8 ] = 1 ,
110
140
[ STDLIB_NDARRAY_UINT8 ] = 0 ,
141
+ [ STDLIB_NDARRAY_UINT8C ] = 0 ,
111
142
[ STDLIB_NDARRAY_INT16 ] = 1 ,
112
143
[ STDLIB_NDARRAY_UINT16 ] = 0 ,
113
144
[ STDLIB_NDARRAY_INT32 ] = 1 ,
@@ -116,13 +147,19 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_INT32[ STDLIB_NDARRAY_NDTYPES ] = {
116
147
[ STDLIB_NDARRAY_UINT64 ] = 0 ,
117
148
118
149
[ STDLIB_NDARRAY_FLOAT32 ] = 0 ,
119
- [ STDLIB_NDARRAY_FLOAT64 ] = 1
150
+ [ STDLIB_NDARRAY_FLOAT64 ] = 1 ,
151
+
152
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
153
+
154
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
155
+ [ STDLIB_NDARRAY_GENERIC ] = 0
120
156
};
121
157
122
158
const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_UINT16 [ STDLIB_NDARRAY_NDTYPES ] = {
123
159
124
160
[ STDLIB_NDARRAY_INT8 ] = 0 ,
125
161
[ STDLIB_NDARRAY_UINT8 ] = 1 ,
162
+ [ STDLIB_NDARRAY_UINT8C ] = 1 ,
126
163
[ STDLIB_NDARRAY_INT16 ] = 0 ,
127
164
[ STDLIB_NDARRAY_UINT16 ] = 1 ,
128
165
[ STDLIB_NDARRAY_INT32 ] = 1 ,
@@ -131,13 +168,19 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_UINT16[ STDLIB_NDARRAY_NDTYPES ] = {
131
168
[ STDLIB_NDARRAY_UINT64 ] = 1 ,
132
169
133
170
[ STDLIB_NDARRAY_FLOAT32 ] = 1 ,
134
- [ STDLIB_NDARRAY_FLOAT64 ] = 1
171
+ [ STDLIB_NDARRAY_FLOAT64 ] = 1 ,
172
+
173
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
174
+
175
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
176
+ [ STDLIB_NDARRAY_GENERIC ] = 0
135
177
};
136
178
137
179
const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_INT16 [ STDLIB_NDARRAY_NDTYPES ] = {
138
180
139
181
[ STDLIB_NDARRAY_INT8 ] = 1 ,
140
182
[ STDLIB_NDARRAY_UINT8 ] = 0 ,
183
+ [ STDLIB_NDARRAY_UINT8C ] = 0 ,
141
184
[ STDLIB_NDARRAY_INT16 ] = 1 ,
142
185
[ STDLIB_NDARRAY_UINT16 ] = 0 ,
143
186
[ STDLIB_NDARRAY_INT32 ] = 1 ,
@@ -146,13 +189,19 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_INT16[ STDLIB_NDARRAY_NDTYPES ] = {
146
189
[ STDLIB_NDARRAY_UINT64 ] = 0 ,
147
190
148
191
[ STDLIB_NDARRAY_FLOAT32 ] = 1 ,
149
- [ STDLIB_NDARRAY_FLOAT64 ] = 1
192
+ [ STDLIB_NDARRAY_FLOAT64 ] = 1 ,
193
+
194
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
195
+
196
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
197
+ [ STDLIB_NDARRAY_GENERIC ] = 0
150
198
};
151
199
152
200
const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_UINT8 [ STDLIB_NDARRAY_NDTYPES ] = {
153
201
154
202
[ STDLIB_NDARRAY_INT8 ] = 0 ,
155
203
[ STDLIB_NDARRAY_UINT8 ] = 1 ,
204
+ [ STDLIB_NDARRAY_UINT8C ] = 1 ,
156
205
[ STDLIB_NDARRAY_INT16 ] = 1 ,
157
206
[ STDLIB_NDARRAY_UINT16 ] = 1 ,
158
207
[ STDLIB_NDARRAY_INT32 ] = 1 ,
@@ -161,13 +210,40 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_UINT8[ STDLIB_NDARRAY_NDTYPES ] = {
161
210
[ STDLIB_NDARRAY_UINT64 ] = 1 ,
162
211
163
212
[ STDLIB_NDARRAY_FLOAT32 ] = 1 ,
164
- [ STDLIB_NDARRAY_FLOAT64 ] = 1
213
+ [ STDLIB_NDARRAY_FLOAT64 ] = 1 ,
214
+
215
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
216
+
217
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
218
+ [ STDLIB_NDARRAY_GENERIC ] = 0
219
+ };
220
+
221
+ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_UINT8C [ STDLIB_NDARRAY_NDTYPES ] = {
222
+
223
+ [ STDLIB_NDARRAY_INT8 ] = 0 ,
224
+ [ STDLIB_NDARRAY_UINT8 ] = 1 ,
225
+ [ STDLIB_NDARRAY_UINT8C ] = 1 ,
226
+ [ STDLIB_NDARRAY_INT16 ] = 1 ,
227
+ [ STDLIB_NDARRAY_UINT16 ] = 1 ,
228
+ [ STDLIB_NDARRAY_INT32 ] = 1 ,
229
+ [ STDLIB_NDARRAY_UINT32 ] = 1 ,
230
+ [ STDLIB_NDARRAY_INT64 ] = 1 ,
231
+ [ STDLIB_NDARRAY_UINT64 ] = 1 ,
232
+
233
+ [ STDLIB_NDARRAY_FLOAT32 ] = 1 ,
234
+ [ STDLIB_NDARRAY_FLOAT64 ] = 1 ,
235
+
236
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
237
+
238
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
239
+ [ STDLIB_NDARRAY_GENERIC ] = 0
165
240
};
166
241
167
242
const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_INT8 [ STDLIB_NDARRAY_NDTYPES ] = {
168
243
169
244
[ STDLIB_NDARRAY_INT8 ] = 1 ,
170
245
[ STDLIB_NDARRAY_UINT8 ] = 0 ,
246
+ [ STDLIB_NDARRAY_UINT8C ] = 0 ,
171
247
[ STDLIB_NDARRAY_INT16 ] = 1 ,
172
248
[ STDLIB_NDARRAY_UINT16 ] = 0 ,
173
249
[ STDLIB_NDARRAY_INT32 ] = 1 ,
@@ -176,14 +252,83 @@ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_INT8[ STDLIB_NDARRAY_NDTYPES ] = {
176
252
[ STDLIB_NDARRAY_UINT64 ] = 0 ,
177
253
178
254
[ STDLIB_NDARRAY_FLOAT32 ] = 1 ,
179
- [ STDLIB_NDARRAY_FLOAT64 ] = 1
255
+ [ STDLIB_NDARRAY_FLOAT64 ] = 1 ,
256
+
257
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
258
+
259
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
260
+ [ STDLIB_NDARRAY_GENERIC ] = 0
261
+ };
262
+
263
+ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_BOOL [ STDLIB_NDARRAY_NDTYPES ] = {
264
+
265
+ [ STDLIB_NDARRAY_INT8 ] = 0 ,
266
+ [ STDLIB_NDARRAY_UINT8 ] = 0 ,
267
+ [ STDLIB_NDARRAY_UINT8C ] = 0 ,
268
+ [ STDLIB_NDARRAY_INT16 ] = 0 ,
269
+ [ STDLIB_NDARRAY_UINT16 ] = 0 ,
270
+ [ STDLIB_NDARRAY_INT32 ] = 0 ,
271
+ [ STDLIB_NDARRAY_UINT32 ] = 0 ,
272
+ [ STDLIB_NDARRAY_INT64 ] = 0 ,
273
+ [ STDLIB_NDARRAY_UINT64 ] = 0 ,
274
+
275
+ [ STDLIB_NDARRAY_FLOAT32 ] = 0 ,
276
+ [ STDLIB_NDARRAY_FLOAT64 ] = 0 ,
277
+
278
+ [ STDLIB_NDARRAY_BOOL ] = 1 ,
279
+
280
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
281
+ [ STDLIB_NDARRAY_GENERIC ] = 0
282
+ };
283
+
284
+ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_BINARY [ STDLIB_NDARRAY_NDTYPES ] = {
285
+
286
+ [ STDLIB_NDARRAY_INT8 ] = 0 ,
287
+ [ STDLIB_NDARRAY_UINT8 ] = 0 ,
288
+ [ STDLIB_NDARRAY_UINT8C ] = 0 ,
289
+ [ STDLIB_NDARRAY_INT16 ] = 0 ,
290
+ [ STDLIB_NDARRAY_UINT16 ] = 0 ,
291
+ [ STDLIB_NDARRAY_INT32 ] = 0 ,
292
+ [ STDLIB_NDARRAY_UINT32 ] = 0 ,
293
+ [ STDLIB_NDARRAY_INT64 ] = 0 ,
294
+ [ STDLIB_NDARRAY_UINT64 ] = 0 ,
295
+
296
+ [ STDLIB_NDARRAY_FLOAT32 ] = 0 ,
297
+ [ STDLIB_NDARRAY_FLOAT64 ] = 0 ,
298
+
299
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
300
+
301
+ [ STDLIB_NDARRAY_BINARY ] = 1 ,
302
+ [ STDLIB_NDARRAY_GENERIC ] = 0
303
+ };
304
+
305
+ const int8_t STDLIB_NDARRAY_SAME_KIND_CASTS_GENERIC [ STDLIB_NDARRAY_NDTYPES ] = {
306
+
307
+ [ STDLIB_NDARRAY_INT8 ] = 0 ,
308
+ [ STDLIB_NDARRAY_UINT8 ] = 0 ,
309
+ [ STDLIB_NDARRAY_UINT8C ] = 0 ,
310
+ [ STDLIB_NDARRAY_INT16 ] = 0 ,
311
+ [ STDLIB_NDARRAY_UINT16 ] = 0 ,
312
+ [ STDLIB_NDARRAY_INT32 ] = 0 ,
313
+ [ STDLIB_NDARRAY_UINT32 ] = 0 ,
314
+ [ STDLIB_NDARRAY_INT64 ] = 0 ,
315
+ [ STDLIB_NDARRAY_UINT64 ] = 0 ,
316
+
317
+ [ STDLIB_NDARRAY_FLOAT32 ] = 0 ,
318
+ [ STDLIB_NDARRAY_FLOAT64 ] = 0 ,
319
+
320
+ [ STDLIB_NDARRAY_BOOL ] = 0 ,
321
+
322
+ [ STDLIB_NDARRAY_BINARY ] = 0 ,
323
+ [ STDLIB_NDARRAY_GENERIC ] = 1
180
324
};
181
325
182
326
// Define a table of pointers containing the above casting tables:
183
327
const int8_t * STDLIB_NDARRAY_SAME_KIND_CASTS [ STDLIB_NDARRAY_NDTYPES ] = {
184
328
185
329
[ STDLIB_NDARRAY_INT8 ] = STDLIB_NDARRAY_SAME_KIND_CASTS_INT8 ,
186
330
[ STDLIB_NDARRAY_UINT8 ] = STDLIB_NDARRAY_SAME_KIND_CASTS_UINT8 ,
331
+ [ STDLIB_NDARRAY_UINT8C ] = STDLIB_NDARRAY_SAME_KIND_CASTS_UINT8C ,
187
332
[ STDLIB_NDARRAY_INT16 ] = STDLIB_NDARRAY_SAME_KIND_CASTS_INT16 ,
188
333
[ STDLIB_NDARRAY_UINT16 ] = STDLIB_NDARRAY_SAME_KIND_CASTS_UINT16 ,
189
334
[ STDLIB_NDARRAY_INT32 ] = STDLIB_NDARRAY_SAME_KIND_CASTS_INT32 ,
@@ -192,7 +337,12 @@ const int8_t *STDLIB_NDARRAY_SAME_KIND_CASTS[ STDLIB_NDARRAY_NDTYPES ] = {
192
337
[ STDLIB_NDARRAY_UINT64 ] = STDLIB_NDARRAY_SAME_KIND_CASTS_UINT64 ,
193
338
194
339
[ STDLIB_NDARRAY_FLOAT32 ] = STDLIB_NDARRAY_SAME_KIND_CASTS_FLOAT32 ,
195
- [ STDLIB_NDARRAY_FLOAT64 ] = STDLIB_NDARRAY_SAME_KIND_CASTS_FLOAT64
340
+ [ STDLIB_NDARRAY_FLOAT64 ] = STDLIB_NDARRAY_SAME_KIND_CASTS_FLOAT64 ,
341
+
342
+ [ STDLIB_NDARRAY_BOOL ] = STDLIB_NDARRAY_SAME_KIND_CASTS_BOOL ,
343
+
344
+ [ STDLIB_NDARRAY_BINARY ] = STDLIB_NDARRAY_SAME_KIND_CASTS_BINARY ,
345
+ [ STDLIB_NDARRAY_GENERIC ] = STDLIB_NDARRAY_SAME_KIND_CASTS_GENERIC
196
346
};
197
347
198
348
#ifdef __cplusplus
0 commit comments