Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Add HIR for where clauses & ignore impls with where clauses in trait resolution | Florian Diebold | 2019-04-21 | 3 | -5/+63 |
| | | | | | This prevents any `impl<T> Trait for T where ...` from being treated as a blanket impl while we don't handle where clauses yet. | ||||
* | Merge #1175 | bors[bot] | 2019-04-21 | 2 | -6/+39 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | 1175: Fix bugs and add error log about macro expansion r=matklad a=edwin0cheng This PR fixed / add following things: * Add a fused count which stop recursion of macro expansion in name resolution. * Add some logs when macro expansion fails * Add `$crate` meta variable support in mbe, which create a `$crate` ident token in token tree. * Fixed matching a `$REPEAT` pattern inside a subtree, e.g. `(fn $name:ident {$($i:ident)*} ) => {...}` * Remove composite-able punct token in syntax node to token conversion. Co-authored-by: Edwin Cheng <[email protected]> | ||||
| * | Fix bugs | Edwin Cheng | 2019-04-20 | 2 | -6/+39 |
| | | |||||
* | | Add a simple test for str method completion | Florian Diebold | 2019-04-20 | 1 | -0/+22 |
| | | |||||
* | | lang_item_lookup is now a salsa query. | Marco Groppo | 2019-04-19 | 3 | -32/+34 |
| | | |||||
* | | New krate() method in Resolver. | Marco Groppo | 2019-04-19 | 4 | -54/+44 |
| | | | | | | | | Renamed Impl to ImplBlock. | ||||
* | | Initial support for lang items. | Marco Groppo | 2019-04-19 | 7 | -30/+175 |
|/ | |||||
* | Refactoring | Edwin Cheng | 2019-04-17 | 1 | -51/+46 |
| | |||||
* | Simpliy code | Edwin Cheng | 2019-04-17 | 1 | -60/+32 |
| | |||||
* | Bug fix and add more comments | Edwin Cheng | 2019-04-17 | 1 | -22/+60 |
| | |||||
* | Fix 1099 | Edwin Cheng | 2019-04-17 | 2 | -5/+109 |
| | |||||
* | Refactor method candidate generation a bit | Florian Diebold | 2019-04-14 | 3 | -54/+149 |
| | | | | | | This fixes the order in which candidates are chosen a bit (not completely though, as the ignored test demonstrates), and makes autoderef work with trait methods. As a side effect, this also makes completion of trait methods work :) | ||||
* | Extract generic_params method to a HasGenericParams trait | Florian Diebold | 2019-04-14 | 7 | -37/+33 |
| | |||||
* | Add Container enum to handle both kinds of container (impl/trait) | Florian Diebold | 2019-04-14 | 4 | -17/+58 |
| | |||||
* | Make callable signature handling a bit nicer | Florian Diebold | 2019-04-14 | 2 | -47/+36 |
| | |||||
* | Some cleanup | Florian Diebold | 2019-04-14 | 3 | -98/+111 |
| | |||||
* | More trait infrastructure | Florian Diebold | 2019-04-14 | 11 | -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 blocks | Florian Diebold | 2019-04-14 | 5 | -43/+84 |
| | |||||
* | replace usages of `algo::generate` with `iter::successors` from std | Robin Freyler | 2019-04-13 | 1 | -2/+2 |
| | |||||
* | cleanups | Aleksey Kladov | 2019-04-13 | 2 | -13/+12 |
| | |||||
* | slight encapsulation | Aleksey Kladov | 2019-04-13 | 2 | -9/+13 |
| | |||||
* | move ScopeEntryWithSyntax | Aleksey Kladov | 2019-04-13 | 4 | -37/+34 |
| | |||||
* | drop obsolete fixme | Aleksey Kladov | 2019-04-13 | 2 | -5/+4 |
| | |||||
* | make expr scope stuff private | Aleksey Kladov | 2019-04-13 | 1 | -11/+9 |
| | |||||
* | make resolver private | Aleksey Kladov | 2019-04-13 | 6 | -26/+23 |
| | |||||
* | hide resolver | Aleksey Kladov | 2019-04-13 | 1 | -6/+14 |
| | |||||
* | fold ScopeWithSyntax into SourceAnalyzer | Aleksey Kladov | 2019-04-13 | 5 | -191/+157 |
| | |||||
* | make stuff private | Aleksey Kladov | 2019-04-13 | 1 | -3/+3 |
| | |||||
* | make private | Aleksey Kladov | 2019-04-13 | 1 | -1/+1 |
| | |||||
* | only def-with-body remains | Aleksey Kladov | 2019-04-13 | 1 | -13/+3 |
| | |||||
* | generalize | Aleksey Kladov | 2019-04-13 | 1 | -15/+7 |
| | |||||
* | simplify | Aleksey Kladov | 2019-04-13 | 1 | -10/+5 |
| | |||||
* | simplify | Aleksey Kladov | 2019-04-13 | 1 | -7/+1 |
| | |||||
* | make private | Aleksey Kladov | 2019-04-13 | 1 | -1/+1 |
| | |||||
* | hide some scopes | Aleksey Kladov | 2019-04-13 | 2 | -2/+16 |
| | |||||
* | simplify | Aleksey Kladov | 2019-04-12 | 2 | -17/+12 |
| | |||||
* | make stuff private | Aleksey Kladov | 2019-04-12 | 1 | -6/+2 |
| | |||||
* | simplify | Aleksey Kladov | 2019-04-12 | 1 | -54/+22 |
| | |||||
* | simplify tests | Aleksey Kladov | 2019-04-12 | 3 | -36/+23 |
| | |||||
* | use really correct resolver for expressions | Aleksey Kladov | 2019-04-12 | 1 | -6/+18 |
| | |||||
* | add todo | Aleksey Kladov | 2019-04-11 | 1 | -0/+1 |
| | |||||
* | use correct resolver for expressions | Aleksey Kladov | 2019-04-11 | 1 | -3/+1 |
| | |||||
* | remove resolver from CompletonContext | Aleksey Kladov | 2019-04-11 | 1 | -24/+5 |
| | |||||
* | simplify | Aleksey Kladov | 2019-04-11 | 1 | -5/+3 |
| | |||||
* | generalize SourceAnalyzer to handle all defs with bodies | Aleksey Kladov | 2019-04-11 | 2 | -11/+27 |
| | |||||
* | minimize the API | Aleksey Kladov | 2019-04-11 | 1 | -19/+9 |
| | |||||
* | rename | Aleksey Kladov | 2019-04-11 | 2 | -7/+7 |
| | |||||
* | Make call info to use real name resolution | Aleksey Kladov | 2019-04-11 | 2 | -3/+13 |
| | |||||
* | introduce SourceAnalyzer | Aleksey Kladov | 2019-04-11 | 5 | -20/+109 |
| | |||||
* | fix typo | Aleksey Kladov | 2019-04-11 | 1 | -6/+6 |
| |