Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Next gen IDs for functions | Aleksey Kladov | 2019-11-20 | 4 | -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_def | Aleksey Kladov | 2019-11-20 | 5 | -114/+17 |
| | |||||
* | Rename with_ast -> with_value | Aleksey Kladov | 2019-11-20 | 1 | -6/+6 |
| | |||||
* | Move Generics to hir_def | Aleksey Kladov | 2019-11-20 | 4 | -170/+60 |
| | |||||
* | Allow non-path default type parameters | Aleksey Kladov | 2019-11-20 | 3 | -10/+29 |
| | |||||
* | Rename Source::ast -> Source::value | Aleksey Kladov | 2019-11-20 | 13 | -89/+91 |
| | |||||
* | Merge pull request #2297 from kiljacken/master | Aleksey Kladov | 2019-11-20 | 2 | -4/+59 |
|\ | | | | | Add fancy truncation of type hints. | ||||
| * | Move type inlay hint truncation to language server | Emil Lauridsen | 2019-11-19 | 2 | -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 reordering | Edwin Cheng | 2019-11-19 | 1 | -6/+1 |
| | | |||||
* | | Rebase | Edwin Cheng | 2019-11-19 | 1 | -0/+5 |
|/ | |||||
* | Publicise GenericParams | Aleksey Kladov | 2019-11-18 | 1 | -3/+3 |
| | | | | See https://rust-lang.zulipchat.com/#narrow/stream/185405-t-compiler.2Fwg-rls-2.2E0/topic/Exposing.20GenericParam.2Ename | ||||
* | More correct expansion mapping | Aleksey Kladov | 2019-11-17 | 1 | -4/+9 |
| | | | | We can't really map arbitrary ranges, we only can map tokens | ||||
* | Disable doctests | Aleksey Kladov | 2019-11-17 | 1 | -2/+2 |
| | |||||
* | Goto definition works inside macros | Aleksey Kladov | 2019-11-16 | 1 | -1/+22 |
| | |||||
* | Upgrade Chalk again | Florian Diebold | 2019-11-16 | 3 | -24/+34 |
| | |||||
* | Fix handling of the binders in dyn/impl Trait | Florian Diebold | 2019-11-16 | 4 | -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 support | Florian Diebold | 2019-11-16 | 3 | -13/+16 |
| | |||||
* | Upgrade Chalk | Florian Diebold | 2019-11-16 | 4 | -110/+210 |
| | | | | | Associated type values (in impls) are now a separate entity in Chalk, so we have to intern separate IDs for them. | ||||
* | Merge #2271 | bors[bot] | 2019-11-15 | 2 | -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 SourceAnalyzer | Aleksey Kladov | 2019-11-15 | 2 | -38/+29 |
| | | |||||
| * | Prepare SourceAnalyzer for macros | Aleksey Kladov | 2019-11-15 | 1 | -1/+0 |
| | | |||||
* | | Merge #2268 | bors[bot] | 2019-11-15 | 1 | -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 MacroDef | kjeremy | 2019-11-15 | 1 | -4/+19 |
| | | | | | | | | Fixes #2260 | ||||
* | | Prepare SourceAnalyzer for macros | Aleksey Kladov | 2019-11-15 | 1 | -7/+6 |
| | | |||||
* | | Sourcify some more | Aleksey Kladov | 2019-11-15 | 1 | -13/+21 |
|/ | |||||
* | Sourcify some things | Aleksey Kladov | 2019-11-15 | 2 | -11/+9 |
| | | | | | If we want to support macros properly, we need to get rid of those FileIds everywhere... | ||||
* | Remove old impls infrastructure | Aleksey Kladov | 2019-11-15 | 10 | -345/+84 |
| | |||||
* | Flatten expr module | Aleksey Kladov | 2019-11-15 | 3 | -141/+130 |
| | |||||
* | Move scope tests to hir_def | Aleksey Kladov | 2019-11-15 | 2 | -208/+5 |
| | |||||
* | Reduce visibility | Aleksey Kladov | 2019-11-15 | 1 | -3/+3 |
| | |||||
* | Auto-upgrade some insta snapshots | Aleksey Kladov | 2019-11-15 | 1 | -49/+5 |
| | |||||
* | Reduce visibility | Aleksey Kladov | 2019-11-15 | 1 | -3/+3 |
| | |||||
* | Use Local more | Aleksey Kladov | 2019-11-15 | 3 | -16/+11 |
| | |||||
* | Privatize modules | Aleksey Kladov | 2019-11-15 | 1 | -1/+1 |
| | |||||
* | Refactor Module::from_source to properly descend from root file | Aleksey Kladov | 2019-11-15 | 2 | -33/+37 |
| | |||||
* | Move body queries to hir_def | Aleksey Kladov | 2019-11-14 | 8 | -71/+48 |
| | |||||
* | Move scopes to hir_def | Aleksey Kladov | 2019-11-14 | 5 | -368/+202 |
| | |||||
* | Handle macro-generated expressions slightly less wrong | Aleksey Kladov | 2019-11-14 | 3 | -15/+38 |
| | |||||
* | Rename MacroResolver -> Expander | Aleksey Kladov | 2019-11-14 | 1 | -2/+2 |
| | |||||
* | Move current file to MacroResolver | Aleksey Kladov | 2019-11-14 | 1 | -2/+2 |
| | |||||
* | Normalize data | Aleksey Kladov | 2019-11-14 | 1 | -14/+9 |
| | | | | No need to store derivable info | ||||
* | Reduce duplication between uncertain floats & ints | Aleksey Kladov | 2019-11-13 | 7 | -70/+55 |
| | |||||
* | Move expression lowering to hir_def | Aleksey Kladov | 2019-11-12 | 5 | -730/+37 |
| | |||||
* | Remove owner from Body | Aleksey Kladov | 2019-11-12 | 5 | -28/+19 |
| | |||||
* | Move definition of exprs to hir_def | Aleksey Kladov | 2019-11-12 | 5 | -502/+56 |
| | |||||
* | Minor refactoring | Aleksey Kladov | 2019-11-12 | 1 | -3/+3 |
| | |||||
* | Minor cleanup | Aleksey Kladov | 2019-11-12 | 5 | -45/+42 |
| | |||||
* | Introduce hir::GenericParam | Aleksey Kladov | 2019-11-11 | 3 | -7/+16 |
| | | | | Unlike existing hir::GenericParams, this is a global ID. | ||||
* | Don't reexport generics from HIR | Aleksey Kladov | 2019-11-11 | 5 | -12/+13 |
| | |||||
* | Merge #2200 | bors[bot] | 2019-11-11 | 5 | -19/+90 |
|\ | | | | | | | | | | | | | | | | | | | 2200: Add variables to HIR r=matklad a=matklad Introduce a `hir::Variable`, which should cover locals, parameters and `self`. Unlike `PatId`, variable knows it's owner so it is self-contained, and should be more convenient to use from `ra_ide_api`. The goal here is to hide more details about `Body` from hir, which should make it easier to move `Body` into `hir_def`. I don't think that `ra_ide_api` intrracts with bodies directly at the moment anyway, but the glue layer is based basically on `ast::BindPat`, which seems pretty brittle. Co-authored-by: Aleksey Kladov <[email protected]> |