comparison src/OPERATORS/op-int-concat.cc @ 5075:b6a9f78f60e9

[project @ 2004-11-10 03:13:26 by jwe]
author jwe
date Wed, 10 Nov 2004 03:13:27 +0000
parents
children 4c8a2e4e0717
comparison
equal deleted inserted replaced
5074:c348a7236185 5075:b6a9f78f60e9
1 /*
2
3 Copyright (C) 2004 John W. Eaton
4
5 This file is part of Octave.
6
7 Octave is free software; you can redistribute it and/or modify it
8 under the terms of the GNU General Public License as published by the
9 Free Software Foundation; either version 2, or (at your option) any
10 later version.
11
12 Octave is distributed in the hope that it will be useful, but WITHOUT
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with Octave; see the file COPYING. If not, write to the Free
19 Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
20
21 */
22
23 #ifdef HAVE_CONFIG_H
24 #include <config.h>
25 #endif
26
27 #include "gripes.h"
28 #include "oct-obj.h"
29 #include "ov.h"
30 #include "ov-int8.h"
31 #include "ov-int16.h"
32 #include "ov-int32.h"
33 #include "ov-int64.h"
34 #include "ov-uint8.h"
35 #include "ov-uint16.h"
36 #include "ov-uint32.h"
37 #include "ov-uint64.h"
38 #include "ov-range.h"
39 #include "ov-bool.h"
40 #include "ov-bool-mat.h"
41 #include "ov-scalar.h"
42 #include "ov-re-mat.h"
43 #include "ov-str-mat.h"
44 #include "ov-typeinfo.h"
45 #include "op-int.h"
46 #include "ops.h"
47
48 // Concatentation of mixed integer types:
49
50 OCTAVE_CONCAT_FN2 (int8, int16)
51 OCTAVE_CONCAT_FN2 (int8, int32)
52 OCTAVE_CONCAT_FN2 (int8, int64)
53
54 OCTAVE_CONCAT_FN2 (int8, uint8)
55 OCTAVE_CONCAT_FN2 (int8, uint16)
56 OCTAVE_CONCAT_FN2 (int8, uint32)
57 OCTAVE_CONCAT_FN2 (int8, uint64)
58
59 OCTAVE_CONCAT_FN2 (int16, int8)
60 OCTAVE_CONCAT_FN2 (int16, int32)
61 OCTAVE_CONCAT_FN2 (int16, int64)
62
63 OCTAVE_CONCAT_FN2 (int16, uint8)
64 OCTAVE_CONCAT_FN2 (int16, uint16)
65 OCTAVE_CONCAT_FN2 (int16, uint32)
66 OCTAVE_CONCAT_FN2 (int16, uint64)
67
68 OCTAVE_CONCAT_FN2 (int32, int8)
69 OCTAVE_CONCAT_FN2 (int32, int16)
70 OCTAVE_CONCAT_FN2 (int32, int64)
71
72 OCTAVE_CONCAT_FN2 (int32, uint8)
73 OCTAVE_CONCAT_FN2 (int32, uint16)
74 OCTAVE_CONCAT_FN2 (int32, uint32)
75 OCTAVE_CONCAT_FN2 (int32, uint64)
76
77 OCTAVE_CONCAT_FN2 (int64, int8)
78 OCTAVE_CONCAT_FN2 (int64, int16)
79 OCTAVE_CONCAT_FN2 (int64, int32)
80
81 OCTAVE_CONCAT_FN2 (int64, uint8)
82 OCTAVE_CONCAT_FN2 (int64, uint16)
83 OCTAVE_CONCAT_FN2 (int64, uint32)
84 OCTAVE_CONCAT_FN2 (int64, uint64)
85
86 OCTAVE_CONCAT_FN2 (uint8, int8)
87 OCTAVE_CONCAT_FN2 (uint8, int16)
88 OCTAVE_CONCAT_FN2 (uint8, int32)
89 OCTAVE_CONCAT_FN2 (uint8, int64)
90
91 OCTAVE_CONCAT_FN2 (uint8, uint16)
92 OCTAVE_CONCAT_FN2 (uint8, uint32)
93 OCTAVE_CONCAT_FN2 (uint8, uint64)
94
95 OCTAVE_CONCAT_FN2 (uint16, int8)
96 OCTAVE_CONCAT_FN2 (uint16, int16)
97 OCTAVE_CONCAT_FN2 (uint16, int32)
98 OCTAVE_CONCAT_FN2 (uint16, int64)
99
100 OCTAVE_CONCAT_FN2 (uint16, uint8)
101 OCTAVE_CONCAT_FN2 (uint16, uint32)
102 OCTAVE_CONCAT_FN2 (uint16, uint64)
103
104 OCTAVE_CONCAT_FN2 (uint32, int8)
105 OCTAVE_CONCAT_FN2 (uint32, int16)
106 OCTAVE_CONCAT_FN2 (uint32, int32)
107 OCTAVE_CONCAT_FN2 (uint32, int64)
108
109 OCTAVE_CONCAT_FN2 (uint32, uint8)
110 OCTAVE_CONCAT_FN2 (uint32, uint16)
111 OCTAVE_CONCAT_FN2 (uint32, uint64)
112
113 OCTAVE_CONCAT_FN2 (uint64, int8)
114 OCTAVE_CONCAT_FN2 (uint64, int16)
115 OCTAVE_CONCAT_FN2 (uint64, int32)
116 OCTAVE_CONCAT_FN2 (uint64, int64)
117
118 OCTAVE_CONCAT_FN2 (uint64, uint8)
119 OCTAVE_CONCAT_FN2 (uint64, uint16)
120 OCTAVE_CONCAT_FN2 (uint64, uint32)
121
122 OCTAVE_INT_DOUBLE_CONCAT_FN (int8)
123 OCTAVE_INT_DOUBLE_CONCAT_FN (int16)
124 OCTAVE_INT_DOUBLE_CONCAT_FN (int32)
125 OCTAVE_INT_DOUBLE_CONCAT_FN (int64)
126
127 OCTAVE_INT_DOUBLE_CONCAT_FN (uint8)
128 OCTAVE_INT_DOUBLE_CONCAT_FN (uint16)
129 OCTAVE_INT_DOUBLE_CONCAT_FN (uint32)
130 OCTAVE_INT_DOUBLE_CONCAT_FN (uint64)
131
132 OCTAVE_DOUBLE_INT_CONCAT_FN (int8)
133 OCTAVE_DOUBLE_INT_CONCAT_FN (int16)
134 OCTAVE_DOUBLE_INT_CONCAT_FN (int32)
135 OCTAVE_DOUBLE_INT_CONCAT_FN (int64)
136
137 OCTAVE_DOUBLE_INT_CONCAT_FN (uint8)
138 OCTAVE_DOUBLE_INT_CONCAT_FN (uint16)
139 OCTAVE_DOUBLE_INT_CONCAT_FN (uint32)
140 OCTAVE_DOUBLE_INT_CONCAT_FN (uint64)
141
142 void
143 install_int_concat_ops (void)
144 {
145 OCTAVE_INSTALL_CONCAT_FN2 (int8, int16);
146 OCTAVE_INSTALL_CONCAT_FN2 (int8, int32);
147 OCTAVE_INSTALL_CONCAT_FN2 (int8, int64);
148
149 OCTAVE_INSTALL_CONCAT_FN2 (int8, uint8);
150 OCTAVE_INSTALL_CONCAT_FN2 (int8, uint16);
151 OCTAVE_INSTALL_CONCAT_FN2 (int8, uint32);
152 OCTAVE_INSTALL_CONCAT_FN2 (int8, uint64);
153
154 OCTAVE_INSTALL_CONCAT_FN2 (int16, int8);
155 OCTAVE_INSTALL_CONCAT_FN2 (int16, int32);
156 OCTAVE_INSTALL_CONCAT_FN2 (int16, int64);
157
158 OCTAVE_INSTALL_CONCAT_FN2 (int16, uint8);
159 OCTAVE_INSTALL_CONCAT_FN2 (int16, uint16);
160 OCTAVE_INSTALL_CONCAT_FN2 (int16, uint32);
161 OCTAVE_INSTALL_CONCAT_FN2 (int16, uint64);
162
163 OCTAVE_INSTALL_CONCAT_FN2 (int32, int8);
164 OCTAVE_INSTALL_CONCAT_FN2 (int32, int16);
165 OCTAVE_INSTALL_CONCAT_FN2 (int32, int64);
166
167 OCTAVE_INSTALL_CONCAT_FN2 (int32, uint8);
168 OCTAVE_INSTALL_CONCAT_FN2 (int32, uint16);
169 OCTAVE_INSTALL_CONCAT_FN2 (int32, uint32);
170 OCTAVE_INSTALL_CONCAT_FN2 (int32, uint64);
171
172 OCTAVE_INSTALL_CONCAT_FN2 (int64, int8);
173 OCTAVE_INSTALL_CONCAT_FN2 (int64, int16);
174 OCTAVE_INSTALL_CONCAT_FN2 (int64, int32);
175
176 OCTAVE_INSTALL_CONCAT_FN2 (int64, uint8);
177 OCTAVE_INSTALL_CONCAT_FN2 (int64, uint16);
178 OCTAVE_INSTALL_CONCAT_FN2 (int64, uint32);
179 OCTAVE_INSTALL_CONCAT_FN2 (int64, uint64);
180
181 OCTAVE_INSTALL_CONCAT_FN2 (uint8, int8);
182 OCTAVE_INSTALL_CONCAT_FN2 (uint8, int16);
183 OCTAVE_INSTALL_CONCAT_FN2 (uint8, int32);
184 OCTAVE_INSTALL_CONCAT_FN2 (uint8, int64);
185
186 OCTAVE_INSTALL_CONCAT_FN2 (uint8, uint16);
187 OCTAVE_INSTALL_CONCAT_FN2 (uint8, uint32);
188 OCTAVE_INSTALL_CONCAT_FN2 (uint8, uint64);
189
190 OCTAVE_INSTALL_CONCAT_FN2 (uint16, int8);
191 OCTAVE_INSTALL_CONCAT_FN2 (uint16, int16);
192 OCTAVE_INSTALL_CONCAT_FN2 (uint16, int32);
193 OCTAVE_INSTALL_CONCAT_FN2 (uint16, int64);
194
195 OCTAVE_INSTALL_CONCAT_FN2 (uint16, uint8);
196 OCTAVE_INSTALL_CONCAT_FN2 (uint16, uint32);
197 OCTAVE_INSTALL_CONCAT_FN2 (uint16, uint64);
198
199 OCTAVE_INSTALL_CONCAT_FN2 (uint32, int8);
200 OCTAVE_INSTALL_CONCAT_FN2 (uint32, int16);
201 OCTAVE_INSTALL_CONCAT_FN2 (uint32, int32);
202 OCTAVE_INSTALL_CONCAT_FN2 (uint32, int64);
203
204 OCTAVE_INSTALL_CONCAT_FN2 (uint32, uint8);
205 OCTAVE_INSTALL_CONCAT_FN2 (uint32, uint16);
206 OCTAVE_INSTALL_CONCAT_FN2 (uint32, uint64);
207
208 OCTAVE_INSTALL_CONCAT_FN2 (uint64, int8);
209 OCTAVE_INSTALL_CONCAT_FN2 (uint64, int16);
210 OCTAVE_INSTALL_CONCAT_FN2 (uint64, int32);
211 OCTAVE_INSTALL_CONCAT_FN2 (uint64, int64);
212
213 OCTAVE_INSTALL_CONCAT_FN2 (uint64, uint8);
214 OCTAVE_INSTALL_CONCAT_FN2 (uint64, uint16);
215 OCTAVE_INSTALL_CONCAT_FN2 (uint64, uint32);
216
217 OCTAVE_INSTALL_INT_DOUBLE_CONCAT_FN (int8);
218 OCTAVE_INSTALL_INT_DOUBLE_CONCAT_FN (int16);
219 OCTAVE_INSTALL_INT_DOUBLE_CONCAT_FN (int32);
220 OCTAVE_INSTALL_INT_DOUBLE_CONCAT_FN (int64);
221
222 OCTAVE_INSTALL_INT_DOUBLE_CONCAT_FN (uint8);
223 OCTAVE_INSTALL_INT_DOUBLE_CONCAT_FN (uint16);
224 OCTAVE_INSTALL_INT_DOUBLE_CONCAT_FN (uint32);
225 OCTAVE_INSTALL_INT_DOUBLE_CONCAT_FN (uint64);
226
227 OCTAVE_INSTALL_DOUBLE_INT_CONCAT_FN (int8);
228 OCTAVE_INSTALL_DOUBLE_INT_CONCAT_FN (int16);
229 OCTAVE_INSTALL_DOUBLE_INT_CONCAT_FN (int32);
230 OCTAVE_INSTALL_DOUBLE_INT_CONCAT_FN (int64);
231
232 OCTAVE_INSTALL_DOUBLE_INT_CONCAT_FN (uint8);
233 OCTAVE_INSTALL_DOUBLE_INT_CONCAT_FN (uint16);
234 OCTAVE_INSTALL_DOUBLE_INT_CONCAT_FN (uint32);
235 OCTAVE_INSTALL_DOUBLE_INT_CONCAT_FN (uint64);
236 }
237
238 /*
239 ;;; Local Variables: ***
240 ;;; mode: C++ ***
241 ;;; End: ***
242 */