Commit 142bd59
root
Update on "[JIT] add support for overloading functions"
This is a series of PRs that will allow us to support adding [padding to conv](#22484) and also reduce the friction of adding method overloads that was brought up in #23266.
Support for overloaded functions following the specification in [PEP 484](https://www.python.org/dev/peps/pep-0484/#function-method-overloading).
The usage is:
```
@torch.jit.overload
def add(x: int, y: int) -> int: ...
@torch.jit.overload
def add(x: float, y: float) -> float: ...
def add:
return x + y
```
Follow up PRs:
- Add same API for methods
- A couple of cleanups for functions:
- don't require default params specified on the overload as well
- potentially error if invocation could be matched to multiple overloads. now it just chooses the first one, mypy does the same thing currently
Differential Revision: [D16694863](https://our.internmc.facebook.com/intern/diff/D16694863)1 parent d5ea0a7 commit 142bd59
File tree
4 files changed
+47
-51
lines changed- test
- torch
- csrc/jit/script
- jit
4 files changed
+47
-51
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12837 | 12837 | | |
12838 | 12838 | | |
12839 | 12839 | | |
12840 | | - | |
| 12840 | + | |
12841 | 12841 | | |
12842 | 12842 | | |
12843 | 12843 | | |
12844 | 12844 | | |
12845 | | - | |
| 12845 | + | |
12846 | 12846 | | |
12847 | 12847 | | |
12848 | 12848 | | |
| |||
12856 | 12856 | | |
12857 | 12857 | | |
12858 | 12858 | | |
12859 | | - | |
12860 | | - | |
| 12859 | + | |
| 12860 | + | |
12861 | 12861 | | |
12862 | 12862 | | |
12863 | 12863 | | |
12864 | 12864 | | |
12865 | 12865 | | |
12866 | 12866 | | |
12867 | | - | |
| 12867 | + | |
12868 | 12868 | | |
12869 | 12869 | | |
12870 | 12870 | | |
12871 | 12871 | | |
12872 | | - | |
| 12872 | + | |
12873 | 12873 | | |
12874 | 12874 | | |
12875 | 12875 | | |
| |||
12890 | 12890 | | |
12891 | 12891 | | |
12892 | 12892 | | |
12893 | | - | |
12894 | | - | |
| 12893 | + | |
12895 | 12894 | | |
12896 | 12895 | | |
12897 | 12896 | | |
12898 | 12897 | | |
12899 | 12898 | | |
12900 | | - | |
| 12899 | + | |
12901 | 12900 | | |
12902 | 12901 | | |
12903 | 12902 | | |
12904 | 12903 | | |
12905 | | - | |
| 12904 | + | |
12906 | 12905 | | |
12907 | 12906 | | |
12908 | 12907 | | |
| |||
12918 | 12917 | | |
12919 | 12918 | | |
12920 | 12919 | | |
12921 | | - | |
| 12920 | + | |
12922 | 12921 | | |
12923 | 12922 | | |
12924 | 12923 | | |
12925 | 12924 | | |
12926 | | - | |
| 12925 | + | |
12927 | 12926 | | |
12928 | 12927 | | |
12929 | 12928 | | |
12930 | 12929 | | |
12931 | 12930 | | |
12932 | 12931 | | |
12933 | | - | |
| 12932 | + | |
| 12933 | + | |
| 12934 | + | |
| 12935 | + | |
12934 | 12936 | | |
12935 | 12937 | | |
12936 | 12938 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
178 | 178 | | |
179 | 179 | | |
180 | 180 | | |
| 181 | + | |
181 | 182 | | |
182 | 183 | | |
183 | 184 | | |
| |||
233 | 234 | | |
234 | 235 | | |
235 | 236 | | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
| 245 | + | |
| 246 | + | |
| 247 | + | |
| 248 | + | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
236 | 258 | | |
237 | 259 | | |
238 | 260 | | |
| |||
705 | 727 | | |
706 | 728 | | |
707 | 729 | | |
708 | | - | |
709 | | - | |
710 | | - | |
711 | | - | |
712 | | - | |
713 | | - | |
714 | | - | |
715 | | - | |
716 | | - | |
717 | | - | |
718 | | - | |
719 | | - | |
720 | | - | |
721 | | - | |
| 730 | + | |
722 | 731 | | |
723 | 732 | | |
724 | 733 | | |
| |||
728 | 737 | | |
729 | 738 | | |
730 | 739 | | |
731 | | - | |
732 | 740 | | |
733 | 741 | | |
734 | | - | |
735 | | - | |
736 | | - | |
737 | | - | |
738 | | - | |
739 | | - | |
740 | | - | |
741 | | - | |
742 | | - | |
743 | | - | |
744 | | - | |
745 | | - | |
746 | | - | |
747 | | - | |
748 | | - | |
749 | | - | |
| 742 | + | |
750 | 743 | | |
751 | 744 | | |
752 | 745 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
573 | 573 | | |
574 | 574 | | |
575 | 575 | | |
576 | | - | |
| 576 | + | |
| 577 | + | |
577 | 578 | | |
578 | 579 | | |
579 | 580 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1154 | 1154 | | |
1155 | 1155 | | |
1156 | 1156 | | |
1157 | | - | |
| 1157 | + | |
1158 | 1158 | | |
1159 | 1159 | | |
1160 | 1160 | | |
| |||
2091 | 2091 | | |
2092 | 2092 | | |
2093 | 2093 | | |
2094 | | - | |
| 2094 | + | |
2095 | 2095 | | |
2096 | 2096 | | |
2097 | 2097 | | |
| |||
2104 | 2104 | | |
2105 | 2105 | | |
2106 | 2106 | | |
2107 | | - | |
| 2107 | + | |
2108 | 2108 | | |
2109 | 2109 | | |
2110 | 2110 | | |
2111 | 2111 | | |
2112 | 2112 | | |
2113 | 2113 | | |
2114 | | - | |
| 2114 | + | |
2115 | 2115 | | |
2116 | 2116 | | |
2117 | 2117 | | |
| |||
2130 | 2130 | | |
2131 | 2131 | | |
2132 | 2132 | | |
2133 | | - | |
| 2133 | + | |
2134 | 2134 | | |
2135 | 2135 | | |
2136 | 2136 | | |
2137 | 2137 | | |
2138 | 2138 | | |
2139 | 2139 | | |
2140 | 2140 | | |
2141 | | - | |
| 2141 | + | |
2142 | 2142 | | |
2143 | 2143 | | |
2144 | 2144 | | |
| |||
0 commit comments