10906: [first contributation] fix: `add return type` assit works when there's missing whitespace r=Veykril a=izik1
I feel like the way I handled whitespace here isn't... Right? Maybe it should be folded into `InsertOrReplace::Insert`
Also, sorry about the commit name, I am _not_ good at writing user facing commit messages
Also sorry about the test names, could be clearer I feel
Co-authored-by: Skyler Rain Ross <orangesnowfox@gmail.com>
10891: fix: emit trait names in moniker identifier r=Veykril a=tjdevries
Hi,
Not sure if this is the best fix for the problem, but I noticed that functions that part of a trait are not namespaced with the trait name, so this could lead to problems if you had a function and a trait-function both defined in the same module.
Thanks!
TJ
Co-authored-by: TJ DeVries <devries.timothyj@gmail.com>
10899: ide: hack to make self not unresolved reference in async trait wrapped impl's r=Veykril a=jhgg
fixes#10708
this is a bit hacky, but it "works".
i'm not sure how to even write a test for this though, but i've confirmed it works via manual testing...
Co-authored-by: Jake Heinz <jh@discordapp.com>
10897: internal: Try to fix Code tests r=lnicola a=lnicola
It looks like `--noEmit` broke our unit tests:
![image](https://user-images.githubusercontent.com/308347/144217192-a8133a6b-880f-4852-846b-b45527485336.png)
r? `@ChayimFriedman2`
I suppose we might still:
- compile stuff twice
- not detect failing tests on CI (since we didn't notice this)
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
10896: hir: resolve assoc trait type in path r=jhgg a=jhgg
fixes#9802
- [ ] write tests, maybe, if this is even a good fix...
Co-authored-by: Jake Heinz <jh@discordapp.com>
10872: ide_db: build symbol index from crate def map r=Veykril a=jhgg
fixes#4842, #10764
Is this looking correct? 👀
- [x] build the symbol index based upon the CrateDefMap for the given crate in `crate_symbols`
- [x] make it multi threaded again, and figure out how to cache each moduleid's symbol index in salsa.
- [x] NavigationTarget for names in macros is wrong, need to figure out how to compute a text range in the original file id?
- [x] cleanup some duped code
- [x] collect macros from `ItemScope.declared_macros()` into symbol index.
- [x] store declared macros in `ItemScope` so we can figure out where macros were defined for the index.
- [x] do something about `SymbolIndex::for_files` - ideally it should use the new module symbol index stuff.
- [x] delete `source_file_to_file_symbols` & co...
- [x] figure out what to do about `library_symbols`
- [x] maybe... speed up the new `library_symbols` - the new impl is probably much slower, and definitely much less parallel. **deciding to do nothing here, we can optimize later if necerssary.**
- [x] fix failing test: `navigation_target::tests::test_nav_for_symbol` - notably the crate def map doesn't seem to find declarations inside function.
- [x] now a bunch of other tests are failing around auto_import & qualify_path handlers. :(
- [x] need to assoc items in traits and impls
Co-authored-by: Jake Heinz <jh@discordapp.com>