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