Commit 4fd25c0
authored
* Fix using `downcast` with `anyhow::Error`
Previously when converting `wasmtime::Error` into `anyhow::Error` it
ended up breaking the `downcast` method. This is because
`anyhow::Error::from_boxed` looks like it does not implement the
`downcast` method which is how all errors were previously converted to
`anyhow::Error`. This commit adds a new vtable method for specifically
converting to `anyhow::Error` which enables using the typed construction
methods of `anyhow` which preserves `downcast`-ness.
* Add a test showcasing anyhow-source behavior
1 parent f6c69b0 commit 4fd25c0
File tree
4 files changed
+104
-1
lines changed- crates/core
- src/error
- tests
4 files changed
+104
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
303 | 303 | | |
304 | 304 | | |
305 | 305 | | |
| 306 | + | |
| 307 | + | |
| 308 | + | |
| 309 | + | |
| 310 | + | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
306 | 314 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
64 | 64 | | |
65 | 65 | | |
66 | 66 | | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
67 | 71 | | |
68 | 72 | | |
69 | 73 | | |
| |||
542 | 546 | | |
543 | 547 | | |
544 | 548 | | |
545 | | - | |
| 549 | + | |
546 | 550 | | |
547 | 551 | | |
548 | 552 | | |
| |||
1241 | 1245 | | |
1242 | 1246 | | |
1243 | 1247 | | |
| 1248 | + | |
| 1249 | + | |
| 1250 | + | |
| 1251 | + | |
| 1252 | + | |
1244 | 1253 | | |
1245 | 1254 | | |
1246 | 1255 | | |
| |||
1319 | 1328 | | |
1320 | 1329 | | |
1321 | 1330 | | |
| 1331 | + | |
| 1332 | + | |
| 1333 | + | |
| 1334 | + | |
| 1335 | + | |
1322 | 1336 | | |
1323 | 1337 | | |
1324 | 1338 | | |
| |||
1374 | 1388 | | |
1375 | 1389 | | |
1376 | 1390 | | |
| 1391 | + | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
| 1395 | + | |
1377 | 1396 | | |
1378 | 1397 | | |
1379 | 1398 | | |
| |||
1430 | 1449 | | |
1431 | 1450 | | |
1432 | 1451 | | |
| 1452 | + | |
| 1453 | + | |
| 1454 | + | |
| 1455 | + | |
| 1456 | + | |
1433 | 1457 | | |
1434 | 1458 | | |
1435 | 1459 | | |
| |||
1754 | 1778 | | |
1755 | 1779 | | |
1756 | 1780 | | |
| 1781 | + | |
| 1782 | + | |
| 1783 | + | |
| 1784 | + | |
| 1785 | + | |
| 1786 | + | |
| 1787 | + | |
| 1788 | + | |
| 1789 | + | |
| 1790 | + | |
| 1791 | + | |
| 1792 | + | |
| 1793 | + | |
| 1794 | + | |
| 1795 | + | |
| 1796 | + | |
| 1797 | + | |
1757 | 1798 | | |
1758 | 1799 | | |
1759 | 1800 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
48 | 52 | | |
49 | 53 | | |
50 | 54 | | |
| |||
63 | 67 | | |
64 | 68 | | |
65 | 69 | | |
| 70 | + | |
| 71 | + | |
66 | 72 | | |
67 | 73 | | |
68 | 74 | | |
| |||
174 | 180 | | |
175 | 181 | | |
176 | 182 | | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
905 | 905 | | |
906 | 906 | | |
907 | 907 | | |
| 908 | + | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
| 928 | + | |
| 929 | + | |
| 930 | + | |
| 931 | + | |
| 932 | + | |
| 933 | + | |
| 934 | + | |
| 935 | + | |
| 936 | + | |
| 937 | + | |
| 938 | + | |
| 939 | + | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
| 943 | + | |
| 944 | + | |
0 commit comments