aboutsummaryrefslogtreecommitdiff
path: root/crates/ra_ide/src/display
Commit message (Collapse)AuthorAgeFilesLines
* Fix completion of HashMap::newFlorian Diebold2020-03-131-2/+2
| | | | | | | | | | | | | | | The `ty` function in code_model returned the type with placeholders for type parameters. That's nice for printing, but not good for completion, because placeholders won't unify with anything else: So the type we got for `HashMap` was `HashMap<K, V, T>`, which doesn't unify with `HashMap<?, ?, RandomState>`, so the `new` method wasn't shown. Now we instead return `HashMap<{unknown}, {unknown}, {unknown}>`, which does unify with the impl type. Maybe we should just expose this properly as variables though, i.e. we'd return something like `exists<type, type, type> HashMap<?0, ?1, ?2>` (in Chalk notation). It'll make the API more complicated, but harder to misuse. (And it would handle cases like `type TypeAlias<T> = HashMap<T, T>` more correctly.)
* Fix importsAleksey Kladov2020-03-031-6/+2
|
* Rename NameDefinition -> DefinitionAleksey Kladov2020-03-031-8/+8
|
* Rename ast::ImplBlock -> ast::ImplDefAleksey Kladov2020-02-292-4/+4
|
* Refactor primary IDE APIAleksey Kladov2020-02-261-2/+6
| | | | | | | | | | This introduces the new type -- Semantics. Semantics maps SyntaxNodes to various semantic info, such as type, name resolution or macro expansions. To do so, Semantics maintains a HashMap which maps every node it saw to the file from which the node originated. This is enough to get all the necessary hir bits just from syntax.
* SimplifyAleksey Kladov2020-02-251-1/+1
|
* Add basic parameter name hints heuristicsKirill Bulatov2020-02-231-3/+13
|
* SimplifyAleksey Kladov2020-02-221-25/+41
|
* More manual clippy fixesKirill Bulatov2020-02-182-5/+4
|
* cleanup importsAleksey Kladov2020-02-062-12/+8
|
* Improve parameter hints a bit & add emacs supportFlorian Diebold2020-01-181-3/+16
| | | | | - just include the name, not e.g. `mut` - don't return empty hints (or `_`)
* FnSignature: use unwrap_or_default for parameter_name_listimtsuki2020-01-151-5/+3
| | | | Signed-off-by: imtsuki <me@qjx.app>
* Add inlay parameter name hints for function callsimtsuki2020-01-141-0/+22
| | | | Signed-off-by: imtsuki <me@qjx.app>
* Remove hir usage from macro_rules! detection in structure_node()Roland Ruckerbauer2020-01-121-4/+2
|
* Use hir .path() and .name() to differentiateRoland Ruckerbauer2020-01-121-22/+24
| | | | macro call and macro definition
* Added test for file_structure unidentified macro definitionRoland Ruckerbauer2020-01-121-4/+18
|
* Fix file_structure() to recognize macro_rules!Roland Ruckerbauer2020-01-121-3/+17
| | | | where first token != "macro_rules"
* Use attr location for builtin macro goto-impEdwin Cheng2020-01-121-1/+5
|
* Implement proposed CallHierarchy featureJeremy Kolb2020-01-081-1/+1
| | | | See: https://github.com/microsoft/vscode-languageserver-node/blob/master/protocol/src/protocol.callHierarchy.proposed.ts
* Don't bother with focus range for navigation to localsAleksey Kladov2019-12-181-7/+8
|
* Rename GenericParam -> TypeParamAleksey Kladov2019-12-071-1/+1
| | | | We don't have LifetimeParam yet, but they are planned!
* ToNav for GenericParamAleksey Kladov2019-12-071-1/+21
|
* No block at the momentice10002019-12-041-1/+0
|
* Add `ModuleSource::Block`ice10002019-12-041-28/+15
|
* Replace `ra_hir_expand::either` with crateice10002019-12-031-3/+4
|
* Rename Source -> InFileAleksey Kladov2019-11-281-2/+2
|
* Use Name::missing consistentlyAleksey Kladov2019-11-271-5/+2
|
* rename ra_ide_api -> ra_ideAleksey Kladov2019-11-274-0/+1124