Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | fix suffix ranges | Aleksey Kladov | 2018-12-27 | 6 | -4/+95 | |
| | ||||||
* | dump validation errors | Aleksey Kladov | 2018-12-27 | 1 | -2/+5 | |
| | ||||||
* | support literal suffixes | Aleksey Kladov | 2018-12-27 | 7 | -2/+40 | |
| | ||||||
* | dedupe literal parsers | Aleksey Kladov | 2018-12-27 | 10 | -374/+220 | |
| | ||||||
* | Add a hir::TypeRef as an intermediate between ast::TypeRef and ty::Ty | Florian Diebold | 2018-12-25 | 2 | -10/+38 | |
| | ||||||
* | Implement reference / pointer types | Florian Diebold | 2018-12-25 | 3 | -6/+57 | |
| | | | | | - parse them - infer types of & and * expressions | |||||
* | Implement basic completion for fields | Florian Diebold | 2018-12-25 | 2 | -1/+5 | |
| | ||||||
* | Improve parsing of incomplete field accesses in preparation for field completion | Florian Diebold | 2018-12-25 | 3 | -9/+45 | |
| | | | | | We need to be able to get the receiver even if there is no field name yet, and currently "a." wouldn't get parsed as a field name at all. This seems to help. | |||||
* | Type field accesses | Florian Diebold | 2018-12-25 | 2 | -2/+10 | |
| | ||||||
* | Add AST definitions for struct/variant fields etc. | Florian Diebold | 2018-12-25 | 3 | -12/+256 | |
| | | | | Fixes #117 | |||||
* | Infer result of struct literals, and recurse into their child expressions | Florian Diebold | 2018-12-25 | 2 | -6/+26 | |
| | ||||||
* | Resolve paths to defs (functions currently) during type inference | Florian Diebold | 2018-12-23 | 2 | -2/+6 | |
| | ||||||
* | Make let statements kind of work | Florian Diebold | 2018-12-23 | 2 | -0/+5 | |
| | ||||||
* | Cleanup | Florian Diebold | 2018-12-23 | 1 | -25/+31 | |
| | ||||||
* | Add testing infrastructure for type inference | Florian Diebold | 2018-12-23 | 1 | -100/+5 | |
| | | | | - move dir_tests to test_utils for that. | |||||
* | Parse integer / float types | Florian Diebold | 2018-12-23 | 2 | -2/+6 | |
| | ||||||
* | Add beginnings of type infrastructure | Florian Diebold | 2018-12-23 | 2 | -13/+45 | |
| | ||||||
* | Merge #316 | bors[bot] | 2018-12-21 | 1 | -1/+1 | |
|\ | | | | | | | | | | | | | | | 316: Fix handling of nested self in paths r=matklad a=DJMcNab See https://github.com/rust-analyzer/rust-analyzer/issues/231#issuecomment-442449505. Co-authored-by: DJMcNab <[email protected]> | |||||
| * | Fix handling of nested self in paths | DJMcNab | 2018-12-21 | 1 | -1/+1 | |
| | | ||||||
* | | Remove TODO on self_hosting_parsing | DJMcNab | 2018-12-21 | 1 | -8/+4 | |
| | | | | | | | | | | | | This improving this code is not a good use of people-time, and this might be the most performant approach nonwithstanding an api for this use case being added to walkdir | |||||
* | | Remove uneeded todo in lexer | DJMcNab | 2018-12-21 | 1 | -1/+1 | |
|/ | ||||||
* | Fix where clauses using fully qualified path syntax | DJMcNab | 2018-12-21 | 5 | -9/+139 | |
| | ||||||
* | show debug repr of literals | Aleksey Kladov | 2018-12-21 | 4 | -4/+4 | |
| | ||||||
* | Add comment about the source of the weird_exprs test | DJMcNab | 2018-12-21 | 2 | -2235/+2248 | |
| | ||||||
* | Add weird_exprs test | DJMcNab | 2018-12-20 | 2 | -0/+2385 | |
| | ||||||
* | Fix parsing of contextual_keyword union | DJMcNab | 2018-12-20 | 1 | -1/+1 | |
| | ||||||
* | Run gen-tests | DJMcNab | 2018-12-20 | 2 | -0/+59 | |
| | ||||||
* | Use a better way of skipping SEMIs | DJMcNab | 2018-12-20 | 1 | -6/+6 | |
| | ||||||
* | Support a blank expression before a semicolon | DJMcNab | 2018-12-20 | 1 | -0/+6 | |
| | ||||||
* | Fix the tests and fix the precommit hook | DJMcNab | 2018-12-20 | 252 | -556/+204 | |
| | ||||||
* | Fix missing DOTDOTEQs | DJMcNab | 2018-12-20 | 1 | -3/+3 | |
| | ||||||
* | Don't require a command before EQ in a where clause | DJMcNab | 2018-12-20 | 1 | -1/+1 | |
| | ||||||
* | Change parser tests dir to inline/ok and inline/err | DJMcNab | 2018-12-20 | 1 | -2/+2 | |
| | ||||||
* | Ensure that the parser tests pass or fail correctly | DJMcNab | 2018-12-20 | 1 | -8/+26 | |
| | ||||||
* | Simplify NO_BLOCK testing | DJMcNab | 2018-12-20 | 2 | -11/+3 | |
| | ||||||
* | Fix ambiguity with if break | DJMcNab | 2018-12-20 | 4 | -5/+92 | |
| | | | | Brought up by #290 | |||||
* | Add tests and only traverse in the crates directory | DJMcNab | 2018-12-19 | 7 | -94/+185 | |
| | ||||||
* | Move is_block to lower in the call tree | DJMcNab | 2018-12-19 | 4 | -115/+104 | |
| | ||||||
* | Revert "Revert to f6f7c5" | DJMcNab | 2018-12-19 | 3 | -22/+36 | |
| | | | | | | This approach is correct, but it needs an addition to Restrictions too This reverts commit ad00d0c8a5f64142e6636e8b048204c8f8982f4a. | |||||
* | Fix handling of structs in match arms | DJMcNab | 2018-12-19 | 1 | -1/+1 | |
| | ||||||
* | Revert to f6f7c5 | DJMcNab | 2018-12-19 | 3 | -36/+22 | |
| | ||||||
* | Fix expression parsing by bailing out upon a macro block being found | DJMcNab | 2018-12-19 | 2 | -17/+12 | |
| | | | | | | TODO: Fix this when the block like macro is in expression position E.g. `test(test!{})` currently parses | |||||
* | Possibly fix #225 | DJMcNab | 2018-12-19 | 2 | -21/+40 | |
| | ||||||
* | Actually fix at_ts doc comment (committed wrong file :P) | DJMcNab | 2018-12-19 | 1 | -1/+1 | |
| | ||||||
* | Fix at_ts doc comment | DJMcNab | 2018-12-19 | 1 | -1/+1 | |
| | ||||||
* | Fix parsing of inclusive ranges (#214) | DJMcNab | 2018-12-19 | 6 | -37/+158 | |
| | | | | I'm not certain that this is correct, so extra eyes would be good | |||||
* | Add a test to ensure that we can parse each file | DJMcNab | 2018-12-19 | 1 | -2/+43 | |
| | | | | Note that this has a non-spurious failure in ra_analysis/src/mock_analysis | |||||
* | Fixed cast expression parsing in ra_syntax. | Roland Ruckerbauer | 2018-12-17 | 4 | -15/+66 | |
| | | | | | | | | | | | | | | | | | | | | | | The cast expression expected any type via types::type_() function, but the language spec does only allow TypeNoBounds (types without direct extra bounds via `+`). **Example:** ```rust fn test() { 6i8 as i32 + 5; } ``` This fails, because the types::type_() function which should parse the type after the as keyword is greedy, and takes all plus sign after path types as extra. My proposed fix is to replace the not implemented `type_no_plus()` just calls (`type_()`) function, which is used at several places. The replacement is `type_with_bounds_cond(p: &mut Parser, allow_bounds: bool)`, which passes the condition to relevant sub-parsers. This function is then called by `type_()` and the new public `type_no_bounds()`. | |||||
* | rename Edit to TextEdit and AtomEdit to AtomTextEdit | Bernardo | 2018-12-11 | 3 | -31/+31 | |
| | ||||||
* | extract AtomEdit and Edit into new ra_text_edit crate | Bernardo | 2018-12-10 | 5 | -30/+6 | |
| |