aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_syntax/src
Commit message (Collapse)AuthorAgeFilesLines
* Add a hir::TypeRef as an intermediate between ast::TypeRef and ty::TyFlorian Diebold2018-12-252-10/+38
|
* Implement reference / pointer typesFlorian Diebold2018-12-253-6/+57
| | | | | - parse them - infer types of & and * expressions
* Implement basic completion for fieldsFlorian Diebold2018-12-252-1/+5
|
* Improve parsing of incomplete field accesses in preparation for field completionFlorian Diebold2018-12-251-9/+7
| | | | | 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 accessesFlorian Diebold2018-12-252-2/+10
|
* Add AST definitions for struct/variant fields etc.Florian Diebold2018-12-253-12/+256
| | | | Fixes #117
* Infer result of struct literals, and recurse into their child expressionsFlorian Diebold2018-12-252-6/+26
|
* Resolve paths to defs (functions currently) during type inferenceFlorian Diebold2018-12-232-2/+6
|
* Make let statements kind of workFlorian Diebold2018-12-232-0/+5
|
* Parse integer / float typesFlorian Diebold2018-12-232-2/+6
|
* Add beginnings of type infrastructureFlorian Diebold2018-12-232-13/+45
|
* Merge #316bors[bot]2018-12-211-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 pathsDJMcNab2018-12-211-1/+1
| |
* | Remove uneeded todo in lexerDJMcNab2018-12-211-1/+1
|/
* Fix where clauses using fully qualified path syntaxDJMcNab2018-12-211-1/+6
|
* show debug repr of literalsAleksey Kladov2018-12-214-4/+4
|
* Fix parsing of contextual_keyword unionDJMcNab2018-12-201-1/+1
|
* Use a better way of skipping SEMIsDJMcNab2018-12-201-6/+6
|
* Support a blank expression before a semicolonDJMcNab2018-12-201-0/+6
|
* Fix the tests and fix the precommit hookDJMcNab2018-12-206-9/+9
|
* Fix missing DOTDOTEQsDJMcNab2018-12-201-3/+3
|
* Don't require a command before EQ in a where clauseDJMcNab2018-12-201-1/+1
|
* Simplify NO_BLOCK testingDJMcNab2018-12-202-11/+3
|
* Fix ambiguity with if breakDJMcNab2018-12-202-5/+21
| | | | Brought up by #290
* Add tests and only traverse in the crates directoryDJMcNab2018-12-192-2/+7
|
* Move is_block to lower in the call treeDJMcNab2018-12-192-54/+43
|
* Revert "Revert to f6f7c5"DJMcNab2018-12-192-19/+36
| | | | | | This approach is correct, but it needs an addition to Restrictions too This reverts commit ad00d0c8a5f64142e6636e8b048204c8f8982f4a.
* Fix handling of structs in match armsDJMcNab2018-12-191-1/+1
|
* Revert to f6f7c5DJMcNab2018-12-192-36/+19
|
* Fix expression parsing by bailing out upon a macro block being foundDJMcNab2018-12-191-14/+12
| | | | | | TODO: Fix this when the block like macro is in expression position E.g. `test(test!{})` currently parses
* Possibly fix #225DJMcNab2018-12-192-21/+40
|
* Actually fix at_ts doc comment (committed wrong file :P)DJMcNab2018-12-191-1/+1
|
* Fix at_ts doc commentDJMcNab2018-12-191-1/+1
|
* Fix parsing of inclusive ranges (#214)DJMcNab2018-12-192-4/+8
| | | | I'm not certain that this is correct, so extra eyes would be good
* Fixed cast expression parsing in ra_syntax.Roland Ruckerbauer2018-12-172-9/+18
| | | | | | | | | | | | | | | | | | | | | | 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 AtomTextEditBernardo2018-12-112-12/+12
|
* extract AtomEdit and Edit into new ra_text_edit crateBernardo2018-12-104-30/+5
|
* grand module renameAleksey Kladov2018-12-0811-0/+0
|
* Add a better text for hover and stop duplicating work done in ↵DJMcNab2018-12-082-2/+0
| | | | approximatelly_resolve_symbol
* Clarify and correct comment about multi_byte_tokensDJMcNab2018-12-081-2/+2
|
* Use json comparison code from cargo for heavy testsFlorian Diebold2018-12-061-1/+1
|
* modernize even moreAleksey Kladov2018-12-062-8/+4
|
* modernize some filesAleksey Kladov2018-12-062-9/+3
|
* Merge #256bors[bot]2018-12-061-1/+54
|\ | | | | | | | | | | | | | | 256: Improve/add use_item documentation r=matklad a=DJMcNab Adds some documentation to use_item explaining all code paths (use imports are hard, especially with the ongoing discussion of anchored v. uniform paths - see https://github.com/rust-lang/rust/issues/55618 for what appears to be the latest developments) Co-authored-by: DJMcNab <[email protected]>
| * Improve/add the use_item documentationDJMcNab2018-12-051-1/+54
| |
* | Fix a copy and pasting typoDJMcNab2018-12-051-1/+1
|/
* switch back to the latest betaAleksey Kladov2018-11-241-2/+4
|
* Complete paths after ::Aleksey Kladov2018-11-212-2/+2
|
* Some import resolution boilerplateAleksey Kladov2018-11-201-0/+6
|
* Split string lexing and run rustfmtAdolfo Ochagavía2018-11-1110-521/+548
|