aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Rework find_super_trait_path to protect against cyclesFlorian Diebold2020-02-225-23/+74
|
* Fix shift_bound_varsFlorian Diebold2020-02-221-3/+3
| | | | It should only shift free vars (maybe the name isn't the best...)
* Fix wrong handling of bare `dyn Trait` exposed by canonicalizer fixFlorian Diebold2020-02-221-1/+3
| | | | | The self type in the `dyn Trait` trait ref should always be ^0, but we didn't put that in there in the bare case.
* Add &dyn Trait -> &dyn SuperTrait coercion, and fix &T -> &dyn TraitFlorian Diebold2020-02-224-44/+132
|
* Fix handling of binders in canonicalizationFlorian Diebold2020-02-221-64/+35
| | | | I'm looking forward to getting rid of this in favor of Chalk's implementation.
* Implement dyn Trait unsizing as wellFlorian Diebold2020-02-225-9/+136
|
* Implement unsize coercion using proper trait solvingFlorian Diebold2020-02-225-187/+170
|
* Merge #3262bors[bot]2020-02-225-6/+85
|\ | | | | | | | | | | | | | | | | | | | | | | | | 3262: Fix handling of const patterns r=matklad a=flodiebold E.g. in `match x { None => ... }`, `None` is a path pattern (resolving to the option variant), not a binding. To determine this, we need to try to resolve the name during lowering. This isn't too hard since we already need to resolve names for macro expansion anyway (though maybe a bit hacky). Fixes #1618. Co-authored-by: Florian Diebold <[email protected]>
| * Fix handling of const patternsFlorian Diebold2020-02-215-6/+85
| | | | | | | | | | | | | | | | | | E.g. in `match x { None => ... }`, `None` is a path pattern (resolving to the option variant), not a binding. To determine this, we need to try to resolve the name during lowering. This isn't too hard since we already need to resolve names for macro expansion anyway (though maybe a bit hacky). Fixes #1618.
* | remove unneeded `collect`adamrk2020-02-211-11/+7
| |
* | use Vec::extend instead of Vec::push in loopAdam Bratschi-Kaye2020-02-211-3/+1
| | | | | | | | Co-Authored-By: Laurențiu Nicola <[email protected]>
* | rename module referencesadamrk2020-02-211-0/+112
|/
* Normalize associated types in types coming from ChalkFlorian Diebold2020-02-212-1/+46
| | | | Fixes #3232.
* Remove unused placeholderEdwin Cheng2020-02-211-1/+1
|
* Improve server version infoEdwin Cheng2020-02-211-1/+29
|
* Better errorseAleksey Kladov2020-02-201-2/+2
|
* Fix off by one in onEnterLaurențiu Nicola2020-02-201-1/+14
|
* Merge #3215bors[bot]2020-02-192-6/+34
|\ | | | | | | | | | | | | | | | | | | 3215: Exclude methods from non-parameter types introduced by generic constraints r=flodiebold a=lnicola Fixes #3184. r? @flodiebold Co-authored-by: Laurențiu Nicola <[email protected]>
| * Exclude methods from non-parameter types introduced by generic constraintsLaurențiu Nicola2020-02-192-6/+34
| |
* | Fill missing fields of enum variantsAleksey Kladov2020-02-192-7/+40
| |
* | Merge pull request #3239 from matklad/opt-backtraceAleksey Kladov2020-02-192-1/+2
|\ \ | | | | | | Make backtrace optional
| * | Make backtrace optionalAleksey Kladov2020-02-192-1/+2
| | |
* | | Bump lsp-typeskjeremy2020-02-191-0/+1
|/ /
* | Merge #3236bors[bot]2020-02-198-119/+91
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3236: Merge NameDefinition and NameKind r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Merge NameDefinition and NameKindAleksey Kladov2020-02-198-119/+91
| | |
* | | Merge #3235bors[bot]2020-02-193-53/+55
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3235: Derive visibility as well r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Derive visibility as wellAleksey Kladov2020-02-193-53/+55
| | |
* | | Merge #3234bors[bot]2020-02-194-60/+84
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3234: Don't store deriveable Module info in NameDefinition r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Don't store deriveable Module info in NameDefinitionAleksey Kladov2020-02-194-60/+84
| | |
* | | Extend selection handles commas in tuple patsAleksey Kladov2020-02-191-0/+27
|/ /
* | Merge #3231bors[bot]2020-02-193-0/+51
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3231: Add `remove_mut` assist r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | Add `remove_mut` assistAleksey Kladov2020-02-193-0/+51
| | |
* | | Merge #3228bors[bot]2020-02-191-9/+17
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3228: Use proper range for hover on macro arguments r=matklad a=edwin0cheng This PR use `original_range` to remap the range of found syntax node in `hover` and thus it should return the proper text range now. fixed #3000 fixed #3135 Co-authored-by: Edwin Cheng <[email protected]>
| * | Use proper range for hover on macro argumentsEdwin Cheng2020-02-191-9/+17
| |/
* | CleanupShotaro Yamada2020-02-193-7/+3
| |
* | Fix a crash with non-ascii whitespace in doc-commentsShotaro Yamada2020-02-192-2/+19
|/
* Cleanup importsAleksey Kladov2020-02-181-22/+18
|
* Minor simplificationAleksey Kladov2020-02-181-6/+3
|
* Update versionsKirill Bulatov2020-02-1819-80/+85
|
* More manual clippy fixesKirill Bulatov2020-02-1831-154/+137
|
* Run cargo +nightly fix --clippy -Z unstable-optionsKirill Bulatov2020-02-1848-149/+132
|
* Merge #3218bors[bot]2020-02-183-12/+13
|\ | | | | | | | | | | | | | | 3218: Cut some deps r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Remove unicase dependencyAleksey Kladov2020-02-182-8/+13
| |
| * Drop extra depsAleksey Kladov2020-02-181-4/+0
| |
* | Remove dat FIXMEVeetaha2020-02-181-1/+0
| |
* | Merge #3026bors[bot]2020-02-1856-650/+452
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 3026: ra_syntax: reshape SyntaxError for the sake of removing redundancy r=matklad a=Veetaha Followup of #2911, also puts some crosses to the todo list of #223. **AHTUNG!** A big part of the diff of this PR are test data files changes. Simplified `SyntaxError` that was `SyntaxError { kind: { /* big enum */ }, location: Location }` to `SyntaxError(String, TextRange)`. I am not sure whether the tuple struct here is best fit, I am inclined to add names to the fields, because I already provide getters `SyntaxError::message()`, `SyntaxError::range()`. I also removed `Location` altogether ... This is currently WIP, because the following is not done: - [ ] ~~Add tests to `test_data` dir for unescape errors *// I don't know where to put these errors in particular, because they are out of the scope of the lexer and parser. However, I have an idea in mind that we move all validators we have right now to parsing stage, but this is up to discussion...*~~ **[UPD]** I came to a conclusion that tree validation logic, which unescape errors are a part of, should be rethought of, we currently have no tests and no place to put tests for tree validations. So I'd like to extract potential redesign (maybe move of tree validation to ra_parser) and adding tests for this into a separate task. Co-authored-by: Veetaha <[email protected]> Co-authored-by: Veetaha <[email protected]>
| * ra_syntax: fix reparsing merging errors, also now reparse_token() reports errorsVeetaha2020-02-181-7/+50
| |
| * ra_syntax: migrate test data to 0-length text-range of SyntaxError when ↵Veetaha2020-02-1746-242/+242
| | | | | | | | constructed from TextUnit
| * ra_syntax: remove message() method and use only Display trait in SyntaxError ↵Veetaha2020-02-172-4/+1
| | | | | | | | as per matklad
| * ra_syntax: change module-level documentation for syntax_error to "see X" as ↵Veetaha2020-02-171-1/+1
| | | | | | | | per matklad