aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_hir/src
Commit message (Collapse)AuthorAgeFilesLines
* Don't duplicate ContainerId typeAleksey Kladov2019-11-201-8/+8
|
* Switch type aliases to new sourcesAleksey Kladov2019-11-203-54/+88
|
* Fix expand macroEdwin Cheng2019-11-201-3/+10
|
* Next gen IDs for functionsAleksey Kladov2019-11-204-19/+76
| | | | | | | | | | | | | | | | | The current system with AstIds has two primaraly drawbacks: * It is possible to manufacture IDs out of thin air. For example, it's possible to create IDs for items which are not considered in CrateDefMap due to cfg. Or it is possible to mixup structs and unions, because they share ID space. * Getting the ID of a parent requires a secondary index. Instead, the plan is to pursue the more traditional approach, where each items stores the id of the parent declaration. This makes `FromSource` more awkward, but also more correct: now, to get from an AST to HIR, we first do this recursively for the parent item, and the just search the children of the parent for the matching def
* Move traits to hir_defAleksey Kladov2019-11-205-114/+17
|
* Rename with_ast -> with_valueAleksey Kladov2019-11-201-6/+6
|
* Move Generics to hir_defAleksey Kladov2019-11-204-170/+60
|
* Allow non-path default type parametersAleksey Kladov2019-11-203-10/+29
|
* Rename Source::ast -> Source::valueAleksey Kladov2019-11-2013-89/+91
|
* Merge pull request #2297 from kiljacken/masterAleksey Kladov2019-11-202-4/+59
|\ | | | | Add fancy truncation of type hints.
| * Move type inlay hint truncation to language serverEmil Lauridsen2019-11-192-4/+59
| | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Change to use Expansion::file_id and reorderingEdwin Cheng2019-11-191-6/+1
| |
* | RebaseEdwin Cheng2019-11-191-0/+5
|/
* 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-171-4/+9
| | | | We can't really map arbitrary ranges, we only can map tokens
* Disable doctestsAleksey Kladov2019-11-171-2/+2
|
* Goto definition works inside macrosAleksey Kladov2019-11-161-1/+22
|
* Upgrade Chalk againFlorian Diebold2019-11-163-24/+34
|
* 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-164-110/+210
| | | | | 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-152-39/+29
|\ | | | | | | | | | | | | | | 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-152-38/+29
| |
| * Prepare SourceAnalyzer for macrosAleksey Kladov2019-11-151-1/+0
| |
* | Merge #2268bors[bot]2019-11-151-4/+19
|\ \ | |/ |/| | | | | | | | | | | 2268: Handle ast::MacroCall in classify_name and impl FromSource for MacroDef r=matklad a=kjeremy Fixes #2260 Co-authored-by: kjeremy <[email protected]>
| * Handle ast::MacroCall in classify_name and impl FromSource for MacroDefkjeremy2019-11-151-4/+19
| | | | | | | | Fixes #2260
* | Prepare SourceAnalyzer for macrosAleksey Kladov2019-11-151-7/+6
| |
* | Sourcify some moreAleksey Kladov2019-11-151-13/+21
|/
* Sourcify some thingsAleksey Kladov2019-11-152-11/+9
| | | | | If we want to support macros properly, we need to get rid of those FileIds everywhere...
* Remove old impls infrastructureAleksey Kladov2019-11-1510-345/+84
|
* Flatten expr moduleAleksey Kladov2019-11-153-141/+130
|
* Move scope tests to hir_defAleksey Kladov2019-11-152-208/+5
|
* Reduce visibilityAleksey Kladov2019-11-151-3/+3
|
* Auto-upgrade some insta snapshotsAleksey Kladov2019-11-151-49/+5
|
* Reduce visibilityAleksey Kladov2019-11-151-3/+3
|
* Use Local moreAleksey Kladov2019-11-153-16/+11
|
* Privatize modulesAleksey Kladov2019-11-151-1/+1
|
* Refactor Module::from_source to properly descend from root fileAleksey Kladov2019-11-152-33/+37
|
* Move body queries to hir_defAleksey Kladov2019-11-148-71/+48
|
* Move scopes to hir_defAleksey Kladov2019-11-145-368/+202
|
* Handle macro-generated expressions slightly less wrongAleksey Kladov2019-11-143-15/+38
|
* Rename MacroResolver -> ExpanderAleksey Kladov2019-11-141-2/+2
|
* Move current file to MacroResolverAleksey Kladov2019-11-141-2/+2
|
* Normalize dataAleksey Kladov2019-11-141-14/+9
| | | | No need to store derivable info
* Reduce duplication between uncertain floats & intsAleksey Kladov2019-11-137-70/+55
|
* Move expression lowering to hir_defAleksey Kladov2019-11-125-730/+37
|
* Remove owner from BodyAleksey Kladov2019-11-125-28/+19
|
* Move definition of exprs to hir_defAleksey Kladov2019-11-125-502/+56
|
* Minor refactoringAleksey Kladov2019-11-121-3/+3
|
* Minor cleanupAleksey Kladov2019-11-125-45/+42
|