Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / sam-t2 / devtools / amd64 / share / swig / 1.3.26 / guile / std_pair.i
CommitLineData
920dae64
AT
1//
2// SWIG typemaps for std::pair
3// Luigi Ballabio
4// July 2003
5//
6// Guile implementation
7
8%include std_common.i
9%include exception.i
10
11// ------------------------------------------------------------------------
12// std::pair
13//
14// See std_vector.i for the rationale of typemap application
15// ------------------------------------------------------------------------
16
17%{
18#include <utility>
19%}
20
21// exported class
22
23namespace std {
24
25 template<class T, class U> struct pair {
26 %typemap(in) pair<T,U> (std::pair<T,U>* m) {
27 if (gh_pair_p($input)) {
28 T* x;
29 U* y;
30 SCM first, second;
31 first = gh_car($input);
32 second = gh_cdr($input);
33 x = (T*) SWIG_MustGetPtr(first,$descriptor(T *),$argnum, 0);
34 y = (U*) SWIG_MustGetPtr(second,$descriptor(U *),$argnum, 0);
35 $1 = std::make_pair(x,y);
36 } else {
37 $1 = *(($&1_type)
38 SWIG_MustGetPtr($input,$&1_descriptor,$argnum, 0));
39 }
40 }
41 %typemap(in) const pair<T,U>& (std::pair<T,U> temp,
42 std::pair<T,U>* m),
43 const pair<T,U>* (std::pair<T,U> temp,
44 std::pair<T,U>* m) {
45 if (gh_pair_p($input)) {
46 T* x;
47 U* y;
48 SCM first, second;
49 first = gh_car($input);
50 second = gh_cdr($input);
51 x = (T*) SWIG_MustGetPtr(first,$descriptor(T *),$argnum, 0);
52 y = (U*) SWIG_MustGetPtr(second,$descriptor(U *),$argnum, 0);
53 temp = std::make_pair(x,y);
54 $1 = &temp;
55 } else {
56 $1 = ($1_ltype)
57 SWIG_MustGetPtr($input,$1_descriptor,$argnum, 0);
58 }
59 }
60 %typemap(out) pair<T,U> {
61 T* x = new T($1.first);
62 U* y = new U($1.second);
63 SCM first = SWIG_NewPointerObj(x,$descriptor(T *), 1);
64 SCM second = SWIG_NewPointerObj(y,$descriptor(U *), 1);
65 $result = gh_cons(first,second);
66 }
67 %typecheck(SWIG_TYPECHECK_PAIR) pair<T,U> {
68 /* native pair? */
69 if (gh_pair_p($input)) {
70 T* x;
71 U* y;
72 SCM first = gh_car($input);
73 SCM second = gh_cdr($input);
74 if (SWIG_ConvertPtr(first,(void**) &x,
75 $descriptor(T *), 0) == 0 &&
76 SWIG_ConvertPtr(second,(void**) &y,
77 $descriptor(U *), 0) == 0) {
78 $1 = 1;
79 } else {
80 $1 = 0;
81 }
82 } else {
83 /* wrapped pair? */
84 std::pair<T,U >* m;
85 if (SWIG_ConvertPtr($input,(void **) &m,
86 $&1_descriptor, 0) == 0)
87 $1 = 1;
88 else
89 $1 = 0;
90 }
91 }
92 %typecheck(SWIG_TYPECHECK_PAIR) const pair<T,U>&,
93 const pair<T,U>* {
94 /* native pair? */
95 if (gh_pair_p($input)) {
96 T* x;
97 U* y;
98 SCM first = gh_car($input);
99 SCM second = gh_cdr($input);
100 if (SWIG_ConvertPtr(first,(void**) &x,
101 $descriptor(T *), 0) == 0 &&
102 SWIG_ConvertPtr(second,(void**) &y,
103 $descriptor(U *), 0) == 0) {
104 $1 = 1;
105 } else {
106 $1 = 0;
107 }
108 } else {
109 /* wrapped pair? */
110 std::pair<T,U >* m;
111 if (SWIG_ConvertPtr($input,(void **) &m,
112 $1_descriptor, 0) == 0)
113 $1 = 1;
114 else
115 $1 = 0;
116 }
117 }
118 pair();
119 pair(T first, U second);
120 pair(const pair& p);
121
122 template <class U1, class U2> pair(const pair<U1, U2> &p);
123
124 T first;
125 U second;
126 };
127
128
129 // specializations for built-ins
130
131 %define specialize_std_pair_on_first(T,CHECK,CONVERT_FROM,CONVERT_TO)
132 template<class U> struct pair<T,U> {
133 %typemap(in) pair<T,U> (std::pair<T,U>* m) {
134 if (gh_pair_p($input)) {
135 U* y;
136 SCM first, second;
137 first = gh_car($input);
138 second = gh_cdr($input);
139 if (!CHECK(first))
140 SWIG_exception(SWIG_TypeError,
141 "map<" #T "," #U "> expected");
142 y = (U*) SWIG_MustGetPtr(second,$descriptor(U *),$argnum, 0);
143 $1 = std::make_pair(CONVERT_FROM(first),y);
144 } else {
145 $1 = *(($&1_type)
146 SWIG_MustGetPtr($input,$&1_descriptor,$argnum, 0));
147 }
148 }
149 %typemap(in) const pair<T,U>& (std::pair<T,U> temp,
150 std::pair<T,U>* m),
151 const pair<T,U>* (std::pair<T,U> temp,
152 std::pair<T,U>* m) {
153 if (gh_pair_p($input)) {
154 U* y;
155 SCM first, second;
156 first = gh_car($input);
157 second = gh_cdr($input);
158 if (!CHECK(first))
159 SWIG_exception(SWIG_TypeError,
160 "map<" #T "," #U "> expected");
161 y = (U*) SWIG_MustGetPtr(second,$descriptor(U *),$argnum, 0);
162 temp = std::make_pair(CONVERT_FROM(first),y);
163 $1 = &temp;
164 } else {
165 $1 = ($1_ltype)
166 SWIG_MustGetPtr($input,$1_descriptor,$argnum, 0);
167 }
168 }
169 %typemap(out) pair<T,U> {
170 U* y = new U($1.second);
171 SCM second = SWIG_NewPointerObj(y,$descriptor(U *), 1);
172 $result = gh_cons(CONVERT_TO($1.first),second);
173 }
174 %typecheck(SWIG_TYPECHECK_PAIR) pair<T,U> {
175 /* native pair? */
176 if (gh_pair_p($input)) {
177 U* y;
178 SCM first = gh_car($input);
179 SCM second = gh_cdr($input);
180 if (CHECK(first) &&
181 SWIG_ConvertPtr(second,(void**) &y,
182 $descriptor(U *), 0) == 0) {
183 $1 = 1;
184 } else {
185 $1 = 0;
186 }
187 } else {
188 /* wrapped pair? */
189 std::pair<T,U >* m;
190 if (SWIG_ConvertPtr($input,(void **) &m,
191 $&1_descriptor, 0) == 0)
192 $1 = 1;
193 else
194 $1 = 0;
195 }
196 }
197 %typecheck(SWIG_TYPECHECK_PAIR) const pair<T,U>&,
198 const pair<T,U>* {
199 /* native pair? */
200 if (gh_pair_p($input)) {
201 U* y;
202 SCM first = gh_car($input);
203 SCM second = gh_cdr($input);
204 if (CHECK(first) &&
205 SWIG_ConvertPtr(second,(void**) &y,
206 $descriptor(U *), 0) == 0) {
207 $1 = 1;
208 } else {
209 $1 = 0;
210 }
211 } else {
212 /* wrapped pair? */
213 std::pair<T,U >* m;
214 if (SWIG_ConvertPtr($input,(void **) &m,
215 $1_descriptor, 0) == 0)
216 $1 = 1;
217 else
218 $1 = 0;
219 }
220 }
221 pair();
222 pair(T first, U second);
223 pair(const pair& p);
224
225 template <class U1, class U2> pair(const pair<U1, U2> &p);
226
227 T first;
228 U second;
229 };
230 %enddef
231
232 %define specialize_std_pair_on_second(U,CHECK,CONVERT_FROM,CONVERT_TO)
233 template<class T> struct pair<T,U> {
234 %typemap(in) pair<T,U> (std::pair<T,U>* m) {
235 if (gh_pair_p($input)) {
236 T* x;
237 SCM first, second;
238 first = gh_car($input);
239 second = gh_cdr($input);
240 x = (T*) SWIG_MustGetPtr(first,$descriptor(T *),$argnum, 0);
241 if (!CHECK(second))
242 SWIG_exception(SWIG_TypeError,
243 "map<" #T "," #U "> expected");
244 $1 = std::make_pair(x,CONVERT_FROM(second));
245 } else {
246 $1 = *(($&1_type)
247 SWIG_MustGetPtr($input,$&1_descriptor,$argnum, 0));
248 }
249 }
250 %typemap(in) const pair<T,U>& (std::pair<T,U> temp,
251 std::pair<T,U>* m),
252 const pair<T,U>* (std::pair<T,U> temp,
253 std::pair<T,U>* m) {
254 if (gh_pair_p($input)) {
255 T* x;
256 SCM first, second;
257 first = gh_car($input);
258 second = gh_cdr($input);
259 x = (T*) SWIG_MustGetPtr(first,$descriptor(T *),$argnum, 0);
260 if (!CHECK(second))
261 SWIG_exception(SWIG_TypeError,
262 "map<" #T "," #U "> expected");
263 temp = std::make_pair(x,CONVERT_FROM(second));
264 $1 = &temp;
265 } else {
266 $1 = ($1_ltype)
267 SWIG_MustGetPtr($input,$1_descriptor,$argnum, 0);
268 }
269 }
270 %typemap(out) pair<T,U> {
271 T* x = new T($1.first);
272 SCM first = SWIG_NewPointerObj(x,$descriptor(T *), 1);
273 $result = gh_cons(first,CONVERT_TO($1.second));
274 }
275 %typecheck(SWIG_TYPECHECK_PAIR) pair<T,U> {
276 /* native pair? */
277 if (gh_pair_p($input)) {
278 T* x;
279 SCM first = gh_car($input);
280 SCM second = gh_cdr($input);
281 if (SWIG_ConvertPtr(first,(void**) &x,
282 $descriptor(T *), 0) == 0 &&
283 CHECK(second)) {
284 $1 = 1;
285 } else {
286 $1 = 0;
287 }
288 } else {
289 /* wrapped pair? */
290 std::pair<T,U >* m;
291 if (SWIG_ConvertPtr($input,(void **) &m,
292 $&1_descriptor, 0) == 0)
293 $1 = 1;
294 else
295 $1 = 0;
296 }
297 }
298 %typecheck(SWIG_TYPECHECK_PAIR) const pair<T,U>&,
299 const pair<T,U>* {
300 /* native pair? */
301 if (gh_pair_p($input)) {
302 T* x;
303 SCM first = gh_car($input);
304 SCM second = gh_cdr($input);
305 if (SWIG_ConvertPtr(first,(void**) &x,
306 $descriptor(T *), 0) == 0 &&
307 CHECK(second)) {
308 $1 = 1;
309 } else {
310 $1 = 0;
311 }
312 } else {
313 /* wrapped pair? */
314 std::pair<T,U >* m;
315 if (SWIG_ConvertPtr($input,(void **) &m,
316 $1_descriptor, 0) == 0)
317 $1 = 1;
318 else
319 $1 = 0;
320 }
321 }
322 pair();
323 pair(T first, U second);
324 pair(const pair& p);
325
326 template <class U1, class U2> pair(const pair<U1, U2> &p);
327
328 T first;
329 U second;
330 };
331 %enddef
332
333 %define specialize_std_pair_on_both(T,CHECK_T,CONVERT_T_FROM,CONVERT_T_TO,
334 U,CHECK_U,CONVERT_U_FROM,CONVERT_U_TO)
335 template<> struct pair<T,U> {
336 %typemap(in) pair<T,U> (std::pair<T,U>* m) {
337 if (gh_pair_p($input)) {
338 SCM first, second;
339 first = gh_car($input);
340 second = gh_cdr($input);
341 if (!CHECK_T(first) || !CHECK_U(second))
342 SWIG_exception(SWIG_TypeError,
343 "map<" #T "," #U "> expected");
344 $1 = std::make_pair(CONVERT_T_FROM(first),
345 CONVERT_U_FROM(second));
346 } else {
347 $1 = *(($&1_type)
348 SWIG_MustGetPtr($input,$&1_descriptor,$argnum, 0));
349 }
350 }
351 %typemap(in) const pair<T,U>& (std::pair<T,U> temp,
352 std::pair<T,U>* m),
353 const pair<T,U>* (std::pair<T,U> temp,
354 std::pair<T,U>* m) {
355 if (gh_pair_p($input)) {
356 SCM first, second;
357 first = gh_car($input);
358 second = gh_cdr($input);
359 if (!CHECK_T(first) || !CHECK_U(second))
360 SWIG_exception(SWIG_TypeError,
361 "map<" #T "," #U "> expected");
362 temp = std::make_pair(CONVERT_T_FROM(first),
363 CONVERT_U_FROM(second));
364 $1 = &temp;
365 } else {
366 $1 = ($1_ltype)
367 SWIG_MustGetPtr($input,$1_descriptor,$argnum, 0);
368 }
369 }
370 %typemap(out) pair<T,U> {
371 $result = gh_cons(CONVERT_T_TO($1.first),
372 CONVERT_U_TO($1.second));
373 }
374 %typecheck(SWIG_TYPECHECK_PAIR) pair<T,U> {
375 /* native pair? */
376 if (gh_pair_p($input)) {
377 SCM first = gh_car($input);
378 SCM second = gh_cdr($input);
379 if (CHECK_T(first) && CHECK_U(second)) {
380 $1 = 1;
381 } else {
382 $1 = 0;
383 }
384 } else {
385 /* wrapped pair? */
386 std::pair<T,U >* m;
387 if (SWIG_ConvertPtr($input,(void **) &m,
388 $&1_descriptor, 0) == 0)
389 $1 = 1;
390 else
391 $1 = 0;
392 }
393 }
394 %typecheck(SWIG_TYPECHECK_PAIR) const pair<T,U>&,
395 const pair<T,U>* {
396 /* native pair? */
397 if (gh_pair_p($input)) {
398 SCM first = gh_car($input);
399 SCM second = gh_cdr($input);
400 if (CHECK_T(first) && CHECK_U(second)) {
401 $1 = 1;
402 } else {
403 $1 = 0;
404 }
405 } else {
406 /* wrapped pair? */
407 std::pair<T,U >* m;
408 if (SWIG_ConvertPtr($input,(void **) &m,
409 $1_descriptor, 0) == 0)
410 $1 = 1;
411 else
412 $1 = 0;
413 }
414 }
415 pair();
416 pair(T first, U second);
417 pair(const pair& p);
418
419 template <class U1, class U2> pair(const pair<U1, U2> &p);
420
421 T first;
422 U second;
423 };
424 %enddef
425
426
427 specialize_std_pair_on_first(bool,gh_boolean_p,
428 gh_scm2bool,SWIG_bool2scm);
429 specialize_std_pair_on_first(int,gh_number_p,
430 gh_scm2long,gh_long2scm);
431 specialize_std_pair_on_first(short,gh_number_p,
432 gh_scm2long,gh_long2scm);
433 specialize_std_pair_on_first(long,gh_number_p,
434 gh_scm2long,gh_long2scm);
435 specialize_std_pair_on_first(unsigned int,gh_number_p,
436 gh_scm2ulong,gh_ulong2scm);
437 specialize_std_pair_on_first(unsigned short,gh_number_p,
438 gh_scm2ulong,gh_ulong2scm);
439 specialize_std_pair_on_first(unsigned long,gh_number_p,
440 gh_scm2ulong,gh_ulong2scm);
441 specialize_std_pair_on_first(double,gh_number_p,
442 gh_scm2double,gh_double2scm);
443 specialize_std_pair_on_first(float,gh_number_p,
444 gh_scm2double,gh_double2scm);
445 specialize_std_pair_on_first(std::string,gh_string_p,
446 SWIG_scm2string,SWIG_string2scm);
447
448 specialize_std_pair_on_second(bool,gh_boolean_p,
449 gh_scm2bool,SWIG_bool2scm);
450 specialize_std_pair_on_second(int,gh_number_p,
451 gh_scm2long,gh_long2scm);
452 specialize_std_pair_on_second(short,gh_number_p,
453 gh_scm2long,gh_long2scm);
454 specialize_std_pair_on_second(long,gh_number_p,
455 gh_scm2long,gh_long2scm);
456 specialize_std_pair_on_second(unsigned int,gh_number_p,
457 gh_scm2ulong,gh_ulong2scm);
458 specialize_std_pair_on_second(unsigned short,gh_number_p,
459 gh_scm2ulong,gh_ulong2scm);
460 specialize_std_pair_on_second(unsigned long,gh_number_p,
461 gh_scm2ulong,gh_ulong2scm);
462 specialize_std_pair_on_second(double,gh_number_p,
463 gh_scm2double,gh_double2scm);
464 specialize_std_pair_on_second(float,gh_number_p,
465 gh_scm2double,gh_double2scm);
466 specialize_std_pair_on_second(std::string,gh_string_p,
467 SWIG_scm2string,SWIG_string2scm);
468
469 specialize_std_pair_on_both(bool,gh_boolean_p,
470 gh_scm2bool,SWIG_bool2scm,
471 bool,gh_boolean_p,
472 gh_scm2bool,SWIG_bool2scm);
473 specialize_std_pair_on_both(bool,gh_boolean_p,
474 gh_scm2bool,SWIG_bool2scm,
475 int,gh_number_p,
476 gh_scm2long,gh_long2scm);
477 specialize_std_pair_on_both(bool,gh_boolean_p,
478 gh_scm2bool,SWIG_bool2scm,
479 short,gh_number_p,
480 gh_scm2long,gh_long2scm);
481 specialize_std_pair_on_both(bool,gh_boolean_p,
482 gh_scm2bool,SWIG_bool2scm,
483 long,gh_number_p,
484 gh_scm2long,gh_long2scm);
485 specialize_std_pair_on_both(bool,gh_boolean_p,
486 gh_scm2bool,SWIG_bool2scm,
487 unsigned int,gh_number_p,
488 gh_scm2ulong,gh_ulong2scm);
489 specialize_std_pair_on_both(bool,gh_boolean_p,
490 gh_scm2bool,SWIG_bool2scm,
491 unsigned short,gh_number_p,
492 gh_scm2ulong,gh_ulong2scm);
493 specialize_std_pair_on_both(bool,gh_boolean_p,
494 gh_scm2bool,SWIG_bool2scm,
495 unsigned long,gh_number_p,
496 gh_scm2ulong,gh_ulong2scm);
497 specialize_std_pair_on_both(bool,gh_boolean_p,
498 gh_scm2bool,SWIG_bool2scm,
499 double,gh_number_p,
500 gh_scm2double,gh_double2scm);
501 specialize_std_pair_on_both(bool,gh_boolean_p,
502 gh_scm2bool,SWIG_bool2scm,
503 float,gh_number_p,
504 gh_scm2double,gh_double2scm);
505 specialize_std_pair_on_both(bool,gh_boolean_p,
506 gh_scm2bool,SWIG_bool2scm,
507 std::string,gh_string_p,
508 SWIG_scm2string,SWIG_string2scm);
509 specialize_std_pair_on_both(int,gh_number_p,
510 gh_scm2long,gh_long2scm,
511 bool,gh_boolean_p,
512 gh_scm2bool,SWIG_bool2scm);
513 specialize_std_pair_on_both(int,gh_number_p,
514 gh_scm2long,gh_long2scm,
515 int,gh_number_p,
516 gh_scm2long,gh_long2scm);
517 specialize_std_pair_on_both(int,gh_number_p,
518 gh_scm2long,gh_long2scm,
519 short,gh_number_p,
520 gh_scm2long,gh_long2scm);
521 specialize_std_pair_on_both(int,gh_number_p,
522 gh_scm2long,gh_long2scm,
523 long,gh_number_p,
524 gh_scm2long,gh_long2scm);
525 specialize_std_pair_on_both(int,gh_number_p,
526 gh_scm2long,gh_long2scm,
527 unsigned int,gh_number_p,
528 gh_scm2ulong,gh_ulong2scm);
529 specialize_std_pair_on_both(int,gh_number_p,
530 gh_scm2long,gh_long2scm,
531 unsigned short,gh_number_p,
532 gh_scm2ulong,gh_ulong2scm);
533 specialize_std_pair_on_both(int,gh_number_p,
534 gh_scm2long,gh_long2scm,
535 unsigned long,gh_number_p,
536 gh_scm2ulong,gh_ulong2scm);
537 specialize_std_pair_on_both(int,gh_number_p,
538 gh_scm2long,gh_long2scm,
539 double,gh_number_p,
540 gh_scm2double,gh_double2scm);
541 specialize_std_pair_on_both(int,gh_number_p,
542 gh_scm2long,gh_long2scm,
543 float,gh_number_p,
544 gh_scm2double,gh_double2scm);
545 specialize_std_pair_on_both(int,gh_number_p,
546 gh_scm2long,gh_long2scm,
547 std::string,gh_string_p,
548 SWIG_scm2string,SWIG_string2scm);
549 specialize_std_pair_on_both(short,gh_number_p,
550 gh_scm2long,gh_long2scm,
551 bool,gh_boolean_p,
552 gh_scm2bool,SWIG_bool2scm);
553 specialize_std_pair_on_both(short,gh_number_p,
554 gh_scm2long,gh_long2scm,
555 int,gh_number_p,
556 gh_scm2long,gh_long2scm);
557 specialize_std_pair_on_both(short,gh_number_p,
558 gh_scm2long,gh_long2scm,
559 short,gh_number_p,
560 gh_scm2long,gh_long2scm);
561 specialize_std_pair_on_both(short,gh_number_p,
562 gh_scm2long,gh_long2scm,
563 long,gh_number_p,
564 gh_scm2long,gh_long2scm);
565 specialize_std_pair_on_both(short,gh_number_p,
566 gh_scm2long,gh_long2scm,
567 unsigned int,gh_number_p,
568 gh_scm2ulong,gh_ulong2scm);
569 specialize_std_pair_on_both(short,gh_number_p,
570 gh_scm2long,gh_long2scm,
571 unsigned short,gh_number_p,
572 gh_scm2ulong,gh_ulong2scm);
573 specialize_std_pair_on_both(short,gh_number_p,
574 gh_scm2long,gh_long2scm,
575 unsigned long,gh_number_p,
576 gh_scm2ulong,gh_ulong2scm);
577 specialize_std_pair_on_both(short,gh_number_p,
578 gh_scm2long,gh_long2scm,
579 double,gh_number_p,
580 gh_scm2double,gh_double2scm);
581 specialize_std_pair_on_both(short,gh_number_p,
582 gh_scm2long,gh_long2scm,
583 float,gh_number_p,
584 gh_scm2double,gh_double2scm);
585 specialize_std_pair_on_both(short,gh_number_p,
586 gh_scm2long,gh_long2scm,
587 std::string,gh_string_p,
588 SWIG_scm2string,SWIG_string2scm);
589 specialize_std_pair_on_both(long,gh_number_p,
590 gh_scm2long,gh_long2scm,
591 bool,gh_boolean_p,
592 gh_scm2bool,SWIG_bool2scm);
593 specialize_std_pair_on_both(long,gh_number_p,
594 gh_scm2long,gh_long2scm,
595 int,gh_number_p,
596 gh_scm2long,gh_long2scm);
597 specialize_std_pair_on_both(long,gh_number_p,
598 gh_scm2long,gh_long2scm,
599 short,gh_number_p,
600 gh_scm2long,gh_long2scm);
601 specialize_std_pair_on_both(long,gh_number_p,
602 gh_scm2long,gh_long2scm,
603 long,gh_number_p,
604 gh_scm2long,gh_long2scm);
605 specialize_std_pair_on_both(long,gh_number_p,
606 gh_scm2long,gh_long2scm,
607 unsigned int,gh_number_p,
608 gh_scm2ulong,gh_ulong2scm);
609 specialize_std_pair_on_both(long,gh_number_p,
610 gh_scm2long,gh_long2scm,
611 unsigned short,gh_number_p,
612 gh_scm2ulong,gh_ulong2scm);
613 specialize_std_pair_on_both(long,gh_number_p,
614 gh_scm2long,gh_long2scm,
615 unsigned long,gh_number_p,
616 gh_scm2ulong,gh_ulong2scm);
617 specialize_std_pair_on_both(long,gh_number_p,
618 gh_scm2long,gh_long2scm,
619 double,gh_number_p,
620 gh_scm2double,gh_double2scm);
621 specialize_std_pair_on_both(long,gh_number_p,
622 gh_scm2long,gh_long2scm,
623 float,gh_number_p,
624 gh_scm2double,gh_double2scm);
625 specialize_std_pair_on_both(long,gh_number_p,
626 gh_scm2long,gh_long2scm,
627 std::string,gh_string_p,
628 SWIG_scm2string,SWIG_string2scm);
629 specialize_std_pair_on_both(unsigned int,gh_number_p,
630 gh_scm2ulong,gh_ulong2scm,
631 bool,gh_boolean_p,
632 gh_scm2bool,SWIG_bool2scm);
633 specialize_std_pair_on_both(unsigned int,gh_number_p,
634 gh_scm2ulong,gh_ulong2scm,
635 int,gh_number_p,
636 gh_scm2long,gh_long2scm);
637 specialize_std_pair_on_both(unsigned int,gh_number_p,
638 gh_scm2ulong,gh_ulong2scm,
639 short,gh_number_p,
640 gh_scm2long,gh_long2scm);
641 specialize_std_pair_on_both(unsigned int,gh_number_p,
642 gh_scm2ulong,gh_ulong2scm,
643 long,gh_number_p,
644 gh_scm2long,gh_long2scm);
645 specialize_std_pair_on_both(unsigned int,gh_number_p,
646 gh_scm2ulong,gh_ulong2scm,
647 unsigned int,gh_number_p,
648 gh_scm2ulong,gh_ulong2scm);
649 specialize_std_pair_on_both(unsigned int,gh_number_p,
650 gh_scm2ulong,gh_ulong2scm,
651 unsigned short,gh_number_p,
652 gh_scm2ulong,gh_ulong2scm);
653 specialize_std_pair_on_both(unsigned int,gh_number_p,
654 gh_scm2ulong,gh_ulong2scm,
655 unsigned long,gh_number_p,
656 gh_scm2ulong,gh_ulong2scm);
657 specialize_std_pair_on_both(unsigned int,gh_number_p,
658 gh_scm2ulong,gh_ulong2scm,
659 double,gh_number_p,
660 gh_scm2double,gh_double2scm);
661 specialize_std_pair_on_both(unsigned int,gh_number_p,
662 gh_scm2ulong,gh_ulong2scm,
663 float,gh_number_p,
664 gh_scm2double,gh_double2scm);
665 specialize_std_pair_on_both(unsigned int,gh_number_p,
666 gh_scm2ulong,gh_ulong2scm,
667 std::string,gh_string_p,
668 SWIG_scm2string,SWIG_string2scm);
669 specialize_std_pair_on_both(unsigned short,gh_number_p,
670 gh_scm2ulong,gh_ulong2scm,
671 bool,gh_boolean_p,
672 gh_scm2bool,SWIG_bool2scm);
673 specialize_std_pair_on_both(unsigned short,gh_number_p,
674 gh_scm2ulong,gh_ulong2scm,
675 int,gh_number_p,
676 gh_scm2long,gh_long2scm);
677 specialize_std_pair_on_both(unsigned short,gh_number_p,
678 gh_scm2ulong,gh_ulong2scm,
679 short,gh_number_p,
680 gh_scm2long,gh_long2scm);
681 specialize_std_pair_on_both(unsigned short,gh_number_p,
682 gh_scm2ulong,gh_ulong2scm,
683 long,gh_number_p,
684 gh_scm2long,gh_long2scm);
685 specialize_std_pair_on_both(unsigned short,gh_number_p,
686 gh_scm2ulong,gh_ulong2scm,
687 unsigned int,gh_number_p,
688 gh_scm2ulong,gh_ulong2scm);
689 specialize_std_pair_on_both(unsigned short,gh_number_p,
690 gh_scm2ulong,gh_ulong2scm,
691 unsigned short,gh_number_p,
692 gh_scm2ulong,gh_ulong2scm);
693 specialize_std_pair_on_both(unsigned short,gh_number_p,
694 gh_scm2ulong,gh_ulong2scm,
695 unsigned long,gh_number_p,
696 gh_scm2ulong,gh_ulong2scm);
697 specialize_std_pair_on_both(unsigned short,gh_number_p,
698 gh_scm2ulong,gh_ulong2scm,
699 double,gh_number_p,
700 gh_scm2double,gh_double2scm);
701 specialize_std_pair_on_both(unsigned short,gh_number_p,
702 gh_scm2ulong,gh_ulong2scm,
703 float,gh_number_p,
704 gh_scm2double,gh_double2scm);
705 specialize_std_pair_on_both(unsigned short,gh_number_p,
706 gh_scm2ulong,gh_ulong2scm,
707 std::string,gh_string_p,
708 SWIG_scm2string,SWIG_string2scm);
709 specialize_std_pair_on_both(unsigned long,gh_number_p,
710 gh_scm2ulong,gh_ulong2scm,
711 bool,gh_boolean_p,
712 gh_scm2bool,SWIG_bool2scm);
713 specialize_std_pair_on_both(unsigned long,gh_number_p,
714 gh_scm2ulong,gh_ulong2scm,
715 int,gh_number_p,
716 gh_scm2long,gh_long2scm);
717 specialize_std_pair_on_both(unsigned long,gh_number_p,
718 gh_scm2ulong,gh_ulong2scm,
719 short,gh_number_p,
720 gh_scm2long,gh_long2scm);
721 specialize_std_pair_on_both(unsigned long,gh_number_p,
722 gh_scm2ulong,gh_ulong2scm,
723 long,gh_number_p,
724 gh_scm2long,gh_long2scm);
725 specialize_std_pair_on_both(unsigned long,gh_number_p,
726 gh_scm2ulong,gh_ulong2scm,
727 unsigned int,gh_number_p,
728 gh_scm2ulong,gh_ulong2scm);
729 specialize_std_pair_on_both(unsigned long,gh_number_p,
730 gh_scm2ulong,gh_ulong2scm,
731 unsigned short,gh_number_p,
732 gh_scm2ulong,gh_ulong2scm);
733 specialize_std_pair_on_both(unsigned long,gh_number_p,
734 gh_scm2ulong,gh_ulong2scm,
735 unsigned long,gh_number_p,
736 gh_scm2ulong,gh_ulong2scm);
737 specialize_std_pair_on_both(unsigned long,gh_number_p,
738 gh_scm2ulong,gh_ulong2scm,
739 double,gh_number_p,
740 gh_scm2double,gh_double2scm);
741 specialize_std_pair_on_both(unsigned long,gh_number_p,
742 gh_scm2ulong,gh_ulong2scm,
743 float,gh_number_p,
744 gh_scm2double,gh_double2scm);
745 specialize_std_pair_on_both(unsigned long,gh_number_p,
746 gh_scm2ulong,gh_ulong2scm,
747 std::string,gh_string_p,
748 SWIG_scm2string,SWIG_string2scm);
749 specialize_std_pair_on_both(double,gh_number_p,
750 gh_scm2double,gh_double2scm,
751 bool,gh_boolean_p,
752 gh_scm2bool,SWIG_bool2scm);
753 specialize_std_pair_on_both(double,gh_number_p,
754 gh_scm2double,gh_double2scm,
755 int,gh_number_p,
756 gh_scm2long,gh_long2scm);
757 specialize_std_pair_on_both(double,gh_number_p,
758 gh_scm2double,gh_double2scm,
759 short,gh_number_p,
760 gh_scm2long,gh_long2scm);
761 specialize_std_pair_on_both(double,gh_number_p,
762 gh_scm2double,gh_double2scm,
763 long,gh_number_p,
764 gh_scm2long,gh_long2scm);
765 specialize_std_pair_on_both(double,gh_number_p,
766 gh_scm2double,gh_double2scm,
767 unsigned int,gh_number_p,
768 gh_scm2ulong,gh_ulong2scm);
769 specialize_std_pair_on_both(double,gh_number_p,
770 gh_scm2double,gh_double2scm,
771 unsigned short,gh_number_p,
772 gh_scm2ulong,gh_ulong2scm);
773 specialize_std_pair_on_both(double,gh_number_p,
774 gh_scm2double,gh_double2scm,
775 unsigned long,gh_number_p,
776 gh_scm2ulong,gh_ulong2scm);
777 specialize_std_pair_on_both(double,gh_number_p,
778 gh_scm2double,gh_double2scm,
779 double,gh_number_p,
780 gh_scm2double,gh_double2scm);
781 specialize_std_pair_on_both(double,gh_number_p,
782 gh_scm2double,gh_double2scm,
783 float,gh_number_p,
784 gh_scm2double,gh_double2scm);
785 specialize_std_pair_on_both(double,gh_number_p,
786 gh_scm2double,gh_double2scm,
787 std::string,gh_string_p,
788 SWIG_scm2string,SWIG_string2scm);
789 specialize_std_pair_on_both(float,gh_number_p,
790 gh_scm2double,gh_double2scm,
791 bool,gh_boolean_p,
792 gh_scm2bool,SWIG_bool2scm);
793 specialize_std_pair_on_both(float,gh_number_p,
794 gh_scm2double,gh_double2scm,
795 int,gh_number_p,
796 gh_scm2long,gh_long2scm);
797 specialize_std_pair_on_both(float,gh_number_p,
798 gh_scm2double,gh_double2scm,
799 short,gh_number_p,
800 gh_scm2long,gh_long2scm);
801 specialize_std_pair_on_both(float,gh_number_p,
802 gh_scm2double,gh_double2scm,
803 long,gh_number_p,
804 gh_scm2long,gh_long2scm);
805 specialize_std_pair_on_both(float,gh_number_p,
806 gh_scm2double,gh_double2scm,
807 unsigned int,gh_number_p,
808 gh_scm2ulong,gh_ulong2scm);
809 specialize_std_pair_on_both(float,gh_number_p,
810 gh_scm2double,gh_double2scm,
811 unsigned short,gh_number_p,
812 gh_scm2ulong,gh_ulong2scm);
813 specialize_std_pair_on_both(float,gh_number_p,
814 gh_scm2double,gh_double2scm,
815 unsigned long,gh_number_p,
816 gh_scm2ulong,gh_ulong2scm);
817 specialize_std_pair_on_both(float,gh_number_p,
818 gh_scm2double,gh_double2scm,
819 double,gh_number_p,
820 gh_scm2double,gh_double2scm);
821 specialize_std_pair_on_both(float,gh_number_p,
822 gh_scm2double,gh_double2scm,
823 float,gh_number_p,
824 gh_scm2double,gh_double2scm);
825 specialize_std_pair_on_both(float,gh_number_p,
826 gh_scm2double,gh_double2scm,
827 std::string,gh_string_p,
828 SWIG_scm2string,SWIG_string2scm);
829 specialize_std_pair_on_both(std::string,gh_string_p,
830 SWIG_scm2string,SWIG_string2scm,
831 bool,gh_boolean_p,
832 gh_scm2bool,SWIG_bool2scm);
833 specialize_std_pair_on_both(std::string,gh_string_p,
834 SWIG_scm2string,SWIG_string2scm,
835 int,gh_number_p,
836 gh_scm2long,gh_long2scm);
837 specialize_std_pair_on_both(std::string,gh_string_p,
838 SWIG_scm2string,SWIG_string2scm,
839 short,gh_number_p,
840 gh_scm2long,gh_long2scm);
841 specialize_std_pair_on_both(std::string,gh_string_p,
842 SWIG_scm2string,SWIG_string2scm,
843 long,gh_number_p,
844 gh_scm2long,gh_long2scm);
845 specialize_std_pair_on_both(std::string,gh_string_p,
846 SWIG_scm2string,SWIG_string2scm,
847 unsigned int,gh_number_p,
848 gh_scm2ulong,gh_ulong2scm);
849 specialize_std_pair_on_both(std::string,gh_string_p,
850 SWIG_scm2string,SWIG_string2scm,
851 unsigned short,gh_number_p,
852 gh_scm2ulong,gh_ulong2scm);
853 specialize_std_pair_on_both(std::string,gh_string_p,
854 SWIG_scm2string,SWIG_string2scm,
855 unsigned long,gh_number_p,
856 gh_scm2ulong,gh_ulong2scm);
857 specialize_std_pair_on_both(std::string,gh_string_p,
858 SWIG_scm2string,SWIG_string2scm,
859 double,gh_number_p,
860 gh_scm2double,gh_double2scm);
861 specialize_std_pair_on_both(std::string,gh_string_p,
862 SWIG_scm2string,SWIG_string2scm,
863 float,gh_number_p,
864 gh_scm2double,gh_double2scm);
865 specialize_std_pair_on_both(std::string,gh_string_p,
866 SWIG_scm2string,SWIG_string2scm,
867 std::string,gh_string_p,
868 SWIG_scm2string,SWIG_string2scm);
869}