aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Allow syntax tree to update when changing filesVille Penttinen2019-03-032-17/+26
| | | | | | Previously when using the file based syntax tree, it would not update until a change had been made in the new file. Now we automatically update the syntax tree to match the current file.
* Rename syntaxtree text provider to SyntaxTreeContentProviderVille Penttinen2019-03-033-13/+11
|
* Add vscode support for range in SyntaxTreeParamsVille Penttinen2019-03-033-11/+41
| | | | | | This enables the client to use a command to either show the live-updating version of the syntax tree for the current file. Or optionally when a selected range is provided, we then provide a snapshot of the syntax tree for the range.
* Add optional range parameter to SyntaxTreeParamsVille Penttinen2019-03-034-5/+148
| | | | | When range is provided, instead of showing the syntax for the whole file, we'll show the syntax tree for the given range.
* Merge #917bors[bot]2019-03-0350-1291/+1286
|\ | | | | | | | | | | | | | | | | | | 917: Trait tests r=flodiebold a=flodiebold This adds a bunch of basic tests for trait functionality, just to outline what seems like the first goals for that ;) It also changes the display of `Ty::Unknown` to `{unknown}`, since `[unknown]` could be confused with a slice, and fixes an error in the emacs runnables code. Co-authored-by: Florian Diebold <[email protected]>
| * Inline type inference test snapshotsFlorian Diebold2019-03-0359-1504/+1096
| |
| * emacs: Fix (void-variable rust-analyzer--last-runnable)Florian Diebold2019-03-031-1/+1
| |
| * Represent unknown types as {unknown} instead of [unknown]Florian Diebold2019-03-0329-172/+172
| | | | | | | | Since the latter could actually be a real type...
| * Add a bunch of tests for type inference involving traitsFlorian Diebold2019-03-0213-0/+403
|/ | | | None of them works correctly yet, of course.
* Merge #908bors[bot]2019-03-021-8/+27
|\ | | | | | | | | | | | | | | | | | | | | 908: Enable markup for hover on expressions which resolve using type_of r=matklad a=vipentti This adds highlighting when hovering over items which are resolved using `type_of`. This adds basic highlighting, discussed in #904. Co-authored-by: Ville Penttinen <[email protected]>
| * Enable markup for hover on expressions which resolve using type_ofVille Penttinen2019-02-281-8/+27
| | | | | | | | | | This adds highlighting when hovering over items which are resolved using `type_of`.
* | Merge #915bors[bot]2019-03-0216-133/+108
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 915: Bring BodySyntaxMapping in line with other source-map instances r=flodiebold a=matklad * rename to SourceMap * don't store the actual body inline, just return a pair r? @flodiebold Co-authored-by: Aleksey Kladov <[email protected]>
| * | remove commentAleksey Kladov2019-03-021-1/+0
| | |
| * | remove second way to get the bodyAleksey Kladov2019-03-022-5/+1
| | |
| * | rename syntax_mapping as wellAleksey Kladov2019-03-026-19/+18
| | |
| * | align lower module query namesAleksey Kladov2019-03-027-23/+15
| | |
| * | rename scopesAleksey Kladov2019-03-024-9/+9
| | |
| * | rename to source_mapAleksey Kladov2019-03-022-17/+13
| | |
| * | dont store body inside source mapAleksey Kladov2019-03-025-61/+54
| | |
| * | rename syntax-mapping -> source-mapAleksey Kladov2019-03-0211-32/+32
| | |
* | | Merge #914bors[bot]2019-03-021-28/+1
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 914: A bit of cleanup in ty.rs r=flodiebold a=flodiebold Co-authored-by: Florian Diebold <[email protected]>
| * | A bit of cleanup in ty.rsFlorian Diebold2019-03-021-28/+1
|/ /
* | Merge #910bors[bot]2019-02-281-1/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | 910: Update hover message since we do support globs r=matklad a=kjeremy #909 drew attention to this. Co-authored-by: kjeremy <[email protected]>
| * | Update hover message since we do support globskjeremy2019-02-281-1/+1
|/ /
* / add syntax-trees videoAleksey Kladov2019-02-281-0/+3
|/
* Merge #906bors[bot]2019-02-273-3/+124
|\ | | | | | | | | | | | | | | 906: Add support for goto definition and hover for struct fields r=matklad a=vipentti This works partially towards fixing #512 Co-authored-by: Ville Penttinen <[email protected]>
| * Enable hover support for NamedFieldDefsVille Penttinen2019-02-271-3/+79
| | | | | | | | Additionally add type ascription for const and statics as well.
| * Allow goto-definition to work for named fields in struct initializerVille Penttinen2019-02-272-0/+45
| | | | | | | | | | Now goto definition should work when done on a named field in a struct initializer.
* | Merge #905bors[bot]2019-02-272-61/+63
|\ \ | |/ |/| | | | | | | | | | | 905: Update deps r=kjeremy a=kjeremy Co-authored-by: kjeremy <[email protected]>
| * Fix the buildkjeremy2019-02-271-1/+3
| |
| * Update depskjeremy2019-02-271-60/+60
|/
* Merge #900bors[bot]2019-02-279-61/+72
|\ | | | | | | | | | | | | | | | | | | | | 900: Add new trait ast::TypeAscriptionOwner r=vipentti a=vipentti This trait should be implemented for nodes which have an ascribed type, e.g. thing : Type. Such as let, const, static, param, named struct fields. In addition, we update some places where previously we used node + node.type_ref() with `TypeAscriptionOwner` in the trait bounds. Co-authored-by: Ville Penttinen <[email protected]>
| * Remove `TypeRef` from item opts which implement TypeAscriptionOwnerVille Penttinen2019-02-276-43/+24
| |
| * Use TypeAscriptionOwnerVille Penttinen2019-02-262-12/+15
| | | | | | | | | | | | This replaces places where we would use node + node.type_ref() with things that have an ascribed type, with using the TypeAscriptionOwner as the trait bound so we can simply pass the node.
| * Add new trait TypeAscriptionOwnerVille Penttinen2019-02-263-9/+36
| | | | | | | | | | This trait should be implemented for nodes which have an ascribed type, e.g. thing : Type. Such as let, const, static, param, named struct fields.
* | Merge #901bors[bot]2019-02-274-21/+179
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | 901: Add basic support for showing fn signature when hovering r=matklad a=vipentti This adds basic support for displaying function signature when hovering over a usage of a function. Additionally refactored `hover` to return `HoverResult` to ease with testing and in general to be more robust. Co-authored-by: Ville Penttinen <[email protected]>
| * | Add support for hovering over the name of an itemVille Penttinen2019-02-272-2/+28
| | |
| * | Replace visit_fn with crate::completion::function_labelVille Penttinen2019-02-261-43/+2
| | |
| * | Add new type HoverResult to contain the results of hoveringVille Penttinen2019-02-263-16/+149
| | | | | | | | | | | | | | | This makes testing hovers easier as well as allows us to do more things with the results if needed.
| * | Add support for showing fn signature when hoveringVille Penttinen2019-02-261-3/+43
| | |
* | | Merge #903bors[bot]2019-02-271-4/+13
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 903: Work around for issue in vscode reporting a failure in request r=matklad a=vipentti vscode would report "A request has failed" when it got "Content modified" message and this would cause a pop-up to appear. This works around the issue by returning an "empty" response that vscode can ignore. Co-authored-by: Ville Penttinen <[email protected]>
| * | | Remove RawResponse::empty()Ville Penttinen2019-02-272-7/+5
| | | |
| * | | Work around for issue in vscode reporting a failure in requestVille Penttinen2019-02-272-5/+16
|/ / / | | | | | | | | | | | | | | | vscode would report "A request has failed" when it got "Content modified" message and this would cause a pop-up to appear. This works around the issue by returning an "empty" response that vscode can ignore.
* | | Merge #902bors[bot]2019-02-261-4/+4
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 902: Fix a typo r=matklad a=dwijnand Co-authored-by: Dale Wijnand <[email protected]>
| * | Fix a typoDale Wijnand2019-02-261-4/+4
|/ /
* | Merge #899bors[bot]2019-02-261-1/+1
|\ \ | |/ |/| | | | | | | | | | | | | | | 899: Change default value of highlightingOn to false r=matklad a=vipentti This changes the default value for the vscode setting `rust-analyzer.highlightingOn` to `false`. Since currently the highlighting only supports Zenburn, which people may not be using, I think it makes sense to have this feature disabled by default. This was discussed in #896 Co-authored-by: Ville Penttinen <[email protected]>
| * Change default value of highlightingOn to falseVille Penttinen2019-02-261-1/+1
|/
* Merge #897bors[bot]2019-02-2511-20/+206
|\ | | | | | | | | | | | | | | | | | | 897: Add basic const/static type inference r=flodiebold a=vipentti This adds basic const/static type inference discussed in #887. Currently the inference does not work for const/static declared inside a block. In addition the inference does not work inside the bodies of const/static. Co-authored-by: Ville Penttinen <[email protected]>
| * Move ConstSignature creation to a single methodVille Penttinen2019-02-251-17/+13
| |
| * Add static type inferenceVille Penttinen2019-02-256-12/+54
| |