Commit 8a390e5
authored
fix(dotnet): allow down-casting to parent interface type (#983)
Cast controls were too strict and prevented the framework from
successfully down-casting an object reference to a parent interface of
it's declared type; causing a cast error.
The new code looks for class compatibility using the standard .NET
primitives and successfully performs the requested cast.
Fixes #9821 parent c2de100 commit 8a390e5
22 files changed
Lines changed: 1004 additions & 23 deletions
File tree
- packages
- jsii-calc
- lib
- test
- jsii-dotnet-runtime-test/test/Amazon.JSII.Runtime.IntegrationTests
- jsii-dotnet-runtime/src/Amazon.JSII.Runtime/Deputy
- jsii-java-runtime-test/project/src/test/java/software/amazon/jsii/testing
- jsii-pacmak/test/expected.jsii-calc
- dotnet/Amazon.JSII.Tests.CalculatorPackageId
- Amazon/JSII/Tests/CalculatorNamespace
- java/src/main/java/software/amazon/jsii/tests/calculator
- python/src/jsii_calc
- jsii-python-runtime/tests
- jsii-reflect/test/__snapshots__
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2236 | 2236 | | |
2237 | 2237 | | |
2238 | 2238 | | |
| 2239 | + | |
| 2240 | + | |
| 2241 | + | |
| 2242 | + | |
| 2243 | + | |
| 2244 | + | |
| 2245 | + | |
| 2246 | + | |
| 2247 | + | |
| 2248 | + | |
| 2249 | + | |
| 2250 | + | |
| 2251 | + | |
| 2252 | + | |
| 2253 | + | |
| 2254 | + | |
| 2255 | + | |
| 2256 | + | |
| 2257 | + | |
| 2258 | + | |
| 2259 | + | |
| 2260 | + | |
| 2261 | + | |
| 2262 | + | |
| 2263 | + | |
| 2264 | + | |
| 2265 | + | |
| 2266 | + | |
| 2267 | + | |
| 2268 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1678 | 1678 | | |
1679 | 1679 | | |
1680 | 1680 | | |
| 1681 | + | |
| 1682 | + | |
| 1683 | + | |
| 1684 | + | |
| 1685 | + | |
| 1686 | + | |
| 1687 | + | |
| 1688 | + | |
| 1689 | + | |
| 1690 | + | |
| 1691 | + | |
| 1692 | + | |
| 1693 | + | |
| 1694 | + | |
| 1695 | + | |
| 1696 | + | |
| 1697 | + | |
| 1698 | + | |
| 1699 | + | |
| 1700 | + | |
| 1701 | + | |
| 1702 | + | |
| 1703 | + | |
| 1704 | + | |
| 1705 | + | |
| 1706 | + | |
| 1707 | + | |
| 1708 | + | |
| 1709 | + | |
| 1710 | + | |
| 1711 | + | |
| 1712 | + | |
| 1713 | + | |
| 1714 | + | |
1681 | 1715 | | |
1682 | 1716 | | |
1683 | 1717 | | |
| |||
2825 | 2859 | | |
2826 | 2860 | | |
2827 | 2861 | | |
| 2862 | + | |
| 2863 | + | |
| 2864 | + | |
| 2865 | + | |
| 2866 | + | |
| 2867 | + | |
| 2868 | + | |
| 2869 | + | |
| 2870 | + | |
| 2871 | + | |
| 2872 | + | |
| 2873 | + | |
| 2874 | + | |
| 2875 | + | |
| 2876 | + | |
| 2877 | + | |
| 2878 | + | |
| 2879 | + | |
| 2880 | + | |
| 2881 | + | |
| 2882 | + | |
| 2883 | + | |
| 2884 | + | |
| 2885 | + | |
| 2886 | + | |
| 2887 | + | |
| 2888 | + | |
| 2889 | + | |
| 2890 | + | |
| 2891 | + | |
| 2892 | + | |
| 2893 | + | |
| 2894 | + | |
| 2895 | + | |
| 2896 | + | |
| 2897 | + | |
| 2898 | + | |
| 2899 | + | |
| 2900 | + | |
| 2901 | + | |
| 2902 | + | |
| 2903 | + | |
| 2904 | + | |
| 2905 | + | |
| 2906 | + | |
| 2907 | + | |
| 2908 | + | |
| 2909 | + | |
| 2910 | + | |
| 2911 | + | |
| 2912 | + | |
| 2913 | + | |
| 2914 | + | |
| 2915 | + | |
| 2916 | + | |
| 2917 | + | |
2828 | 2918 | | |
2829 | 2919 | | |
2830 | 2920 | | |
| |||
7649 | 7739 | | |
7650 | 7740 | | |
7651 | 7741 | | |
| 7742 | + | |
| 7743 | + | |
| 7744 | + | |
| 7745 | + | |
| 7746 | + | |
| 7747 | + | |
| 7748 | + | |
| 7749 | + | |
| 7750 | + | |
| 7751 | + | |
| 7752 | + | |
| 7753 | + | |
| 7754 | + | |
| 7755 | + | |
| 7756 | + | |
| 7757 | + | |
| 7758 | + | |
| 7759 | + | |
| 7760 | + | |
| 7761 | + | |
| 7762 | + | |
| 7763 | + | |
| 7764 | + | |
| 7765 | + | |
| 7766 | + | |
| 7767 | + | |
| 7768 | + | |
| 7769 | + | |
| 7770 | + | |
| 7771 | + | |
| 7772 | + | |
| 7773 | + | |
7652 | 7774 | | |
7653 | 7775 | | |
7654 | 7776 | | |
| |||
11006 | 11128 | | |
11007 | 11129 | | |
11008 | 11130 | | |
11009 | | - | |
| 11131 | + | |
11010 | 11132 | | |
Lines changed: 4 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
22 | 26 | | |
Lines changed: 7 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1258 | 1258 | | |
1259 | 1259 | | |
1260 | 1260 | | |
| 1261 | + | |
| 1262 | + | |
| 1263 | + | |
| 1264 | + | |
| 1265 | + | |
| 1266 | + | |
| 1267 | + | |
1261 | 1268 | | |
1262 | 1269 | | |
Lines changed: 39 additions & 20 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
455 | 455 | | |
456 | 456 | | |
457 | 457 | | |
458 | | - | |
| 458 | + | |
459 | 459 | | |
460 | 460 | | |
461 | 461 | | |
462 | 462 | | |
463 | | - | |
| 463 | + | |
464 | 464 | | |
465 | 465 | | |
466 | 466 | | |
| |||
498 | 498 | | |
499 | 499 | | |
500 | 500 | | |
501 | | - | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
502 | 504 | | |
503 | 505 | | |
504 | 506 | | |
505 | 507 | | |
506 | 508 | | |
507 | | - | |
508 | | - | |
| 509 | + | |
509 | 510 | | |
510 | 511 | | |
511 | 512 | | |
| |||
520 | 521 | | |
521 | 522 | | |
522 | 523 | | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
523 | 542 | | |
524 | 543 | | |
525 | 544 | | |
526 | 545 | | |
527 | 546 | | |
528 | | - | |
| 547 | + | |
529 | 548 | | |
530 | 549 | | |
531 | 550 | | |
532 | 551 | | |
533 | | - | |
| 552 | + | |
534 | 553 | | |
535 | 554 | | |
536 | 555 | | |
537 | 556 | | |
538 | | - | |
| 557 | + | |
539 | 558 | | |
540 | 559 | | |
541 | 560 | | |
542 | 561 | | |
543 | | - | |
| 562 | + | |
544 | 563 | | |
545 | 564 | | |
546 | 565 | | |
547 | 566 | | |
548 | | - | |
| 567 | + | |
549 | 568 | | |
550 | 569 | | |
551 | 570 | | |
552 | 571 | | |
553 | | - | |
| 572 | + | |
554 | 573 | | |
555 | 574 | | |
556 | 575 | | |
557 | 576 | | |
558 | | - | |
| 577 | + | |
559 | 578 | | |
560 | 579 | | |
561 | 580 | | |
562 | 581 | | |
563 | | - | |
| 582 | + | |
564 | 583 | | |
565 | 584 | | |
566 | 585 | | |
567 | 586 | | |
568 | | - | |
| 587 | + | |
569 | 588 | | |
570 | 589 | | |
571 | 590 | | |
572 | 591 | | |
573 | | - | |
| 592 | + | |
574 | 593 | | |
575 | 594 | | |
576 | 595 | | |
577 | 596 | | |
578 | | - | |
| 597 | + | |
579 | 598 | | |
580 | 599 | | |
581 | 600 | | |
582 | 601 | | |
583 | | - | |
| 602 | + | |
584 | 603 | | |
585 | 604 | | |
586 | 605 | | |
587 | 606 | | |
588 | | - | |
| 607 | + | |
589 | 608 | | |
590 | 609 | | |
591 | 610 | | |
592 | 611 | | |
593 | | - | |
| 612 | + | |
594 | 613 | | |
595 | 614 | | |
596 | 615 | | |
597 | 616 | | |
598 | | - | |
| 617 | + | |
599 | 618 | | |
600 | 619 | | |
601 | 620 | | |
| |||
Lines changed: 6 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1397 | 1397 | | |
1398 | 1398 | | |
1399 | 1399 | | |
| 1400 | + | |
| 1401 | + | |
| 1402 | + | |
| 1403 | + | |
| 1404 | + | |
| 1405 | + | |
1400 | 1406 | | |
1401 | 1407 | | |
1402 | 1408 | | |
| |||
0 commit comments