aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Merge #1904bors[bot]2019-09-2515-30/+22
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 1904: Remove redundant `clone()` r=matklad a=sinkuu Co-authored-by: Shotaro Yamada <[email protected]>
| * | Remove redundant clone()Shotaro Yamada2019-09-2514-29/+21
| | |
| * | Avoid intermediate allocationShotaro Yamada2019-09-251-1/+1
|/ /
* | Merge #1845bors[bot]2019-09-247-72/+385
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 1845: Closure types r=flodiebold a=flodiebold This adds types for closures and makes them implement the `Fn` traits (we don't currently care or try to infer `Fn` vs. `FnMut` vs. `FnOnce`; this would require move analysis, I think). This requires some changes in Chalk; one is that we need to know the self type when asked for impls, so we can synthesize `Fn` trait impls for closures; but also there's a problem that prevents us from normalizing the closure output type correctly that I _think_ will be fixed on the Chalk side (basically, we ask too early and try to solve `Normalize(<?1 as FnOnce<(u32,)>>::Output => ?0)` -- note the variable in the self type -- and instead of an ambiguous answer, we get back that it can't be solved, so we don't try again. Niko mentioned he's making all goals where the self type is unconstrained flounder, which I think would mean this would be ambiguous). Co-authored-by: Florian Diebold <[email protected]>
| * | Implement the call argument checking order hack for closuresFlorian Diebold2019-09-243-12/+108
| | |
| * | Make the closure_1 test workFlorian Diebold2019-09-243-27/+40
| | |
| * | Make closures impl closure traitsFlorian Diebold2019-09-244-41/+188
| | |
| * | Give closures typesFlorian Diebold2019-09-245-21/+78
|/ /
* | Merge #1903bors[bot]2019-09-242-8/+11
|\ \ | | | | | | | | | | | | | | | | | | | | | 1903: Upgrade Chalk again r=flodiebold a=flodiebold Co-authored-by: Florian Diebold <[email protected]>
| * | Upgrade Chalk againFlorian Diebold2019-09-242-8/+11
|/ /
* | Merge #1902bors[bot]2019-09-244-39/+25
|\ \ | |/ |/| | | | | | | | | | | 1902: simplify r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * simplifyAleksey Kladov2019-09-244-39/+25
|/
* Merge #1898bors[bot]2019-09-233-3/+3
|\ | | | | | | | | | | | | | | | | 1898: Drive by lints r=kjeremy a=kjeremy Co-authored-by: kjeremy <[email protected]> Co-authored-by: Jeremy Kolb <[email protected]>
| * Revert SelfJeremy Kolb2019-09-231-1/+1
| |
| * Drive by lintskjeremy2019-09-234-4/+4
| |
* | Merge #1899bors[bot]2019-09-232-9/+11
|\ \ | |/ |/| | | | | | | | | | | 1899: Upgrade Chalk r=flodiebold a=flodiebold Co-authored-by: Florian Diebold <[email protected]>
| * Upgrade ChalkFlorian Diebold2019-09-232-9/+11
|/
* Merge #1897bors[bot]2019-09-232-172/+199
|\ | | | | | | | | | | | | | | 1897: Split off path expression inference code into submodule r=matklad a=flodiebold Co-authored-by: Florian Diebold <[email protected]>
| * Split off path expression inference code into submoduleFlorian Diebold2019-09-232-172/+199
|/
* Merge #1895bors[bot]2019-09-227-23/+173
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1895: Handle associated type shorthand (`T::Item`) (Second attempt) r=flodiebold a=flodiebold This is only allowed for generic parameters (including `Self` in traits), and special care needs to be taken to not run into cycles while resolving it, because we use the where clauses of the generic parameter to find candidates for the trait containing the associated type, but the where clauses may themselves contain instances of short-hand associated types. In some cases this is even fine, e.g. we might have `T: Trait<U::Item>, U: Iterator`. If there is a cycle, we'll currently panic, which isn't great, but better than overflowing the stack... Co-authored-by: Florian Diebold <[email protected]>
| * Handle projection types from ChalkFlorian Diebold2019-09-221-1/+5
| |
| * Handle associated type shorthand (`T::Item`)Florian Diebold2019-09-227-392/+538
| | | | | | | | | | | | | | | | | | | | | | | | This is only allowed for generic parameters (including `Self` in traits), and special care needs to be taken to not run into cycles while resolving it, because we use the where clauses of the generic parameter to find candidates for the trait containing the associated type, but the where clauses may themselves contain instances of short-hand associated types. In some cases this is even fine, e.g. we might have `T: Trait<U::Item>, U: Iterator`. If there is a cycle, we'll currently panic, which isn't great, but better than overflowing the stack...
* | Merge #1896bors[bot]2019-09-223-3/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | 1896: remove obsolete TOOD r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | remove obsolete TOODAleksey Kladov2019-09-221-1/+0
| | | | | | | | | | | | I have no idea what I've meant to fix here :-(
| * | test for TOODs as wellAleksey Kladov2019-09-222-371/+371
| | |
| * | minor cleanupAleksey Kladov2019-09-221-1/+8
| |/
* | Merge #1885bors[bot]2019-09-221-370/+370
|\ \ | |/ |/| | | | | | | | | | | 1885: Suspicious line endings r=matklad a=kjeremy I'm skeptical of this change but cargo format keeps bugging me about it. Co-authored-by: kjeremy <[email protected]>
| * Suspicious line endingskjeremy2019-09-201-370/+370
| |
* | Merge #1891bors[bot]2019-09-211-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | 1891: Support open source version of vscode as well r=matklad a=jens1o This patch adds support for https://github.com/VSCodium/vscodium - an truly open source version of vscode. Co-authored-by: Jens Hausdorf <[email protected]>
| * | Support open source version of vscode as wellJens Hausdorf2019-09-211-1/+1
|/ /
* | Merge #1890bors[bot]2019-09-203-0/+65
|\ \ | | | | | | | | | | | | | | | | | | | | | 1890: Support loop as argument r=matklad a=kjeremy Fixes #1839 Co-authored-by: kjeremy <[email protected]>
| * | Support loop as argumentkjeremy2019-09-203-0/+65
|/ /
* | Merge #1888bors[bot]2019-09-206-12/+76
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 1888: allow compiling ra_ide_api on wasm r=matklad a=matklad bors r+ this is from #1746 Co-authored-by: Aleksey Kladov <[email protected]>
| * | allow compiling ra_ide_api on wasmAleksey Kladov2019-09-206-12/+76
| | |
* | | Merge #1886bors[bot]2019-09-201-2/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1886: Simplify match arm r=matklad a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * | | Simplify match armkjeremy2019-09-201-2/+1
|/ / /
* | | Merge #1884bors[bot]2019-09-203-2/+91
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 1884: Add indexing to record_field_pat r=matklad a=kjeremy Fixes #1870 Co-authored-by: kjeremy <[email protected]>
| * | Apply suggestionkjeremy2019-09-201-3/+2
| | |
| * | Add indexing to record_field_patkjeremy2019-09-203-2/+92
| |/
* | Merge #1883bors[bot]2019-09-203-2/+40
|\ \ | | | | | | | | | | | | | | | | | | | | | 1883: Fix path attribute causing false "unresolved module" error for submodules r=matklad a=gfreezy fixed #1880 Co-authored-by: gfreezy <[email protected]>
| * | fix module attr pathgfreezy2019-09-203-2/+40
| | |
* | | Merge #1882bors[bot]2019-09-203-7/+64
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 1882: fix infinite loop in the parser r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * | fix infinite loop in the parserAleksey Kladov2019-09-203-7/+64
|/ / | | | | | | closes #1866
* | Merge #1881bors[bot]2019-09-203-1/+70
|\ \ | |/ |/| | | | | | | | | | | 1881: don't confuse macro with != r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * don't confuse macro with !=Aleksey Kladov2019-09-203-1/+70
| | | | | | | | closes #1871
* | Merge #1850bors[bot]2019-09-203-0/+431
|\ \ | | | | | | | | | | | | | | | | | | | | | 1850: feat(assists): raw string <-> usual string manipulation r=matklad a=Geobert Fixes #1730 Co-authored-by: Geobert Quach <[email protected]>
| * | feat(assists): Apply commentsGeobert Quach2019-09-191-100/+59
| | |
| * | feat(assists): Rename `escape_quote` to `escape_double_quote`Geobert Quach2019-09-191-3/+3
| | |
| * | feature(assists): Fix regressionGeobert Quach2019-09-191-2/+2
| | |
| * | feat(assists): manage `"` when removing hash and make_usual_stringGeobert Quach2019-09-191-5/+90
| | |