Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | make AstId untyped | Aleksey Kladov | 2019-05-13 | 1 | -1/+1 |
| | |||||
* | Handle auto traits & negative impls | Florian Diebold | 2019-05-11 | 1 | -1/+7 |
| | | | | | We don't pass field types to Chalk yet though, so the auto trait inference won't be correct. | ||||
* | Extract generic_params method to a HasGenericParams trait | Florian Diebold | 2019-04-14 | 1 | -7/+4 |
| | |||||
* | Add Container enum to handle both kinds of container (impl/trait) | Florian Diebold | 2019-04-14 | 1 | -1/+1 |
| | |||||
* | More trait infrastructure | Florian Diebold | 2019-04-14 | 1 | -1/+2 |
| | | | | | | | | | | - make it possible to get parent trait from method - add 'obligation' machinery for checking that a type implements a trait (and inferring facts about type variables from that) - handle type parameters of traits (to a certain degree) - improve the hacky implements check to cover enough cases to exercise the handling of traits with type parameters - basic canonicalization (will probably also be done by Chalk) | ||||
* | Get substs for trait refs in impl blocks | Florian Diebold | 2019-04-14 | 1 | -14/+4 |
| | |||||
* | make resolver private | Aleksey Kladov | 2019-04-13 | 1 | -1/+1 |
| | |||||
* | rename persistent hir database -> def database | Aleksey Kladov | 2019-03-23 | 1 | -18/+11 |
| | |||||
* | replace todo with fixme | Aleksey Kladov | 2019-03-23 | 1 | -1/+1 |
| | |||||
* | remove lower module | Aleksey Kladov | 2019-03-17 | 1 | -2/+3 |
| | |||||
* | rename type to type_alias in the AST as well | Aleksey Kladov | 2019-02-25 | 1 | -1/+1 |
| | |||||
* | Rename Type => TypeAlias | Florian Diebold | 2019-02-24 | 1 | -10/+6 |
| | |||||
* | Resolve impl generic params | Florian Diebold | 2019-02-16 | 1 | -1/+3 |
| | |||||
* | Add generic params to impl blocks | Florian Diebold | 2019-02-16 | 1 | -6/+10 |
| | |||||
* | Turn ImplBlock into a copy type just containing IDs | Florian Diebold | 2019-02-16 | 1 | -20/+23 |
| | | | | | | | This makes it more like the other code model types. Also make Module::definition_source/declaration_source return HirFileIds, to make them more like the other source functions. | ||||
* | reformat the world | Aleksey Kladov | 2019-02-08 | 1 | -17/+6 |
| | |||||
* | Some clippy cleanups | kjeremy | 2019-02-06 | 1 | -1/+1 |
| | |||||
* | Make the Resolution variants tuple variants | Florian Diebold | 2019-02-01 | 1 | -4/+3 |
| | |||||
* | Use new Resolver API in type inference | Florian Diebold | 2019-02-01 | 1 | -5/+22 |
| | |||||
* | Implement methods to build a resolver | Florian Diebold | 2019-02-01 | 1 | -16/+29 |
| | |||||
* | split HirDatabase api | csmoe | 2019-02-01 | 1 | -6/+14 |
| | |||||
* | Go to Implementation for structs and enums | Jeremy Kolb | 2019-01-30 | 1 | -6/+51 |
| | |||||
* | kill DefKindc | Aleksey Kladov | 2019-01-24 | 1 | -32/+12 |
| | |||||
* | remove boilerplate | Aleksey Kladov | 2019-01-24 | 1 | -1/+3 |
| | |||||
* | remove DefKind::Function | Aleksey Kladov | 2019-01-24 | 1 | -4/+4 |
| | |||||
* | Functions use new id scheme | Aleksey Kladov | 2019-01-24 | 1 | -16/+15 |
| | |||||
* | Change ids strategy | Aleksey Kladov | 2019-01-24 | 1 | -15/+10 |
| | | | | | | | this is a part of larghish hir refactoring which aims to * replace per-source-root module trees with per crate trees * switch from a monotyped DedId to type-specific ids | ||||
* | encapsulate hir locations | Aleksey Kladov | 2019-01-24 | 1 | -3/+3 |
| | |||||
* | remove Cancelable from ids | Aleksey Kladov | 2019-01-15 | 1 | -7/+5 |
| | |||||
* | remove Cancelable from Module API | Aleksey Kladov | 2019-01-15 | 1 | -1/+1 |
| | |||||
* | remove Cancelable from source binders | Aleksey Kladov | 2019-01-15 | 1 | -1/+1 |
| | |||||
* | Small improvements from review comments | Florian Diebold | 2019-01-12 | 1 | -4/+4 |
| | |||||
* | Implement basic inherent method resolution | Florian Diebold | 2019-01-12 | 1 | -8/+28 |
| | |||||
* | Fix typos in ARCHITECTURE.md and a number of crates | Marcus Klaas de Vries | 2019-01-09 | 1 | -6/+6 |
| | | | | specifically: gen_lsp_server, ra_arena, ra_cli, ra_db, ra_hir | ||||
* | Fix typo defenition -> definition | Marcus Klaas de Vries | 2019-01-08 | 1 | -1/+1 |
| | |||||
* | migrate ra_hir to rowan 2.0 | Aleksey Kladov | 2019-01-08 | 1 | -11/+11 |
| | |||||
* | flatten module structure | Aleksey Kladov | 2019-01-06 | 1 | -1/+1 |
| | |||||
* | split module source into decl/defin | Aleksey Kladov | 2019-01-06 | 1 | -7/+7 |
| | |||||
* | kill old module | Aleksey Kladov | 2019-01-06 | 1 | -11/+13 |
| | |||||
* | Do impl collection per module, not per crate | Florian Diebold | 2019-01-04 | 1 | -27/+25 |
| | |||||
* | Rename ImplBlock::target -> target_type, and add target_trait already | Florian Diebold | 2019-01-04 | 1 | -5/+15 |
| | |||||
* | Add HIR for impl blocks | Florian Diebold | 2019-01-04 | 1 | -0/+172 |
Since we need to be able to go from def to containing impl block, as well as the other direction, and to find all impls for a certain type, a design similar to the one for modules, where we collect all impls for the whole crate and keep them in an arena, seemed fitting. The ImplBlock type, which provides the public interface, then consists only of an Arc to the arena containing all impls, and the index into it. |