Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | make ast object safe | Aleksey Kladov | 2019-08-23 | 2 | -4/+15 | |
| | ||||||
* | Merge #1724 | bors[bot] | 2019-08-23 | 3 | -132/+170 | |
|\ | | | | | | | | | | | | | | | 1724: Refactor fill_match_arms assist to use AstBuilder facilities r=matklad a=viorina Co-authored-by: Ekaterina Babshukova <[email protected]> | |||||
| * | refactor fill_match_arms assist | Ekaterina Babshukova | 2019-08-22 | 3 | -132/+170 | |
| | | ||||||
| | | ||||||
| \ | ||||||
*-. \ | Merge #1721 #1723 | bors[bot] | 2019-08-22 | 10 | -55/+470 | |
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1721: Impl/dyn trait r=flodiebold a=flodiebold This adds support for `impl Trait` and `dyn Trait` types as far as possible without Chalk. So we can represent them in the type system, and handle them in method resolution, but Chalk doesn't know about them yet. There's a small temporary hack here where we bypass Chalk during method resolution, so we can handle simple method calls on them and completion works. Fixes #1608. 1723: Make sysroot use `RUST_SRC_PATH` if set r=matklad a=bkchr Co-authored-by: Florian Diebold <[email protected]> Co-authored-by: Bastian Köcher <[email protected]> | |||||
| | * | | Make sysroot use `RUST_SRC_PATH` if set | Bastian Köcher | 2019-08-22 | 1 | -11/+21 | |
| | |/ | ||||||
| * | | Improve/fix type bound lowering | Florian Diebold | 2019-08-22 | 3 | -30/+64 | |
| | | | ||||||
| * | | Handle impl/dyn Trait in method resolution | Florian Diebold | 2019-08-22 | 3 | -32/+79 | |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we have one of these, the `Trait` doesn't need to be in scope to call its methods. So we need to consider this when looking for method candidates. (Actually I think the same is true when we have a bound `T: some::Trait`, but we don't handle that yet). At the same time, since Chalk doesn't handle these types yet, add a small hack to skip Chalk in method resolution and just consider `impl Trait: Trait` always true. This is enough to e.g. get completions for `impl Trait`, but since we don't do any unification we won't infer the return type of e.g. `impl Into<i64>::into()`. | |||||
| * | | Add `impl Trait` and `dyn Trait` types | Florian Diebold | 2019-08-22 | 8 | -42/+366 | |
| |/ | | | | | | | | | | | | | - refactor bounds handling in the AST a bit - add HIR for bounds - add `Ty::Dyn` and `Ty::Opaque` variants and lower `dyn Trait` / `impl Trait` syntax to them | |||||
* | | Add test for nested box pattern | Dylan MacKenzie | 2019-08-22 | 3 | -12/+51 | |
| | | ||||||
* | | Add BOX_KW to PATTERN_FIRST | Dylan MacKenzie | 2019-08-22 | 1 | -1/+1 | |
|/ | ||||||
* | Merge #1717 | bors[bot] | 2019-08-22 | 3 | -0/+49 | |
|\ | | | | | | | | | | | | | | | | | 1717: Don't add `?` bounds as real bounds r=flodiebold a=matklad closes #1709 Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | Don't add `?` bounds as real bounds | Aleksey Kladov | 2019-08-22 | 3 | -0/+49 | |
| | | | | | | | | closes #1709 | |||||
* | | disable clap's features | Aleksey Kladov | 2019-08-22 | 2 | -2/+2 | |
| | | ||||||
* | | Merge #1715 | bors[bot] | 2019-08-22 | 10 | -39/+162 | |
|\ \ | |/ |/| | | | | | | | | | | | 1715: Feature flags r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | implement feature flags | Aleksey Kladov | 2019-08-22 | 8 | -31/+140 | |
| | | ||||||
| * | show error to the user when deserializing config | Aleksey Kladov | 2019-08-22 | 3 | -8/+22 | |
| | | ||||||
* | | Update snapshots/highlighting.html to use correct highlighting | cynecx | 2019-08-22 | 1 | -2/+2 | |
| | | ||||||
* | | Fix syntax-highlighting for fields (`NAMED_FIELD_DEF`) | cynecx | 2019-08-21 | 1 | -14/+10 | |
|/ | ||||||
* | fix default for the exlude key | Aleksey Kladov | 2019-08-21 | 2 | -2/+6 | |
| | ||||||
* | switch to jod threads | Aleksey Kladov | 2019-08-21 | 2 | -35/+6 | |
| | ||||||
* | remove debug-print | Aleksey Kladov | 2019-08-20 | 1 | -1/+0 | |
| | ||||||
* | :arrow_up: rustc_lexer | Aleksey Kladov | 2019-08-20 | 3 | -117/+75 | |
| | ||||||
* | switch to upstream ra_vfs | Aleksey Kladov | 2019-08-20 | 1 | -1/+1 | |
| | ||||||
* | Drop unnecessary `&'_` from impls | Aleksey Kladov | 2019-08-20 | 1 | -20/+20 | |
| | ||||||
* | refactor TryConvWith similar to ConvWith | Aleksey Kladov | 2019-08-20 | 2 | -46/+27 | |
| | ||||||
* | translate \n -> \r\n on the way out | Aleksey Kladov | 2019-08-20 | 5 | -28/+46 | |
| | ||||||
* | make CTX type param instead of assoc type | Aleksey Kladov | 2019-08-20 | 1 | -34/+25 | |
| | | | | that way, we can implement ConvWith<&'_ CTX> for different lifetimes | |||||
* | add tests for crlf | Aleksey Kladov | 2019-08-20 | 1 | -0/+46 | |
| | ||||||
* | minor | Aleksey Kladov | 2019-08-20 | 1 | -1/+1 | |
| | ||||||
* | make sure lockfile is used for cargo install | Aleksey Kladov | 2019-08-20 | 1 | -2/+2 | |
| | ||||||
* | Merge #1703 | bors[bot] | 2019-08-19 | 7 | -17/+42 | |
|\ | | | | | | | | | | | | | | | 1703: don't load sysroot in most heavy tests r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | don't load sysroot in most heavy tests | Aleksey Kladov | 2019-08-19 | 7 | -17/+42 | |
| | | ||||||
* | | Merge #1702 | bors[bot] | 2019-08-19 | 2 | -7/+33 | |
|\ \ | |/ |/| | | | | | | | | | | | 1702: replace heck with just ascii transformation r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]> | |||||
| * | replace heck with just ascii transformation | Aleksey Kladov | 2019-08-19 | 2 | -7/+33 | |
| | | ||||||
* | | qualify ast types with `ast::` | Aleksey Kladov | 2019-08-19 | 1 | -11/+8 | |
|/ | | | | | By convention, ast nodes should always be used as `ast::FnDef`. This is to avoid confusion with similarly-named hir types. | |||||
* | remove ast::*Kind from ra_ide_api | Aleksey Kladov | 2019-08-19 | 5 | -21/+19 | |
| | ||||||
* | remove ast::*Kind enums from assists | Aleksey Kladov | 2019-08-19 | 5 | -45/+45 | |
| | ||||||
* | remove ast::*Kind from hir | Aleksey Kladov | 2019-08-19 | 6 | -83/+86 | |
| | ||||||
* | remove ast::*Kind enums | Aleksey Kladov | 2019-08-19 | 3 | -390/+397 | |
| | | | | With the new owned trees, we don't need an indirection here | |||||
* | use derive(Debug) for SyntaxKind | Aleksey Kladov | 2019-08-19 | 3 | -284/+10 | |
| | ||||||
* | plug new boilerplate_gen into ra_tools | Aleksey Kladov | 2019-08-19 | 5 | -24/+26 | |
| | ||||||
* | rename codegen -> boilerplate_gen | Aleksey Kladov | 2019-08-19 | 2 | -3/+3 | |
| | ||||||
* | drop tera dependency | Aleksey Kladov | 2019-08-19 | 2 | -4/+25 | |
| | ||||||
* | use new quote-generated syntax kinds | Aleksey Kladov | 2019-08-19 | 2 | -577/+538 | |
| | ||||||
* | use quote! to generate syntax kinds | Aleksey Kladov | 2019-08-19 | 2 | -1/+147 | |
| | ||||||
* | use new quote-generated ast | Aleksey Kladov | 2019-08-18 | 3 | -1290/+1410 | |
| | ||||||
* | use quote! macro to generate grammar | Aleksey Kladov | 2019-08-18 | 3 | -40/+180 | |
| | | | | | We already use syn"e elsewhere (transitively), so it make sense to cut down on the number of technologies and get rid of tera | |||||
* | deserialize grammar | Aleksey Kladov | 2019-08-18 | 3 | -56/+87 | |
| | ||||||
* | switch to new codegen | Aleksey Kladov | 2019-08-18 | 3 | -14/+20 | |
| | ||||||
* | codegen boilerplate | Aleksey Kladov | 2019-08-18 | 2 | -0/+8 | |
| |