aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* More trait infrastructureFlorian Diebold2019-04-1411-51/+333
| | | | | | | | | | - 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 blocksFlorian Diebold2019-04-146-44/+85
|
* Merge #1143bors[bot]2019-04-136-24/+17
|\ | | | | | | | | | | | | | | 1143: replace usages of `algo::generate` with `iter::successors` from std r=matklad a=Robbepop Implements #1136 Co-authored-by: Robin Freyler <[email protected]>
| * replace usages of `algo::generate` with `iter::successors` from stdRobin Freyler2019-04-136-24/+17
|/
* Merge #1129bors[bot]2019-04-1328-636/+568
|\ | | | | | | | | | | | | | | 1129: introduce SourceAnalyzer API for ides r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * cleanupsAleksey Kladov2019-04-132-13/+12
| |
| * slight encapsulationAleksey Kladov2019-04-132-9/+13
| |
| * move ScopeEntryWithSyntaxAleksey Kladov2019-04-134-37/+34
| |
| * drop obsolete fixmeAleksey Kladov2019-04-132-5/+4
| |
| * make expr scope stuff privateAleksey Kladov2019-04-131-11/+9
| |
| * make resolver privateAleksey Kladov2019-04-136-26/+23
| |
| * hide resolverAleksey Kladov2019-04-134-9/+17
| |
| * fold ScopeWithSyntax into SourceAnalyzerAleksey Kladov2019-04-137-193/+159
| |
| * make stuff privateAleksey Kladov2019-04-131-3/+3
| |
| * obsolete fixmAleksey Kladov2019-04-131-1/+0
| |
| * make privateAleksey Kladov2019-04-131-1/+1
| |
| * only def-with-body remainsAleksey Kladov2019-04-131-13/+3
| |
| * generalizeAleksey Kladov2019-04-131-15/+7
| |
| * simplifyAleksey Kladov2019-04-131-10/+5
| |
| * simplifyAleksey Kladov2019-04-131-7/+1
| |
| * make privateAleksey Kladov2019-04-131-1/+1
| |
| * hide some scopesAleksey Kladov2019-04-134-23/+28
| |
| * simplifyAleksey Kladov2019-04-122-17/+12
| |
| * make stuff privateAleksey Kladov2019-04-121-6/+2
| |
| * simplifyAleksey Kladov2019-04-121-54/+22
| |
| * simplify testsAleksey Kladov2019-04-123-36/+23
| |
| * use really correct resolver for expressionsAleksey Kladov2019-04-129-13/+27
| |
| * fix typoAleksey Kladov2019-04-113-6/+6
| |
| * add todoAleksey Kladov2019-04-111-0/+1
| |
| * use correct resolver for expressionsAleksey Kladov2019-04-111-3/+1
| |
| * remove resolver from CompletonContextAleksey Kladov2019-04-115-31/+9
| |
| * simplifyAleksey Kladov2019-04-111-5/+3
| |
| * generalize SourceAnalyzer to handle all defs with bodiesAleksey Kladov2019-04-113-11/+51
| |
| * minimize the APIAleksey Kladov2019-04-112-23/+11
| |
| * renameAleksey Kladov2019-04-1110-18/+18
| |
| * reduce visibilityAleksey Kladov2019-04-111-3/+3
| |
| * Make call info to use real name resolutionAleksey Kladov2019-04-114-26/+33
| |
| * introduce SourceAnalyzerAleksey Kladov2019-04-1115-187/+206
| |
* | Merge #1140bors[bot]2019-04-121-38/+38
|\ \ | |/ |/| | | | | | | | | | | 1140: :arrow_up: vfs r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * :arrow_up: vfsAleksey Kladov2019-04-121-38/+38
|/
* Merge #1133bors[bot]2019-04-111-6/+6
|\ | | | | | | | | | | | | | | 1133: fix typo r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * fix typoAleksey Kladov2019-04-111-6/+6
|/
* Merge #1131bors[bot]2019-04-1010-180/+136
|\ | | | | | | | | | | | | | | 1131: Use inline snapshots in complete_dot r=matklad a=vipentti Relates to #1127 Co-authored-by: Ville Penttinen <[email protected]>
| * Use inline snapshots in complete_dotVille Penttinen2019-04-1010-180/+136
| |
* | Merge #1130bors[bot]2019-04-104-72/+58
|\ \ | |/ |/| | | | | | | | | | | 1130: Use inline snapshots in complete_fn_param r=matklad a=vipentti Relates to #1127 Co-authored-by: Ville Penttinen <[email protected]>
| * Use inline snapshots in complete_fn_paramVille Penttinen2019-04-104-72/+58
|/
* Merge #1128bors[bot]2019-04-1012-74/+85
|\ | | | | | | | | | | | | | | 1128: A touch of type-safety r=matklad a=matklad Note that we intentionally don't use `Either` from crates.io: I like A/B naming more then left/rigth, I feel like we might need Either3 with C at some point, and I'd love the ability to write inherent impls Co-authored-by: Aleksey Kladov <[email protected]>
| * type-safer source-map for bindingsAleksey Kladov2019-04-107-30/+45
| |
| * use either for usesAleksey Kladov2019-04-106-44/+40
|/
* Merge #1126bors[bot]2019-04-0910-219/+110
|\ | | | | | | | | | | | | | | 1126: Swithc to native salsa interning r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>