aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
| * | Cast SyntaxNodePtr to AstPtr directlyPhil Ellison2019-08-252-14/+10
| | |
| * | Remove reliance on expr orderingPhil Ellison2019-08-251-10/+4
| | |
| * | cargo formatPhil Ellison2019-08-252-23/+23
| | |
| * | Change test to not rely on trait inferencePhil Ellison2019-08-251-12/+7
| | |
| * | Check type rather than just name in ok-wrapping diagnostic. Add test for ↵Phil Ellison2019-08-253-8/+77
| | | | | | | | | | | | handling generic functions (which currently fails)
| * | Add test that ok-wrapping handles type aliasesPhil Ellison2019-08-251-0/+38
| | |
| * | Mock std String and Result types in tests for ok-wrapping diagnosticPhil Ellison2019-08-253-16/+65
| | |
| * | Add type_mismatches to InferenceResult and use this in ok-wrapping code fixPhil Ellison2019-08-253-8/+27
| | |
| * | Initial implementation of Ok-wrappingPhil Ellison2019-08-254-3/+136
| |/
* | Generate and bless testsDylan MacKenzie2019-08-247-85/+227
| |
* | Handle `Struct { box i }` syntaxDylan MacKenzie2019-08-241-0/+3
| | | | | | | | | | | | Named structs can have `box` patterns that will bind to their fields. This is similar to the behavior of the `ref` and `mut` fields, but is at least a little bit surprising.
* | Centralize `box` pattern tests in `patterns.rs`Dylan MacKenzie2019-08-243-7/+6
| |
* | Convert `BoxPat` to `Missing` in HIRDylan MacKenzie2019-08-241-0/+1
| |
* | Parse `BoxPat`Dylan MacKenzie2019-08-241-19/+32
| |
* | Add `BoxPat` variantDylan MacKenzie2019-08-233-2/+41
|/
* rename struct -> record, pos -> tupleAleksey Kladov2019-08-2378-592/+598
|
* make ast object safeAleksey Kladov2019-08-232-4/+15
|
* Merge #1724bors[bot]2019-08-233-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 assistEkaterina Babshukova2019-08-223-132/+170
| |
| |
| \
*-. \ Merge #1721 #1723bors[bot]2019-08-2210-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 setBastian Köcher2019-08-221-11/+21
| | |/
| * | Improve/fix type bound loweringFlorian Diebold2019-08-223-30/+64
| | |
| * | Handle impl/dyn Trait in method resolutionFlorian Diebold2019-08-223-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` typesFlorian Diebold2019-08-228-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 patternDylan MacKenzie2019-08-223-12/+51
| |
* | Add BOX_KW to PATTERN_FIRSTDylan MacKenzie2019-08-221-1/+1
|/
* Merge #1717bors[bot]2019-08-223-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 boundsAleksey Kladov2019-08-223-0/+49
| | | | | | | | closes #1709
* | disable clap's featuresAleksey Kladov2019-08-222-2/+2
| |
* | Merge #1715bors[bot]2019-08-2210-39/+162
|\ \ | |/ |/| | | | | | | | | | | 1715: Feature flags r=matklad a=matklad Co-authored-by: Aleksey Kladov <[email protected]>
| * implement feature flagsAleksey Kladov2019-08-228-31/+140
| |
| * show error to the user when deserializing configAleksey Kladov2019-08-223-8/+22
| |
* | Update snapshots/highlighting.html to use correct highlightingcynecx2019-08-221-2/+2
| |
* | Fix syntax-highlighting for fields (`NAMED_FIELD_DEF`)cynecx2019-08-211-14/+10
|/
* fix default for the exlude keyAleksey Kladov2019-08-212-2/+6
|
* switch to jod threadsAleksey Kladov2019-08-212-35/+6
|
* remove debug-printAleksey Kladov2019-08-201-1/+0
|
* :arrow_up: rustc_lexerAleksey Kladov2019-08-203-117/+75
|
* switch to upstream ra_vfsAleksey Kladov2019-08-201-1/+1
|
* Drop unnecessary `&'_` from implsAleksey Kladov2019-08-201-20/+20
|
* refactor TryConvWith similar to ConvWithAleksey Kladov2019-08-202-46/+27
|
* translate \n -> \r\n on the way outAleksey Kladov2019-08-205-28/+46
|
* make CTX type param instead of assoc typeAleksey Kladov2019-08-201-34/+25
| | | | that way, we can implement ConvWith<&'_ CTX> for different lifetimes
* add tests for crlfAleksey Kladov2019-08-201-0/+46
|
* minorAleksey Kladov2019-08-201-1/+1
|
* make sure lockfile is used for cargo installAleksey Kladov2019-08-201-2/+2
|
* Merge #1703bors[bot]2019-08-197-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 testsAleksey Kladov2019-08-197-17/+42
| |
* | Merge #1702bors[bot]2019-08-192-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 transformationAleksey Kladov2019-08-192-7/+33
| |