aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
* Move type inlay hint truncation to language serverEmil Lauridsen2019-11-198-22/+95
| | | | | | | | | | | | This commit implements a general truncation framework for HirFormatter that keeps track of how much has been output so far. This information can then be used to perform truncation inside the language server, instead of relying on the client. Initial support is implemented for truncating types hints using the maxInlayHintLength server config option. The existing solution in the VSCode extension has been removed in favor of letting the server truncate type hints.
* Merge #2309bors[bot]2019-11-181-7/+29
|\ | | | | | | | | | | | | | | 2309: Goto type def through macros r=matklad a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * Goto type def through macroskjeremy2019-11-181-7/+29
| |
* | Merge #2307bors[bot]2019-11-181-42/+62
|\ \ | | | | | | | | | | | | | | | | | | | | | 2307: Support hover through macro r=matklad a=kjeremy Allows hover to work through macros like `match_ast!`. Co-authored-by: kjeremy <[email protected]>
| * | Fix testkjeremy2019-11-181-10/+6
| | |
| * | Support hover through macrokjeremy2019-11-181-42/+66
| |/
* / Remove the custom impl of AttrsOwner for ImplItemDJMcNab2019-11-183-12/+4
|/ | | | | | The default impl should have the same behaviour, and it can be generated by codegen. See also `ModuleItem` and `NominalDef`
* Use Source<&ast::Name> in classify_namekjeremy2019-11-184-25/+22
|
* Collapse TokenMap and RevTokenMapAleksey Kladov2019-11-184-119/+105
|
* Token-based reverse-mappingAleksey Kladov2019-11-183-38/+52
|
* More sourcesAleksey Kladov2019-11-182-41/+32
|
* Add ra_ide_api::expandAleksey Kladov2019-11-184-55/+69
| | | | | This module should handle all tricky bits with mapping macro-expanded HirFileId to original files the user actually can see in the editor
* More SourceAleksey Kladov2019-11-181-19/+18
|
* Publicise GenericParamsAleksey Kladov2019-11-181-3/+3
| | | | See https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Fwg-rls-2.2E0/topic/Exposing.20GenericParam.2Ename
* More correct expansion mappingAleksey Kladov2019-11-174-44/+74
| | | | We can't really map arbitrary ranges, we only can map tokens
* Make shift an implementation detail of mbeAleksey Kladov2019-11-173-47/+84
|
* Merge #2287bors[bot]2019-11-1723-6/+65
|\ | | | | | | | | | | | | | | 2287: Disable doctests r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Disable doctestsAleksey Kladov2019-11-1723-6/+65
| |
* | Don't store shift redundantlyAleksey Kladov2019-11-171-6/+5
|/
* Add bound checkEdwin Cheng2019-11-171-2/+2
|
* Add ast for plain and raw string literalsAleksey Kladov2019-11-163-57/+98
|
* Better factoring of macro expansion machinery in goto defAleksey Kladov2019-11-161-11/+20
|
* Goto definition works inside macrosAleksey Kladov2019-11-164-11/+77
|
* Merge #2276bors[bot]2019-11-165-41/+41
|\ | | | | | | | | | | | | | | 2276: Source-ify name_definition r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Source-ify name_definitionAleksey Kladov2019-11-161-20/+19
| |
| * Sourcify classify_name_refAleksey Kladov2019-11-165-21/+22
| |
* | Upgrade Chalk againFlorian Diebold2019-11-164-27/+37
| |
* | Fix handling of the binders in dyn/impl TraitFlorian Diebold2019-11-164-45/+116
| | | | | | | | | | | | | | | | | | We need to be more careful now when substituting bound variables (previously, we didn't have anything that used bound variables except Chalk, so it was not a problem). This is obviously quite ad-hoc; Chalk has more infrastructure for handling this in a principled way, which we maybe should adopt.
* | Use Chalk's dyn/impl trait supportFlorian Diebold2019-11-163-13/+16
| |
* | Upgrade ChalkFlorian Diebold2019-11-165-113/+213
|/ | | | | Associated type values (in impls) are now a separate entity in Chalk, so we have to intern separate IDs for them.
* Merge #2271bors[bot]2019-11-1510-54/+51
|\ | | | | | | | | | | | | | | 2271: Force passing Source when creating a SourceAnalyzer r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Force passing Source when creating a SourceAnalyzerAleksey Kladov2019-11-1510-53/+51
| |
| * Prepare SourceAnalyzer for macrosAleksey Kladov2019-11-151-1/+0
| |
* | Merge #2268bors[bot]2019-11-153-5/+47
|\ \ | |/ |/| | | | | | | | | | | 2268: Handle ast::MacroCall in classify_name and impl FromSource for MacroDef r=matklad a=kjeremy Fixes #2260 Co-authored-by: kjeremy <[email protected]>
| * Add a test that uses classify_namekjeremy2019-11-151-0/+15
| |
| * Handle ast::MacroCall in classify_name and impl FromSource for MacroDefkjeremy2019-11-152-5/+32
| | | | | | | | Fixes #2260
* | Reduce some duplicationAleksey Kladov2019-11-155-8/+12
| |
* | Remove wrong cloneAleksey Kladov2019-11-151-2/+2
| |
* | Prepare SourceAnalyzer for macrosAleksey Kladov2019-11-152-9/+14
| |
* | Sourcify some moreAleksey Kladov2019-11-152-13/+23
|/
* Merge #2266bors[bot]2019-11-156-21/+22
|\ | | | | | | | | | | | | | | 2266: Sourcify some things r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * Sourcify some thingsAleksey Kladov2019-11-156-21/+22
| | | | | | | | | | If we want to support macros properly, we need to get rid of those FileIds everywhere...
* | Merge #2252bors[bot]2019-11-1511-31/+207
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2252: Fix parsing of "postfix" range expressions. r=matklad a=goffrie Right now they are handled in `postfix_dot_expr`, but that doesn't allow it to correctly handle precedence. Integrate it more tightly with the Pratt parser instead. Also includes a drive-by fix for parsing `match .. {}`. Fixes #2242. Co-authored-by: Geoffry Song <[email protected]>
| * | Attempt to implement typed accessorsGeoffry Song2019-11-154-8/+50
| | |
| * | Move inclusive range check to validationGeoffry Song2019-11-155-11/+33
| | |
| * | Fix parsing of "postfix" range expressions.Geoffry Song2019-11-157-30/+142
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Right now they are handled in `postfix_dot_expr`, but that doesn't allow it to correctly handle precedence. Integrate it more tightly with the Pratt parser instead. Also includes a drive-by fix for parsing `match .. {}`. Fixes #2242.
* | | Fix add-new assistAleksey Kladov2019-11-151-5/+64
| |/ |/|
* | Remove old impls infrastructureAleksey Kladov2019-11-1515-358/+181
| |
* | Store impls in CrateDefMapAleksey Kladov2019-11-153-4/+39
| |
* | Add ImplIdAleksey Kladov2019-11-152-9/+22
| |