github.com/matrixorigin/matrixone@v0.7.0/pkg/sql/plan/function/castBackup (about) 1 // the back up of old CAST. 2 CAST: { 3 Id: CAST, 4 Flag: plan.Function_STRICT, 5 Layout: CAST_EXPRESSION, 6 TypeCheckFn: func(overloads []Function, inputs []types.T) (overloadIndex int32, _ []types.T) { 7 // cast-operator should check param types strictly 8 if len(inputs) == 2 { 9 for i, o := range overloads { 10 if o.Args[0] == inputs[0] && o.Args[1] == inputs[1] { 11 return int32(i), nil 12 } 13 } 14 } 15 return wrongFunctionParameters, nil 16 }, 17 Overloads: []Function{ 18 { 19 Index: 0, 20 Args: []types.T{types.T_int8, types.T_int8}, 21 ReturnTyp: types.T_int8, 22 Fn: operator.Cast, 23 }, 24 { 25 Index: 1, 26 Args: []types.T{types.T_int16, types.T_int16}, 27 ReturnTyp: types.T_int16, 28 Fn: operator.Cast, 29 }, 30 { 31 Index: 2, 32 Args: []types.T{types.T_int32, types.T_int32}, 33 ReturnTyp: types.T_int32, 34 Fn: operator.Cast, 35 }, 36 { 37 Index: 3, 38 Args: []types.T{types.T_int64, types.T_int64}, 39 ReturnTyp: types.T_int64, 40 Fn: operator.Cast, 41 }, 42 { 43 Index: 4, 44 Args: []types.T{types.T_uint8, types.T_uint8}, 45 ReturnTyp: types.T_uint8, 46 Fn: operator.Cast, 47 }, 48 { 49 Index: 5, 50 Args: []types.T{types.T_uint16, types.T_uint16}, 51 ReturnTyp: types.T_uint16, 52 Fn: operator.Cast, 53 }, 54 { 55 Index: 6, 56 Args: []types.T{types.T_uint32, types.T_uint32}, 57 ReturnTyp: types.T_uint32, 58 Fn: operator.Cast, 59 }, 60 { 61 Index: 7, 62 Args: []types.T{types.T_uint64, types.T_uint64}, 63 ReturnTyp: types.T_uint64, 64 Fn: operator.Cast, 65 }, 66 { 67 Index: 8, 68 Args: []types.T{types.T_float32, types.T_float32}, 69 ReturnTyp: types.T_float32, 70 Fn: operator.Cast, 71 }, 72 { 73 Index: 9, 74 Args: []types.T{types.T_float64, types.T_float64}, 75 ReturnTyp: types.T_float64, 76 Fn: operator.Cast, 77 }, 78 { 79 Index: 10, 80 Args: []types.T{types.T_date, types.T_date}, 81 ReturnTyp: types.T_date, 82 Fn: operator.Cast, 83 }, 84 { 85 Index: 11, 86 Args: []types.T{types.T_datetime, types.T_datetime}, 87 ReturnTyp: types.T_datetime, 88 Fn: operator.Cast, 89 }, 90 { 91 Index: 12, 92 Args: []types.T{types.T_timestamp, types.T_timestamp}, 93 ReturnTyp: types.T_timestamp, 94 Fn: operator.Cast, 95 }, 96 { 97 Index: 13, 98 Args: []types.T{types.T_int16, types.T_int8}, 99 ReturnTyp: types.T_int8, 100 Fn: operator.Cast, 101 }, 102 { 103 Index: 14, 104 Args: []types.T{types.T_int32, types.T_int8}, 105 ReturnTyp: types.T_int8, 106 Fn: operator.Cast, 107 }, 108 { 109 Index: 15, 110 Args: []types.T{types.T_int64, types.T_int8}, 111 ReturnTyp: types.T_int8, 112 Fn: operator.Cast, 113 }, 114 { 115 Index: 16, 116 Args: []types.T{types.T_uint8, types.T_int8}, 117 ReturnTyp: types.T_int8, 118 Fn: operator.Cast, 119 }, 120 { 121 Index: 17, 122 Args: []types.T{types.T_uint16, types.T_int8}, 123 ReturnTyp: types.T_int8, 124 Fn: operator.Cast, 125 }, 126 { 127 Index: 18, 128 Args: []types.T{types.T_uint32, types.T_int8}, 129 ReturnTyp: types.T_int8, 130 Fn: operator.Cast, 131 }, 132 { 133 Index: 19, 134 Args: []types.T{types.T_uint64, types.T_int8}, 135 ReturnTyp: types.T_int8, 136 Fn: operator.Cast, 137 }, 138 { 139 Index: 20, 140 Args: []types.T{types.T_float32, types.T_int8}, 141 ReturnTyp: types.T_int8, 142 Fn: operator.Cast, 143 }, 144 { 145 Index: 21, 146 Args: []types.T{types.T_float64, types.T_int8}, 147 ReturnTyp: types.T_int8, 148 Fn: operator.Cast, 149 }, 150 { 151 Index: 22, 152 Args: []types.T{types.T_int8, types.T_int16}, 153 ReturnTyp: types.T_int16, 154 Fn: operator.Cast, 155 }, 156 { 157 Index: 23, 158 Args: []types.T{types.T_int32, types.T_int16}, 159 ReturnTyp: types.T_int16, 160 Fn: operator.Cast, 161 }, 162 { 163 Index: 24, 164 Args: []types.T{types.T_int64, types.T_int16}, 165 ReturnTyp: types.T_int16, 166 Fn: operator.Cast, 167 }, 168 { 169 Index: 25, 170 Args: []types.T{types.T_uint8, types.T_int16}, 171 ReturnTyp: types.T_int16, 172 Fn: operator.Cast, 173 }, 174 { 175 Index: 26, 176 Args: []types.T{types.T_uint16, types.T_int16}, 177 ReturnTyp: types.T_int16, 178 Fn: operator.Cast, 179 }, 180 { 181 Index: 27, 182 Args: []types.T{types.T_uint32, types.T_int16}, 183 ReturnTyp: types.T_int16, 184 Fn: operator.Cast, 185 }, 186 { 187 Index: 28, 188 Args: []types.T{types.T_uint64, types.T_int16}, 189 ReturnTyp: types.T_int16, 190 Fn: operator.Cast, 191 }, 192 { 193 Index: 29, 194 Args: []types.T{types.T_float32, types.T_int16}, 195 ReturnTyp: types.T_int16, 196 Fn: operator.Cast, 197 }, 198 { 199 Index: 30, 200 Args: []types.T{types.T_float64, types.T_int16}, 201 ReturnTyp: types.T_int16, 202 Fn: operator.Cast, 203 }, 204 { 205 Index: 31, 206 Args: []types.T{types.T_int8, types.T_int32}, 207 ReturnTyp: types.T_int32, 208 Fn: operator.Cast, 209 }, 210 { 211 Index: 32, 212 Args: []types.T{types.T_int16, types.T_int32}, 213 ReturnTyp: types.T_int32, 214 Fn: operator.Cast, 215 }, 216 { 217 Index: 33, 218 Args: []types.T{types.T_int64, types.T_int32}, 219 ReturnTyp: types.T_int32, 220 Fn: operator.Cast, 221 }, 222 { 223 Index: 34, 224 Args: []types.T{types.T_uint8, types.T_int32}, 225 ReturnTyp: types.T_int32, 226 Fn: operator.Cast, 227 }, 228 { 229 Index: 35, 230 Args: []types.T{types.T_uint16, types.T_int32}, 231 ReturnTyp: types.T_int32, 232 Fn: operator.Cast, 233 }, 234 { 235 Index: 36, 236 Args: []types.T{types.T_uint32, types.T_int32}, 237 ReturnTyp: types.T_int32, 238 Fn: operator.Cast, 239 }, 240 { 241 Index: 37, 242 Args: []types.T{types.T_uint64, types.T_int32}, 243 ReturnTyp: types.T_int32, 244 Fn: operator.Cast, 245 }, 246 { 247 Index: 38, 248 Args: []types.T{types.T_float32, types.T_int32}, 249 ReturnTyp: types.T_int32, 250 Fn: operator.Cast, 251 }, 252 { 253 Index: 39, 254 Args: []types.T{types.T_float64, types.T_int32}, 255 ReturnTyp: types.T_int32, 256 Fn: operator.Cast, 257 }, 258 { 259 Index: 40, 260 Args: []types.T{types.T_int8, types.T_int64}, 261 ReturnTyp: types.T_int64, 262 Fn: operator.Cast, 263 }, 264 { 265 Index: 41, 266 Args: []types.T{types.T_int16, types.T_int64}, 267 ReturnTyp: types.T_int64, 268 Fn: operator.Cast, 269 }, 270 { 271 Index: 42, 272 Args: []types.T{types.T_int32, types.T_int64}, 273 ReturnTyp: types.T_int64, 274 Fn: operator.Cast, 275 }, 276 { 277 Index: 43, 278 Args: []types.T{types.T_uint8, types.T_int64}, 279 ReturnTyp: types.T_int64, 280 Fn: operator.Cast, 281 }, 282 { 283 Index: 44, 284 Args: []types.T{types.T_uint16, types.T_int64}, 285 ReturnTyp: types.T_int64, 286 Fn: operator.Cast, 287 }, 288 { 289 Index: 45, 290 Args: []types.T{types.T_uint32, types.T_int64}, 291 ReturnTyp: types.T_int64, 292 Fn: operator.Cast, 293 }, 294 { 295 Index: 46, 296 Args: []types.T{types.T_uint64, types.T_int64}, 297 ReturnTyp: types.T_int64, 298 Fn: operator.Cast, 299 }, 300 { 301 Index: 47, 302 Args: []types.T{types.T_float32, types.T_int64}, 303 ReturnTyp: types.T_int64, 304 Fn: operator.Cast, 305 }, 306 { 307 Index: 48, 308 Args: []types.T{types.T_float64, types.T_int64}, 309 ReturnTyp: types.T_int64, 310 Fn: operator.Cast, 311 }, 312 { 313 Index: 49, 314 Args: []types.T{types.T_int8, types.T_uint8}, 315 ReturnTyp: types.T_uint8, 316 Fn: operator.Cast, 317 }, 318 { 319 Index: 50, 320 Args: []types.T{types.T_int16, types.T_uint8}, 321 ReturnTyp: types.T_uint8, 322 Fn: operator.Cast, 323 }, 324 { 325 Index: 51, 326 Args: []types.T{types.T_int32, types.T_uint8}, 327 ReturnTyp: types.T_uint8, 328 Fn: operator.Cast, 329 }, 330 { 331 Index: 52, 332 Args: []types.T{types.T_int64, types.T_uint8}, 333 ReturnTyp: types.T_uint8, 334 Fn: operator.Cast, 335 }, 336 { 337 Index: 53, 338 Args: []types.T{types.T_uint16, types.T_uint8}, 339 ReturnTyp: types.T_uint8, 340 Fn: operator.Cast, 341 }, 342 { 343 Index: 54, 344 Args: []types.T{types.T_uint32, types.T_uint8}, 345 ReturnTyp: types.T_uint8, 346 Fn: operator.Cast, 347 }, 348 { 349 Index: 55, 350 Args: []types.T{types.T_uint64, types.T_uint8}, 351 ReturnTyp: types.T_uint8, 352 Fn: operator.Cast, 353 }, 354 { 355 Index: 56, 356 Args: []types.T{types.T_float32, types.T_uint8}, 357 ReturnTyp: types.T_uint8, 358 Fn: operator.Cast, 359 }, 360 { 361 Index: 57, 362 Args: []types.T{types.T_float64, types.T_uint8}, 363 ReturnTyp: types.T_uint8, 364 Fn: operator.Cast, 365 }, 366 { 367 Index: 58, 368 Args: []types.T{types.T_int8, types.T_uint16}, 369 ReturnTyp: types.T_uint16, 370 Fn: operator.Cast, 371 }, 372 { 373 Index: 59, 374 Args: []types.T{types.T_int16, types.T_uint16}, 375 ReturnTyp: types.T_uint16, 376 Fn: operator.Cast, 377 }, 378 { 379 Index: 60, 380 Args: []types.T{types.T_int32, types.T_uint16}, 381 ReturnTyp: types.T_uint16, 382 Fn: operator.Cast, 383 }, 384 { 385 Index: 61, 386 Args: []types.T{types.T_int64, types.T_uint16}, 387 ReturnTyp: types.T_uint16, 388 Fn: operator.Cast, 389 }, 390 { 391 Index: 62, 392 Args: []types.T{types.T_uint8, types.T_uint16}, 393 ReturnTyp: types.T_uint16, 394 Fn: operator.Cast, 395 }, 396 { 397 Index: 63, 398 Args: []types.T{types.T_uint32, types.T_uint16}, 399 ReturnTyp: types.T_uint16, 400 Fn: operator.Cast, 401 }, 402 { 403 Index: 64, 404 Args: []types.T{types.T_uint64, types.T_uint16}, 405 ReturnTyp: types.T_uint16, 406 Fn: operator.Cast, 407 }, 408 { 409 Index: 65, 410 Args: []types.T{types.T_float32, types.T_uint16}, 411 ReturnTyp: types.T_uint16, 412 Fn: operator.Cast, 413 }, 414 { 415 Index: 66, 416 Args: []types.T{types.T_float64, types.T_uint16}, 417 ReturnTyp: types.T_uint16, 418 Fn: operator.Cast, 419 }, 420 { 421 Index: 67, 422 Args: []types.T{types.T_int8, types.T_uint32}, 423 ReturnTyp: types.T_uint32, 424 Fn: operator.Cast, 425 }, 426 { 427 Index: 68, 428 Args: []types.T{types.T_int16, types.T_uint32}, 429 ReturnTyp: types.T_uint32, 430 Fn: operator.Cast, 431 }, 432 { 433 Index: 69, 434 Args: []types.T{types.T_int32, types.T_uint32}, 435 ReturnTyp: types.T_uint32, 436 Fn: operator.Cast, 437 }, 438 { 439 Index: 70, 440 Args: []types.T{types.T_int64, types.T_uint32}, 441 ReturnTyp: types.T_uint32, 442 Fn: operator.Cast, 443 }, 444 { 445 Index: 71, 446 Args: []types.T{types.T_uint8, types.T_uint32}, 447 ReturnTyp: types.T_uint32, 448 Fn: operator.Cast, 449 }, 450 { 451 Index: 72, 452 Args: []types.T{types.T_uint16, types.T_uint32}, 453 ReturnTyp: types.T_uint32, 454 Fn: operator.Cast, 455 }, 456 { 457 Index: 73, 458 Args: []types.T{types.T_uint64, types.T_uint32}, 459 ReturnTyp: types.T_uint32, 460 Fn: operator.Cast, 461 }, 462 { 463 Index: 74, 464 Args: []types.T{types.T_float32, types.T_uint32}, 465 ReturnTyp: types.T_uint32, 466 Fn: operator.Cast, 467 }, 468 { 469 Index: 75, 470 Args: []types.T{types.T_float64, types.T_uint32}, 471 ReturnTyp: types.T_uint32, 472 Fn: operator.Cast, 473 }, 474 { 475 Index: 76, 476 Args: []types.T{types.T_int8, types.T_uint64}, 477 ReturnTyp: types.T_uint64, 478 Fn: operator.Cast, 479 }, 480 { 481 Index: 77, 482 Args: []types.T{types.T_int16, types.T_uint64}, 483 ReturnTyp: types.T_uint64, 484 Fn: operator.Cast, 485 }, 486 { 487 Index: 78, 488 Args: []types.T{types.T_int32, types.T_uint64}, 489 ReturnTyp: types.T_uint64, 490 Fn: operator.Cast, 491 }, 492 { 493 Index: 79, 494 Args: []types.T{types.T_int64, types.T_uint64}, 495 ReturnTyp: types.T_uint64, 496 Fn: operator.Cast, 497 }, 498 { 499 Index: 80, 500 Args: []types.T{types.T_uint8, types.T_uint64}, 501 ReturnTyp: types.T_uint64, 502 Fn: operator.Cast, 503 }, 504 { 505 Index: 81, 506 Args: []types.T{types.T_uint16, types.T_uint64}, 507 ReturnTyp: types.T_uint64, 508 Fn: operator.Cast, 509 }, 510 { 511 Index: 82, 512 Args: []types.T{types.T_uint32, types.T_uint64}, 513 ReturnTyp: types.T_uint64, 514 Fn: operator.Cast, 515 }, 516 { 517 Index: 83, 518 Args: []types.T{types.T_float32, types.T_uint64}, 519 ReturnTyp: types.T_uint64, 520 Fn: operator.Cast, 521 }, 522 { 523 Index: 84, 524 Args: []types.T{types.T_float64, types.T_uint64}, 525 ReturnTyp: types.T_uint64, 526 Fn: operator.Cast, 527 }, 528 { 529 Index: 85, 530 Args: []types.T{types.T_int8, types.T_float32}, 531 ReturnTyp: types.T_float32, 532 Fn: operator.Cast, 533 }, 534 { 535 Index: 86, 536 Args: []types.T{types.T_int16, types.T_float32}, 537 ReturnTyp: types.T_float32, 538 Fn: operator.Cast, 539 }, 540 { 541 Index: 87, 542 Args: []types.T{types.T_int32, types.T_float32}, 543 ReturnTyp: types.T_float32, 544 Fn: operator.Cast, 545 }, 546 { 547 Index: 88, 548 Args: []types.T{types.T_int64, types.T_float32}, 549 ReturnTyp: types.T_float32, 550 Fn: operator.Cast, 551 }, 552 { 553 Index: 89, 554 Args: []types.T{types.T_uint8, types.T_float32}, 555 ReturnTyp: types.T_float32, 556 Fn: operator.Cast, 557 }, 558 { 559 Index: 90, 560 Args: []types.T{types.T_uint16, types.T_float32}, 561 ReturnTyp: types.T_float32, 562 Fn: operator.Cast, 563 }, 564 { 565 Index: 91, 566 Args: []types.T{types.T_uint32, types.T_float32}, 567 ReturnTyp: types.T_float32, 568 Fn: operator.Cast, 569 }, 570 { 571 Index: 92, 572 Args: []types.T{types.T_uint64, types.T_float32}, 573 ReturnTyp: types.T_float32, 574 Fn: operator.Cast, 575 }, 576 { 577 Index: 93, 578 Args: []types.T{types.T_float64, types.T_float32}, 579 ReturnTyp: types.T_float32, 580 Fn: operator.Cast, 581 }, 582 { 583 Index: 94, 584 Args: []types.T{types.T_int8, types.T_float64}, 585 ReturnTyp: types.T_float64, 586 Fn: operator.Cast, 587 }, 588 { 589 Index: 95, 590 Args: []types.T{types.T_int16, types.T_float64}, 591 ReturnTyp: types.T_float64, 592 Fn: operator.Cast, 593 }, 594 { 595 Index: 96, 596 Args: []types.T{types.T_int32, types.T_float64}, 597 ReturnTyp: types.T_float64, 598 Fn: operator.Cast, 599 }, 600 { 601 Index: 97, 602 Args: []types.T{types.T_int64, types.T_float64}, 603 ReturnTyp: types.T_float64, 604 Fn: operator.Cast, 605 }, 606 { 607 Index: 98, 608 Args: []types.T{types.T_uint8, types.T_float64}, 609 ReturnTyp: types.T_float64, 610 Fn: operator.Cast, 611 }, 612 { 613 Index: 99, 614 Args: []types.T{types.T_uint16, types.T_float64}, 615 ReturnTyp: types.T_float64, 616 Fn: operator.Cast, 617 }, 618 { 619 Index: 100, 620 Args: []types.T{types.T_uint32, types.T_float64}, 621 ReturnTyp: types.T_float64, 622 Fn: operator.Cast, 623 }, 624 { 625 Index: 101, 626 Args: []types.T{types.T_uint64, types.T_float64}, 627 ReturnTyp: types.T_float64, 628 Fn: operator.Cast, 629 }, 630 { 631 Index: 102, 632 Args: []types.T{types.T_float32, types.T_float64}, 633 ReturnTyp: types.T_float64, 634 Fn: operator.Cast, 635 }, 636 { 637 Index: 103, 638 Args: []types.T{types.T_char, types.T_int8}, 639 ReturnTyp: types.T_int8, 640 Fn: operator.Cast, 641 }, 642 { 643 Index: 104, 644 Args: []types.T{types.T_varchar, types.T_int8}, 645 ReturnTyp: types.T_int8, 646 Fn: operator.Cast, 647 }, 648 { 649 Index: 105, 650 Args: []types.T{types.T_char, types.T_int16}, 651 ReturnTyp: types.T_int16, 652 Fn: operator.Cast, 653 }, 654 { 655 Index: 106, 656 Args: []types.T{types.T_varchar, types.T_int16}, 657 ReturnTyp: types.T_int16, 658 Fn: operator.Cast, 659 }, 660 { 661 Index: 107, 662 Args: []types.T{types.T_char, types.T_int32}, 663 ReturnTyp: types.T_int32, 664 Fn: operator.Cast, 665 }, 666 { 667 Index: 108, 668 Args: []types.T{types.T_varchar, types.T_int32}, 669 ReturnTyp: types.T_int32, 670 Fn: operator.Cast, 671 }, 672 { 673 Index: 109, 674 Args: []types.T{types.T_char, types.T_int64}, 675 ReturnTyp: types.T_int64, 676 Fn: operator.Cast, 677 }, 678 { 679 Index: 110, 680 Args: []types.T{types.T_varchar, types.T_int64}, 681 ReturnTyp: types.T_int64, 682 Fn: operator.Cast, 683 }, 684 { 685 Index: 111, 686 Args: []types.T{types.T_char, types.T_uint8}, 687 ReturnTyp: types.T_uint8, 688 Fn: operator.Cast, 689 }, 690 { 691 Index: 112, 692 Args: []types.T{types.T_varchar, types.T_uint8}, 693 ReturnTyp: types.T_uint8, 694 Fn: operator.Cast, 695 }, 696 { 697 Index: 113, 698 Args: []types.T{types.T_char, types.T_uint16}, 699 ReturnTyp: types.T_uint16, 700 Fn: operator.Cast, 701 }, 702 { 703 Index: 114, 704 Args: []types.T{types.T_varchar, types.T_uint16}, 705 ReturnTyp: types.T_uint16, 706 Fn: operator.Cast, 707 }, 708 { 709 Index: 115, 710 Args: []types.T{types.T_char, types.T_uint32}, 711 ReturnTyp: types.T_uint32, 712 Fn: operator.Cast, 713 }, 714 { 715 Index: 116, 716 Args: []types.T{types.T_varchar, types.T_uint32}, 717 ReturnTyp: types.T_uint32, 718 Fn: operator.Cast, 719 }, 720 { 721 Index: 117, 722 Args: []types.T{types.T_char, types.T_uint64}, 723 ReturnTyp: types.T_uint64, 724 Fn: operator.Cast, 725 }, 726 { 727 Index: 118, 728 Args: []types.T{types.T_varchar, types.T_uint64}, 729 ReturnTyp: types.T_uint64, 730 Fn: operator.Cast, 731 }, 732 { 733 Index: 119, 734 Args: []types.T{types.T_char, types.T_float32}, 735 ReturnTyp: types.T_float32, 736 Fn: operator.Cast, 737 }, 738 { 739 Index: 120, 740 Args: []types.T{types.T_varchar, types.T_float32}, 741 ReturnTyp: types.T_float32, 742 Fn: operator.Cast, 743 }, 744 { 745 Index: 121, 746 Args: []types.T{types.T_char, types.T_float64}, 747 ReturnTyp: types.T_float64, 748 Fn: operator.Cast, 749 }, 750 { 751 Index: 122, 752 Args: []types.T{types.T_varchar, types.T_float64}, 753 ReturnTyp: types.T_float64, 754 Fn: operator.Cast, 755 }, 756 { 757 Index: 123, 758 Args: []types.T{types.T_int8, types.T_char}, 759 ReturnTyp: types.T_char, 760 Fn: operator.Cast, 761 }, 762 { 763 Index: 124, 764 Args: []types.T{types.T_int8, types.T_varchar}, 765 ReturnTyp: types.T_varchar, 766 Fn: operator.Cast, 767 }, 768 { 769 Index: 125, 770 Args: []types.T{types.T_int16, types.T_char}, 771 ReturnTyp: types.T_char, 772 Fn: operator.Cast, 773 }, 774 { 775 Index: 126, 776 Args: []types.T{types.T_int16, types.T_varchar}, 777 ReturnTyp: types.T_varchar, 778 Fn: operator.Cast, 779 }, 780 { 781 Index: 127, 782 Args: []types.T{types.T_int32, types.T_char}, 783 ReturnTyp: types.T_char, 784 Fn: operator.Cast, 785 }, 786 { 787 Index: 128, 788 Args: []types.T{types.T_int32, types.T_varchar}, 789 ReturnTyp: types.T_varchar, 790 Fn: operator.Cast, 791 }, 792 { 793 Index: 129, 794 Args: []types.T{types.T_int64, types.T_char}, 795 ReturnTyp: types.T_char, 796 Fn: operator.Cast, 797 }, 798 { 799 Index: 130, 800 Args: []types.T{types.T_int64, types.T_varchar}, 801 ReturnTyp: types.T_varchar, 802 Fn: operator.Cast, 803 }, 804 { 805 Index: 131, 806 Args: []types.T{types.T_uint8, types.T_char}, 807 ReturnTyp: types.T_char, 808 Fn: operator.Cast, 809 }, 810 { 811 Index: 132, 812 Args: []types.T{types.T_uint8, types.T_varchar}, 813 ReturnTyp: types.T_varchar, 814 Fn: operator.Cast, 815 }, 816 { 817 Index: 133, 818 Args: []types.T{types.T_uint16, types.T_char}, 819 ReturnTyp: types.T_char, 820 Fn: operator.Cast, 821 }, 822 { 823 Index: 134, 824 Args: []types.T{types.T_uint16, types.T_varchar}, 825 ReturnTyp: types.T_varchar, 826 Fn: operator.Cast, 827 }, 828 { 829 Index: 135, 830 Args: []types.T{types.T_uint32, types.T_char}, 831 ReturnTyp: types.T_char, 832 Fn: operator.Cast, 833 }, 834 { 835 Index: 136, 836 Args: []types.T{types.T_uint32, types.T_varchar}, 837 ReturnTyp: types.T_varchar, 838 Fn: operator.Cast, 839 }, 840 { 841 Index: 137, 842 Args: []types.T{types.T_uint64, types.T_char}, 843 ReturnTyp: types.T_char, 844 Fn: operator.Cast, 845 }, 846 { 847 Index: 138, 848 Args: []types.T{types.T_uint64, types.T_varchar}, 849 ReturnTyp: types.T_varchar, 850 Fn: operator.Cast, 851 }, 852 { 853 Index: 139, 854 Args: []types.T{types.T_float32, types.T_char}, 855 ReturnTyp: types.T_char, 856 Fn: operator.Cast, 857 }, 858 { 859 Index: 140, 860 Args: []types.T{types.T_float32, types.T_varchar}, 861 ReturnTyp: types.T_varchar, 862 Fn: operator.Cast, 863 }, 864 { 865 Index: 141, 866 Args: []types.T{types.T_float64, types.T_char}, 867 ReturnTyp: types.T_char, 868 Fn: operator.Cast, 869 }, 870 { 871 Index: 142, 872 Args: []types.T{types.T_float64, types.T_varchar}, 873 ReturnTyp: types.T_varchar, 874 Fn: operator.Cast, 875 }, 876 { 877 Index: 143, 878 Args: []types.T{types.T_char, types.T_char}, 879 ReturnTyp: types.T_char, 880 Fn: operator.Cast, 881 }, 882 { 883 Index: 144, 884 Args: []types.T{types.T_varchar, types.T_varchar}, 885 ReturnTyp: types.T_varchar, 886 Fn: operator.Cast, 887 }, 888 { 889 Index: 145, 890 Args: []types.T{types.T_char, types.T_varchar}, 891 ReturnTyp: types.T_varchar, 892 Fn: operator.Cast, 893 }, 894 { 895 Index: 146, 896 Args: []types.T{types.T_varchar, types.T_char}, 897 ReturnTyp: types.T_char, 898 Fn: operator.Cast, 899 }, 900 { 901 Index: 147, 902 Args: []types.T{types.T_int8, types.T_decimal128}, 903 ReturnTyp: types.T_decimal128, 904 Fn: operator.Cast, 905 }, 906 { 907 Index: 148, 908 Args: []types.T{types.T_int16, types.T_decimal128}, 909 ReturnTyp: types.T_decimal128, 910 Fn: operator.Cast, 911 }, 912 { 913 Index: 149, 914 Args: []types.T{types.T_int32, types.T_decimal128}, 915 ReturnTyp: types.T_decimal128, 916 Fn: operator.Cast, 917 }, 918 { 919 Index: 150, 920 Args: []types.T{types.T_int64, types.T_decimal128}, 921 ReturnTyp: types.T_decimal128, 922 Fn: operator.Cast, 923 }, 924 { 925 Index: 151, 926 Args: []types.T{types.T_varchar, types.T_date}, 927 ReturnTyp: types.T_date, 928 Fn: operator.Cast, 929 }, 930 { 931 Index: 152, 932 Args: []types.T{types.T_varchar, types.T_datetime}, 933 ReturnTyp: types.T_datetime, 934 Fn: operator.Cast, 935 }, 936 { 937 Index: 153, 938 Volatile: true, 939 Args: []types.T{types.T_varchar, types.T_timestamp}, 940 ReturnTyp: types.T_timestamp, 941 Fn: operator.Cast, 942 }, 943 { 944 Index: 154, 945 Args: []types.T{types.T_decimal64, types.T_decimal128}, 946 ReturnTyp: types.T_decimal128, 947 Fn: operator.Cast, 948 }, 949 { 950 Index: 155, 951 Args: []types.T{types.T_decimal64, types.T_decimal64}, 952 ReturnTyp: types.T_decimal64, 953 Fn: operator.Cast, 954 }, 955 { 956 Index: 156, 957 Args: []types.T{types.T_decimal128, types.T_decimal128}, 958 ReturnTyp: types.T_decimal128, 959 Fn: operator.Cast, 960 }, 961 { 962 Index: 157, 963 Volatile: true, 964 Args: []types.T{types.T_timestamp, types.T_datetime}, 965 ReturnTyp: types.T_datetime, 966 Fn: operator.Cast, 967 }, 968 { 969 Index: 158, 970 Args: []types.T{types.T_varchar, types.T_interval}, 971 ReturnTyp: types.T_interval, 972 Fn: nil, 973 }, 974 { 975 Index: 159, 976 Args: []types.T{types.T_uint8, types.T_decimal128}, 977 ReturnTyp: types.T_decimal128, 978 Fn: operator.Cast, 979 }, 980 { 981 Index: 160, 982 Args: []types.T{types.T_uint16, types.T_decimal128}, 983 ReturnTyp: types.T_decimal128, 984 Fn: operator.Cast, 985 }, 986 { 987 Index: 161, 988 Args: []types.T{types.T_uint32, types.T_decimal128}, 989 ReturnTyp: types.T_decimal128, 990 Fn: operator.Cast, 991 }, 992 { 993 Index: 162, 994 Args: []types.T{types.T_uint64, types.T_decimal128}, 995 ReturnTyp: types.T_decimal128, 996 Fn: operator.Cast, 997 }, 998 { 999 Index: 163, 1000 Args: []types.T{types.T_varchar, types.T_decimal64}, 1001 ReturnTyp: types.T_decimal64, 1002 Fn: operator.Cast, 1003 }, 1004 { 1005 Index: 164, 1006 Args: []types.T{types.T_char, types.T_decimal64}, 1007 ReturnTyp: types.T_decimal64, 1008 Fn: operator.Cast, 1009 }, 1010 { 1011 Index: 165, 1012 Args: []types.T{types.T_varchar, types.T_decimal128}, 1013 ReturnTyp: types.T_decimal128, 1014 Fn: operator.Cast, 1015 }, 1016 { 1017 Index: 166, 1018 Args: []types.T{types.T_char, types.T_decimal128}, 1019 ReturnTyp: types.T_decimal64, 1020 Fn: operator.Cast, 1021 }, 1022 { 1023 Index: 167, 1024 Volatile: true, 1025 Args: []types.T{types.T_timestamp, types.T_varchar}, 1026 ReturnTyp: types.T_char, 1027 Fn: operator.Cast, 1028 }, 1029 { 1030 Index: 168, 1031 Args: []types.T{types.T_date, types.T_char}, 1032 ReturnTyp: types.T_varchar, 1033 Fn: operator.Cast, 1034 }, 1035 { 1036 Index: 169, 1037 Args: []types.T{types.T_date, types.T_varchar}, 1038 ReturnTyp: types.T_varchar, 1039 Fn: operator.Cast, 1040 }, 1041 { 1042 Index: 170, 1043 Args: []types.T{types.T_datetime, types.T_char}, 1044 ReturnTyp: types.T_char, 1045 Fn: operator.Cast, 1046 }, 1047 { 1048 Index: 171, 1049 Args: []types.T{types.T_datetime, types.T_varchar}, 1050 ReturnTyp: types.T_varchar, 1051 Fn: operator.Cast, 1052 }, 1053 { 1054 Index: 172, 1055 Args: []types.T{types.T_bool, types.T_varchar}, 1056 ReturnTyp: types.T_varchar, 1057 Fn: operator.Cast, 1058 }, 1059 { 1060 Index: 173, 1061 Args: []types.T{types.T_bool, types.T_char}, 1062 ReturnTyp: types.T_char, 1063 Fn: operator.Cast, 1064 }, 1065 { 1066 Index: 174, 1067 Args: []types.T{types.T_date, types.T_datetime}, 1068 ReturnTyp: types.T_datetime, 1069 Fn: operator.Cast, 1070 }, 1071 { 1072 Index: 175, 1073 Args: []types.T{types.T_datetime, types.T_date}, 1074 ReturnTyp: types.T_date, 1075 Fn: operator.Cast, 1076 }, 1077 { 1078 Index: 176, 1079 Args: []types.T{types.T_float32, types.T_decimal64}, 1080 ReturnTyp: types.T_decimal64, 1081 Fn: operator.Cast, 1082 }, 1083 { 1084 Index: 177, 1085 Args: []types.T{types.T_float64, types.T_decimal64}, 1086 ReturnTyp: types.T_decimal64, 1087 Fn: operator.Cast, 1088 }, 1089 { 1090 Index: 178, 1091 Args: []types.T{types.T_float64, types.T_decimal128}, 1092 ReturnTyp: types.T_decimal128, 1093 Fn: operator.Cast, 1094 }, 1095 { 1096 Index: 179, 1097 Args: []types.T{types.T_float32, types.T_decimal128}, 1098 ReturnTyp: types.T_decimal128, 1099 Fn: operator.Cast, 1100 }, 1101 { 1102 Index: 180, 1103 Volatile: true, 1104 Args: []types.T{types.T_datetime, types.T_timestamp}, 1105 ReturnTyp: types.T_timestamp, 1106 Fn: operator.Cast, 1107 }, 1108 { 1109 Index: 181, 1110 Volatile: true, 1111 Args: []types.T{types.T_date, types.T_timestamp}, 1112 ReturnTyp: types.T_timestamp, 1113 Fn: operator.Cast, 1114 }, 1115 { 1116 Index: 182, 1117 Args: []types.T{types.T_decimal64, types.T_varchar}, 1118 ReturnTyp: types.T_varchar, 1119 Fn: operator.Cast, 1120 }, 1121 { 1122 Index: 183, 1123 Args: []types.T{types.T_decimal128, types.T_varchar}, 1124 ReturnTyp: types.T_varchar, 1125 Fn: operator.Cast, 1126 }, 1127 { 1128 Index: 184, 1129 Args: []types.T{types.T_decimal64, types.T_char}, 1130 ReturnTyp: types.T_char, 1131 Fn: operator.Cast, 1132 }, 1133 { 1134 Index: 185, 1135 Args: []types.T{types.T_decimal128, types.T_char}, 1136 ReturnTyp: types.T_char, 1137 Fn: operator.Cast, 1138 }, 1139 { 1140 Index: 186, 1141 Volatile: true, 1142 Args: []types.T{types.T_timestamp, types.T_date}, 1143 ReturnTyp: types.T_date, 1144 Fn: operator.Cast, 1145 }, 1146 { 1147 Index: 187, 1148 Args: []types.T{types.T_int8, types.T_timestamp}, 1149 ReturnTyp: types.T_timestamp, 1150 Fn: operator.Cast, 1151 }, 1152 { 1153 Index: 188, 1154 Args: []types.T{types.T_int16, types.T_timestamp}, 1155 ReturnTyp: types.T_timestamp, 1156 Fn: operator.Cast, 1157 }, 1158 { 1159 Index: 189, 1160 Args: []types.T{types.T_int32, types.T_timestamp}, 1161 ReturnTyp: types.T_timestamp, 1162 Fn: operator.Cast, 1163 }, 1164 { 1165 Index: 190, 1166 Args: []types.T{types.T_int64, types.T_timestamp}, 1167 ReturnTyp: types.T_timestamp, 1168 Fn: operator.Cast, 1169 }, 1170 { 1171 Index: 191, 1172 Args: []types.T{types.T_uint8, types.T_timestamp}, 1173 ReturnTyp: types.T_timestamp, 1174 Fn: operator.Cast, 1175 }, 1176 { 1177 Index: 192, 1178 Args: []types.T{types.T_uint16, types.T_timestamp}, 1179 ReturnTyp: types.T_timestamp, 1180 Fn: operator.Cast, 1181 }, 1182 { 1183 Index: 193, 1184 Args: []types.T{types.T_uint32, types.T_timestamp}, 1185 ReturnTyp: types.T_timestamp, 1186 Fn: operator.Cast, 1187 }, 1188 { 1189 Index: 194, 1190 Args: []types.T{types.T_uint64, types.T_timestamp}, 1191 ReturnTyp: types.T_timestamp, 1192 Fn: operator.Cast, 1193 }, 1194 { 1195 Index: 195, 1196 Args: []types.T{types.T_decimal64, types.T_timestamp}, 1197 ReturnTyp: types.T_timestamp, 1198 Fn: operator.Cast, 1199 }, 1200 { 1201 Index: 196, 1202 Args: []types.T{types.T_decimal128, types.T_timestamp}, 1203 ReturnTyp: types.T_timestamp, 1204 Fn: operator.Cast, 1205 }, 1206 { 1207 Index: 197, 1208 Args: []types.T{types.T_decimal64, types.T_float32}, 1209 ReturnTyp: types.T_float32, 1210 Fn: operator.Cast, 1211 }, 1212 { 1213 Index: 198, 1214 Args: []types.T{types.T_decimal128, types.T_float32}, 1215 ReturnTyp: types.T_float32, 1216 Fn: operator.Cast, 1217 }, 1218 { 1219 Index: 199, 1220 Args: []types.T{types.T_decimal64, types.T_float64}, 1221 ReturnTyp: types.T_float64, 1222 Fn: operator.Cast, 1223 }, 1224 { 1225 Index: 200, 1226 Args: []types.T{types.T_decimal128, types.T_float64}, 1227 ReturnTyp: types.T_float64, 1228 Fn: operator.Cast, 1229 }, 1230 { 1231 Index: 201, 1232 Args: []types.T{types.T_char, types.T_date}, 1233 ReturnTyp: types.T_date, 1234 Fn: operator.Cast, 1235 }, 1236 { 1237 Index: 202, 1238 Args: []types.T{types.T_char, types.T_datetime}, 1239 ReturnTyp: types.T_datetime, 1240 Fn: operator.Cast, 1241 }, 1242 { 1243 Index: 203, 1244 Volatile: true, 1245 Args: []types.T{types.T_char, types.T_timestamp}, 1246 ReturnTyp: types.T_timestamp, 1247 Fn: operator.Cast, 1248 }, 1249 { 1250 Index: 204, 1251 Args: []types.T{types.T_int8, types.T_decimal64}, 1252 ReturnTyp: types.T_decimal64, 1253 Fn: operator.Cast, 1254 }, 1255 { 1256 Index: 205, 1257 Args: []types.T{types.T_int16, types.T_decimal64}, 1258 ReturnTyp: types.T_decimal64, 1259 Fn: operator.Cast, 1260 }, 1261 { 1262 Index: 206, 1263 Args: []types.T{types.T_int32, types.T_decimal64}, 1264 ReturnTyp: types.T_decimal64, 1265 Fn: operator.Cast, 1266 }, 1267 { 1268 Index: 207, 1269 Args: []types.T{types.T_int64, types.T_decimal64}, 1270 ReturnTyp: types.T_decimal64, 1271 Fn: operator.Cast, 1272 }, 1273 { 1274 Index: 208, 1275 Args: []types.T{types.T_int8, types.T_bool}, 1276 ReturnTyp: types.T_bool, 1277 Fn: operator.Cast, 1278 }, 1279 { 1280 Index: 209, 1281 Args: []types.T{types.T_int16, types.T_bool}, 1282 ReturnTyp: types.T_bool, 1283 Fn: operator.Cast, 1284 }, 1285 { 1286 Index: 210, 1287 Args: []types.T{types.T_int32, types.T_bool}, 1288 ReturnTyp: types.T_bool, 1289 Fn: operator.Cast, 1290 }, 1291 { 1292 Index: 211, 1293 Args: []types.T{types.T_int64, types.T_bool}, 1294 ReturnTyp: types.T_bool, 1295 Fn: operator.Cast, 1296 }, 1297 { 1298 Index: 212, 1299 Args: []types.T{types.T_uint8, types.T_bool}, 1300 ReturnTyp: types.T_bool, 1301 Fn: operator.Cast, 1302 }, 1303 { 1304 Index: 213, 1305 Args: []types.T{types.T_uint16, types.T_bool}, 1306 ReturnTyp: types.T_bool, 1307 Fn: operator.Cast, 1308 }, 1309 { 1310 Index: 214, 1311 Args: []types.T{types.T_uint32, types.T_bool}, 1312 ReturnTyp: types.T_bool, 1313 Fn: operator.Cast, 1314 }, 1315 { 1316 Index: 215, 1317 Args: []types.T{types.T_uint64, types.T_bool}, 1318 ReturnTyp: types.T_bool, 1319 Fn: operator.Cast, 1320 }, 1321 { 1322 Index: 216, 1323 Args: []types.T{types.T_float32, types.T_bool}, 1324 ReturnTyp: types.T_bool, 1325 Fn: operator.Cast, 1326 }, 1327 { 1328 Index: 217, 1329 Args: []types.T{types.T_float64, types.T_bool}, 1330 ReturnTyp: types.T_bool, 1331 Fn: operator.Cast, 1332 }, 1333 { 1334 Index: 218, 1335 Args: []types.T{types.T_char, types.T_bool}, 1336 ReturnTyp: types.T_bool, 1337 Fn: operator.Cast, 1338 }, 1339 { 1340 Index: 219, 1341 Args: []types.T{types.T_varchar, types.T_bool}, 1342 ReturnTyp: types.T_bool, 1343 Fn: operator.Cast, 1344 }, 1345 { 1346 Index: 220, 1347 Args: []types.T{types.T_decimal64, types.T_float64}, 1348 ReturnTyp: types.T_float64, 1349 Fn: operator.Cast, 1350 }, 1351 { 1352 Index: 221, 1353 Args: []types.T{types.T_decimal128, types.T_float64}, 1354 ReturnTyp: types.T_float64, 1355 Fn: operator.Cast, 1356 }, 1357 { 1358 Index: 222, 1359 Args: []types.T{types.T_decimal64, types.T_int64}, 1360 ReturnTyp: types.T_int64, 1361 Fn: operator.Cast, 1362 }, 1363 { 1364 Index: 223, 1365 Args: []types.T{types.T_decimal128, types.T_int64}, 1366 ReturnTyp: types.T_int64, 1367 Fn: operator.Cast, 1368 }, 1369 { 1370 Index: 224, 1371 Args: []types.T{types.T_decimal64, types.T_uint64}, 1372 ReturnTyp: types.T_uint64, 1373 Fn: operator.Cast, 1374 }, 1375 { 1376 Index: 225, 1377 Args: []types.T{types.T_decimal128, types.T_uint64}, 1378 ReturnTyp: types.T_uint64, 1379 Fn: operator.Cast, 1380 }, 1381 { 1382 Index: 226, 1383 Args: []types.T{types.T_decimal128, types.T_decimal64}, 1384 ReturnTyp: types.T_decimal64, 1385 Fn: operator.Cast, 1386 }, 1387 { 1388 Index: 227, 1389 Args: []types.T{types.T_blob, types.T_int8}, 1390 ReturnTyp: types.T_int8, 1391 Fn: operator.Cast, 1392 }, 1393 1394 { 1395 Index: 228, 1396 Args: []types.T{types.T_blob, types.T_int16}, 1397 ReturnTyp: types.T_int16, 1398 Fn: operator.Cast, 1399 }, 1400 { 1401 Index: 229, 1402 Args: []types.T{types.T_blob, types.T_int32}, 1403 ReturnTyp: types.T_int32, 1404 Fn: operator.Cast, 1405 }, 1406 { 1407 Index: 230, 1408 Args: []types.T{types.T_blob, types.T_int64}, 1409 ReturnTyp: types.T_int64, 1410 Fn: operator.Cast, 1411 }, 1412 { 1413 Index: 231, 1414 Args: []types.T{types.T_blob, types.T_uint8}, 1415 ReturnTyp: types.T_uint8, 1416 Fn: operator.Cast, 1417 }, 1418 { 1419 Index: 232, 1420 Args: []types.T{types.T_blob, types.T_uint16}, 1421 ReturnTyp: types.T_uint16, 1422 Fn: operator.Cast, 1423 }, 1424 { 1425 Index: 233, 1426 Args: []types.T{types.T_blob, types.T_uint32}, 1427 ReturnTyp: types.T_uint32, 1428 Fn: operator.Cast, 1429 }, 1430 { 1431 Index: 234, 1432 Args: []types.T{types.T_blob, types.T_uint64}, 1433 ReturnTyp: types.T_uint64, 1434 Fn: operator.Cast, 1435 }, 1436 { 1437 Index: 235, 1438 Args: []types.T{types.T_blob, types.T_float32}, 1439 ReturnTyp: types.T_float32, 1440 Fn: operator.Cast, 1441 }, 1442 { 1443 Index: 236, 1444 Args: []types.T{types.T_blob, types.T_float64}, 1445 ReturnTyp: types.T_float64, 1446 Fn: operator.Cast, 1447 }, 1448 { 1449 Index: 237, 1450 Args: []types.T{types.T_int8, types.T_blob}, 1451 ReturnTyp: types.T_blob, 1452 Fn: operator.Cast, 1453 }, 1454 { 1455 Index: 238, 1456 Args: []types.T{types.T_int16, types.T_blob}, 1457 ReturnTyp: types.T_blob, 1458 Fn: operator.Cast, 1459 }, 1460 { 1461 Index: 239, 1462 Args: []types.T{types.T_int32, types.T_blob}, 1463 ReturnTyp: types.T_blob, 1464 Fn: operator.Cast, 1465 }, 1466 { 1467 Index: 240, 1468 Args: []types.T{types.T_int64, types.T_blob}, 1469 ReturnTyp: types.T_blob, 1470 Fn: operator.Cast, 1471 }, 1472 { 1473 Index: 241, 1474 Args: []types.T{types.T_uint8, types.T_blob}, 1475 ReturnTyp: types.T_blob, 1476 Fn: operator.Cast, 1477 }, 1478 { 1479 Index: 242, 1480 Args: []types.T{types.T_uint16, types.T_blob}, 1481 ReturnTyp: types.T_blob, 1482 Fn: operator.Cast, 1483 }, 1484 { 1485 Index: 243, 1486 Args: []types.T{types.T_uint32, types.T_blob}, 1487 ReturnTyp: types.T_blob, 1488 Fn: operator.Cast, 1489 }, 1490 { 1491 Index: 244, 1492 Args: []types.T{types.T_uint64, types.T_blob}, 1493 ReturnTyp: types.T_blob, 1494 Fn: operator.Cast, 1495 }, 1496 { 1497 Index: 245, 1498 Args: []types.T{types.T_float32, types.T_blob}, 1499 ReturnTyp: types.T_blob, 1500 Fn: operator.Cast, 1501 }, 1502 { 1503 Index: 246, 1504 Args: []types.T{types.T_float64, types.T_blob}, 1505 ReturnTyp: types.T_blob, 1506 Fn: operator.Cast, 1507 }, 1508 { 1509 Index: 247, 1510 Args: []types.T{types.T_varchar, types.T_blob}, 1511 ReturnTyp: types.T_blob, 1512 Fn: operator.Cast, 1513 }, 1514 { 1515 Index: 248, 1516 Args: []types.T{types.T_blob, types.T_varchar}, 1517 ReturnTyp: types.T_varchar, 1518 Fn: operator.Cast, 1519 }, 1520 { 1521 Index: 249, 1522 Args: []types.T{types.T_char, types.T_blob}, 1523 ReturnTyp: types.T_blob, 1524 Fn: operator.Cast, 1525 }, 1526 { 1527 Index: 250, 1528 Args: []types.T{types.T_blob, types.T_char}, 1529 ReturnTyp: types.T_char, 1530 Fn: operator.Cast, 1531 }, 1532 { 1533 Index: 251, 1534 Args: []types.T{types.T_blob, types.T_blob}, 1535 ReturnTyp: types.T_blob, 1536 Fn: operator.Cast, 1537 }, 1538 { 1539 Index: 252, 1540 Args: []types.T{types.T_blob, types.T_date}, 1541 ReturnTyp: types.T_date, 1542 Fn: operator.Cast, 1543 }, 1544 { 1545 Index: 253, 1546 Args: []types.T{types.T_blob, types.T_datetime}, 1547 ReturnTyp: types.T_datetime, 1548 Fn: operator.Cast, 1549 }, 1550 { 1551 Index: 254, 1552 Volatile: true, 1553 Args: []types.T{types.T_blob, types.T_timestamp}, 1554 ReturnTyp: types.T_timestamp, 1555 Fn: operator.Cast, 1556 }, 1557 { 1558 Index: 255, 1559 Args: []types.T{types.T_blob, types.T_decimal64}, 1560 ReturnTyp: types.T_decimal64, 1561 Fn: operator.Cast, 1562 }, 1563 { 1564 Index: 256, 1565 Args: []types.T{types.T_blob, types.T_decimal128}, 1566 ReturnTyp: types.T_decimal128, 1567 Fn: operator.Cast, 1568 }, 1569 { 1570 Index: 257, 1571 Volatile: true, 1572 Args: []types.T{types.T_timestamp, types.T_blob}, 1573 ReturnTyp: types.T_blob, 1574 Fn: operator.Cast, 1575 }, 1576 { 1577 Index: 258, 1578 Args: []types.T{types.T_date, types.T_blob}, 1579 ReturnTyp: types.T_blob, 1580 Fn: operator.Cast, 1581 }, 1582 { 1583 Index: 259, 1584 Args: []types.T{types.T_datetime, types.T_blob}, 1585 ReturnTyp: types.T_blob, 1586 Fn: operator.Cast, 1587 }, 1588 { 1589 Index: 260, 1590 Args: []types.T{types.T_bool, types.T_blob}, 1591 ReturnTyp: types.T_blob, 1592 Fn: operator.Cast, 1593 }, 1594 { 1595 Index: 261, 1596 Args: []types.T{types.T_decimal64, types.T_blob}, 1597 ReturnTyp: types.T_blob, 1598 Fn: operator.Cast, 1599 }, 1600 { 1601 Index: 262, 1602 Args: []types.T{types.T_decimal128, types.T_blob}, 1603 ReturnTyp: types.T_blob, 1604 Fn: operator.Cast, 1605 }, 1606 { 1607 Index: 263, 1608 Args: []types.T{types.T_blob, types.T_bool}, 1609 ReturnTyp: types.T_bool, 1610 Fn: operator.Cast, 1611 }, 1612 { 1613 Index: 264, 1614 Args: []types.T{types.T_varchar, types.T_json}, 1615 ReturnTyp: types.T_json, 1616 Fn: operator.Cast, 1617 }, 1618 { 1619 Index: 265, 1620 Args: []types.T{types.T_decimal128, types.T_int32}, 1621 ReturnTyp: types.T_json, 1622 Fn: operator.Cast, 1623 }, 1624 { 1625 Index: 266, 1626 Args: []types.T{types.T_bool, types.T_int8}, 1627 ReturnTyp: types.T_int8, 1628 Fn: operator.Cast, 1629 }, 1630 { 1631 Index: 267, 1632 Args: []types.T{types.T_bool, types.T_int16}, 1633 ReturnTyp: types.T_int16, 1634 Fn: operator.Cast, 1635 }, 1636 { 1637 Index: 268, 1638 Args: []types.T{types.T_bool, types.T_int32}, 1639 ReturnTyp: types.T_int32, 1640 Fn: operator.Cast, 1641 }, 1642 { 1643 Index: 269, 1644 Args: []types.T{types.T_bool, types.T_int64}, 1645 ReturnTyp: types.T_int64, 1646 Fn: operator.Cast, 1647 }, 1648 { 1649 Index: 270, 1650 Args: []types.T{types.T_bool, types.T_uint8}, 1651 ReturnTyp: types.T_uint8, 1652 Fn: operator.Cast, 1653 }, 1654 { 1655 Index: 271, 1656 Args: []types.T{types.T_bool, types.T_uint16}, 1657 ReturnTyp: types.T_uint16, 1658 Fn: operator.Cast, 1659 }, 1660 { 1661 Index: 272, 1662 Args: []types.T{types.T_bool, types.T_uint32}, 1663 ReturnTyp: types.T_uint32, 1664 Fn: operator.Cast, 1665 }, 1666 { 1667 Index: 273, 1668 Args: []types.T{types.T_bool, types.T_uint64}, 1669 ReturnTyp: types.T_uint64, 1670 Fn: operator.Cast, 1671 }, 1672 { 1673 Index: 274, 1674 Args: []types.T{types.T_uuid, types.T_char}, 1675 ReturnTyp: types.T_char, 1676 Fn: operator.Cast, 1677 }, 1678 { 1679 Index: 275, 1680 Args: []types.T{types.T_uuid, types.T_varchar}, 1681 ReturnTyp: types.T_varchar, 1682 Fn: operator.Cast, 1683 }, 1684 { 1685 Index: 276, 1686 Args: []types.T{types.T_char, types.T_uuid}, 1687 ReturnTyp: types.T_uuid, 1688 Fn: operator.Cast, 1689 }, 1690 { 1691 Index: 277, 1692 Args: []types.T{types.T_varchar, types.T_uuid}, 1693 ReturnTyp: types.T_uuid, 1694 Fn: operator.Cast, 1695 }, 1696 { 1697 Index: 278, 1698 Args: []types.T{types.T_text, types.T_int8}, 1699 ReturnTyp: types.T_int8, 1700 Fn: operator.Cast, 1701 }, 1702 1703 { 1704 Index: 279, 1705 Args: []types.T{types.T_text, types.T_int16}, 1706 ReturnTyp: types.T_int16, 1707 Fn: operator.Cast, 1708 }, 1709 { 1710 Index: 280, 1711 Args: []types.T{types.T_text, types.T_int32}, 1712 ReturnTyp: types.T_int32, 1713 Fn: operator.Cast, 1714 }, 1715 { 1716 Index: 281, 1717 Args: []types.T{types.T_text, types.T_int64}, 1718 ReturnTyp: types.T_int64, 1719 Fn: operator.Cast, 1720 }, 1721 { 1722 Index: 282, 1723 Args: []types.T{types.T_text, types.T_uint8}, 1724 ReturnTyp: types.T_uint8, 1725 Fn: operator.Cast, 1726 }, 1727 { 1728 Index: 283, 1729 Args: []types.T{types.T_text, types.T_uint16}, 1730 ReturnTyp: types.T_uint16, 1731 Fn: operator.Cast, 1732 }, 1733 { 1734 Index: 284, 1735 Args: []types.T{types.T_text, types.T_uint32}, 1736 ReturnTyp: types.T_uint32, 1737 Fn: operator.Cast, 1738 }, 1739 { 1740 Index: 285, 1741 Args: []types.T{types.T_text, types.T_uint64}, 1742 ReturnTyp: types.T_uint64, 1743 Fn: operator.Cast, 1744 }, 1745 { 1746 Index: 286, 1747 Args: []types.T{types.T_text, types.T_float32}, 1748 ReturnTyp: types.T_float32, 1749 Fn: operator.Cast, 1750 }, 1751 { 1752 Index: 287, 1753 Args: []types.T{types.T_text, types.T_float64}, 1754 ReturnTyp: types.T_float64, 1755 Fn: operator.Cast, 1756 }, 1757 { 1758 Index: 288, 1759 Args: []types.T{types.T_int8, types.T_text}, 1760 ReturnTyp: types.T_text, 1761 Fn: operator.Cast, 1762 }, 1763 { 1764 Index: 289, 1765 Args: []types.T{types.T_int16, types.T_text}, 1766 ReturnTyp: types.T_text, 1767 Fn: operator.Cast, 1768 }, 1769 { 1770 Index: 290, 1771 Args: []types.T{types.T_int32, types.T_text}, 1772 ReturnTyp: types.T_text, 1773 Fn: operator.Cast, 1774 }, 1775 { 1776 Index: 291, 1777 Args: []types.T{types.T_int64, types.T_text}, 1778 ReturnTyp: types.T_text, 1779 Fn: operator.Cast, 1780 }, 1781 { 1782 Index: 292, 1783 Args: []types.T{types.T_uint8, types.T_text}, 1784 ReturnTyp: types.T_text, 1785 Fn: operator.Cast, 1786 }, 1787 { 1788 Index: 293, 1789 Args: []types.T{types.T_uint16, types.T_text}, 1790 ReturnTyp: types.T_text, 1791 Fn: operator.Cast, 1792 }, 1793 { 1794 Index: 294, 1795 Args: []types.T{types.T_uint32, types.T_text}, 1796 ReturnTyp: types.T_text, 1797 Fn: operator.Cast, 1798 }, 1799 { 1800 Index: 295, 1801 Args: []types.T{types.T_uint64, types.T_text}, 1802 ReturnTyp: types.T_text, 1803 Fn: operator.Cast, 1804 }, 1805 { 1806 Index: 296, 1807 Args: []types.T{types.T_float32, types.T_text}, 1808 ReturnTyp: types.T_text, 1809 Fn: operator.Cast, 1810 }, 1811 { 1812 Index: 297, 1813 Args: []types.T{types.T_float64, types.T_text}, 1814 ReturnTyp: types.T_text, 1815 Fn: operator.Cast, 1816 }, 1817 { 1818 Index: 298, 1819 Args: []types.T{types.T_varchar, types.T_text}, 1820 ReturnTyp: types.T_text, 1821 Fn: operator.Cast, 1822 }, 1823 { 1824 Index: 299, 1825 Args: []types.T{types.T_text, types.T_varchar}, 1826 ReturnTyp: types.T_varchar, 1827 Fn: operator.Cast, 1828 }, 1829 { 1830 Index: 300, 1831 Args: []types.T{types.T_char, types.T_text}, 1832 ReturnTyp: types.T_text, 1833 Fn: operator.Cast, 1834 }, 1835 { 1836 Index: 301, 1837 Args: []types.T{types.T_text, types.T_char}, 1838 ReturnTyp: types.T_char, 1839 Fn: operator.Cast, 1840 }, 1841 { 1842 Index: 302, 1843 Args: []types.T{types.T_text, types.T_text}, 1844 ReturnTyp: types.T_text, 1845 Fn: operator.Cast, 1846 }, 1847 { 1848 Index: 303, 1849 Args: []types.T{types.T_text, types.T_date}, 1850 ReturnTyp: types.T_date, 1851 Fn: operator.Cast, 1852 }, 1853 { 1854 Index: 304, 1855 Args: []types.T{types.T_text, types.T_datetime}, 1856 ReturnTyp: types.T_datetime, 1857 Fn: operator.Cast, 1858 }, 1859 { 1860 Index: 305, 1861 Volatile: true, 1862 Args: []types.T{types.T_text, types.T_timestamp}, 1863 ReturnTyp: types.T_timestamp, 1864 Fn: operator.Cast, 1865 }, 1866 { 1867 Index: 306, 1868 Args: []types.T{types.T_text, types.T_decimal64}, 1869 ReturnTyp: types.T_decimal64, 1870 Fn: operator.Cast, 1871 }, 1872 { 1873 Index: 307, 1874 Args: []types.T{types.T_text, types.T_decimal128}, 1875 ReturnTyp: types.T_decimal128, 1876 Fn: operator.Cast, 1877 }, 1878 { 1879 Index: 308, 1880 Volatile: true, 1881 Args: []types.T{types.T_timestamp, types.T_text}, 1882 ReturnTyp: types.T_text, 1883 Fn: operator.Cast, 1884 }, 1885 { 1886 Index: 309, 1887 Args: []types.T{types.T_date, types.T_text}, 1888 ReturnTyp: types.T_text, 1889 Fn: operator.Cast, 1890 }, 1891 { 1892 Index: 310, 1893 Args: []types.T{types.T_datetime, types.T_text}, 1894 ReturnTyp: types.T_text, 1895 Fn: operator.Cast, 1896 }, 1897 { 1898 Index: 311, 1899 Args: []types.T{types.T_bool, types.T_text}, 1900 ReturnTyp: types.T_text, 1901 Fn: operator.Cast, 1902 }, 1903 { 1904 Index: 312, 1905 Args: []types.T{types.T_decimal64, types.T_text}, 1906 ReturnTyp: types.T_text, 1907 Fn: operator.Cast, 1908 }, 1909 { 1910 Index: 313, 1911 Args: []types.T{types.T_decimal128, types.T_text}, 1912 ReturnTyp: types.T_text, 1913 Fn: operator.Cast, 1914 }, 1915 { 1916 Index: 314, 1917 Args: []types.T{types.T_text, types.T_bool}, 1918 ReturnTyp: types.T_bool, 1919 Fn: operator.Cast, 1920 }, 1921 { 1922 Index: 315, 1923 Args: []types.T{types.T_text, types.T_blob}, 1924 ReturnTyp: types.T_blob, 1925 Fn: operator.Cast, 1926 }, 1927 { 1928 Index: 316, 1929 Args: []types.T{types.T_blob, types.T_text}, 1930 ReturnTyp: types.T_text, 1931 Fn: operator.Cast, 1932 }, 1933 { 1934 Index: 317, 1935 Args: []types.T{types.T_time, types.T_time}, 1936 ReturnTyp: types.T_time, 1937 Fn: operator.Cast, 1938 }, 1939 { 1940 Index: 318, 1941 Args: []types.T{types.T_date, types.T_time}, 1942 ReturnTyp: types.T_time, 1943 Fn: operator.Cast, 1944 }, 1945 { 1946 Index: 319, 1947 Args: []types.T{types.T_time, types.T_date}, 1948 ReturnTyp: types.T_date, 1949 Fn: operator.Cast, 1950 }, 1951 { 1952 Index: 320, 1953 Args: []types.T{types.T_time, types.T_datetime}, 1954 ReturnTyp: types.T_datetime, 1955 Fn: operator.Cast, 1956 }, 1957 { 1958 Index: 321, 1959 Args: []types.T{types.T_datetime, types.T_time}, 1960 ReturnTyp: types.T_time, 1961 Fn: operator.Cast, 1962 }, 1963 { 1964 Index: 322, 1965 Args: []types.T{types.T_char, types.T_time}, 1966 ReturnTyp: types.T_time, 1967 Fn: operator.Cast, 1968 }, 1969 { 1970 Index: 323, 1971 Args: []types.T{types.T_varchar, types.T_time}, 1972 ReturnTyp: types.T_time, 1973 Fn: operator.Cast, 1974 }, 1975 { 1976 Index: 324, 1977 Args: []types.T{types.T_text, types.T_time}, 1978 ReturnTyp: types.T_time, 1979 Fn: operator.Cast, 1980 }, 1981 { 1982 Index: 325, 1983 Args: []types.T{types.T_blob, types.T_time}, 1984 ReturnTyp: types.T_time, 1985 Fn: operator.Cast, 1986 }, 1987 { 1988 Index: 326, 1989 Args: []types.T{types.T_time, types.T_char}, 1990 ReturnTyp: types.T_char, 1991 Fn: operator.Cast, 1992 }, 1993 { 1994 Index: 327, 1995 Args: []types.T{types.T_time, types.T_varchar}, 1996 ReturnTyp: types.T_varchar, 1997 Fn: operator.Cast, 1998 }, 1999 { 2000 Index: 328, 2001 Args: []types.T{types.T_time, types.T_text}, 2002 ReturnTyp: types.T_text, 2003 Fn: operator.Cast, 2004 }, 2005 { 2006 Index: 329, 2007 Args: []types.T{types.T_time, types.T_blob}, 2008 ReturnTyp: types.T_blob, 2009 Fn: operator.Cast, 2010 }, 2011 { 2012 Index: 330, 2013 Args: []types.T{types.T_time, types.T_int64}, 2014 ReturnTyp: types.T_int64, 2015 Fn: operator.Cast, 2016 }, 2017 { 2018 Index: 331, 2019 Args: []types.T{types.T_time, types.T_decimal64}, 2020 ReturnTyp: types.T_decimal64, 2021 Fn: operator.Cast, 2022 }, 2023 { 2024 Index: 332, 2025 Args: []types.T{types.T_time, types.T_decimal128}, 2026 ReturnTyp: types.T_decimal128, 2027 Fn: operator.Cast, 2028 }, 2029 { 2030 Index: 333, 2031 Args: []types.T{types.T_int64, types.T_time}, 2032 ReturnTyp: types.T_time, 2033 Fn: operator.Cast, 2034 }, 2035 { 2036 Index: 334, 2037 Args: []types.T{types.T_decimal64, types.T_time}, 2038 ReturnTyp: types.T_time, 2039 Fn: operator.Cast, 2040 }, 2041 { 2042 Index: 335, 2043 Args: []types.T{types.T_decimal128, types.T_time}, 2044 ReturnTyp: types.T_time, 2045 Fn: operator.Cast, 2046 }, 2047 { 2048 Index: 336, 2049 Args: []types.T{types.T_json, types.T_char}, 2050 ReturnTyp: types.T_varchar, 2051 Fn: operator.Cast, 2052 Volatile: false, 2053 }, 2054 { 2055 Index: 337, 2056 Args: []types.T{types.T_json, types.T_varchar}, 2057 ReturnTyp: types.T_varchar, 2058 Fn: operator.Cast, 2059 Volatile: false, 2060 }, 2061 { 2062 Index: 338, 2063 Args: []types.T{types.T_json, types.T_text}, 2064 ReturnTyp: types.T_text, 2065 Fn: operator.Cast, 2066 Volatile: false, 2067 }, 2068 }, 2069 },