Florian Diebold
f778e50b71
Don't intern ProgramClause at all
...
This seems to work best performance/memory-wise.
2021-04-08 22:48:47 +02:00
Florian Diebold
566200342a
Intern QuantifiedWhereClauses
...
Slight performance and memory usage improvement.
2021-04-08 22:48:47 +02:00
Florian Diebold
15b0b55b4e
Intern ProgramClauses
2021-04-08 22:48:47 +02:00
Florian Diebold
317c4b972f
Intern CanonicalVarKinds
...
Slight savings in performance and memory.
2021-04-08 22:48:47 +02:00
Florian Diebold
90656f8674
Intern consts & lifetimes
...
Slight memory usage reduction.
2021-04-08 22:48:47 +02:00
Florian Diebold
37cb6805af
Intern types
...
Performance about the same, memory reduced by ~5%.
2021-04-08 22:48:47 +02:00
Florian Diebold
be03db0e3a
Intern Substitutions
...
(Costs a bit of performance, reduces memory usage on RA by ~10%.)
2021-04-08 22:48:47 +02:00
Florian Diebold
a169fa6a83
Intern VariableKinds
2021-04-08 22:48:47 +02:00
bors[bot]
63726a91b7
Merge #8431
...
8431: 8024: Added the trait highlight modifier for assoc types. r=Veykril a=chetankhilosiya
Co-authored-by: Chetan Khilosiya <chetan.khilosiya@gmail.com>
2021-04-08 19:47:54 +00:00
Chetan Khilosiya
4a9dd149aa
8024: Added the trait modifier for assoc types.
2021-04-09 01:00:35 +05:30
bors[bot]
51e5316de5
Merge #8428
...
8428: Use named fields in `MacroCallKind` r=jonas-schievink a=jonas-schievink
bors r+
changelog skip
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-04-08 18:43:41 +00:00
Jonas Schievink
86b7861612
Use named fields in MacroCallKind
2021-04-08 20:43:07 +02:00
bors[bot]
5f279d57f0
Merge #8426
...
8426: Track recursion limit when expanding custom derive r=jonas-schievink a=jonas-schievink
You can write a custom derive that expands to itself:
```rust
#[proc_macro_derive(Derive)]
pub fn derive(item: TokenStream) -> TokenStream {
let mut out: TokenStream = "#[derive(Derive)]".parse().unwrap();
out.extend(item);
out
}
```
rustc reports a recursion limit error, but rust-analyzer used to spin in name resolution and eventually fail with "name resolution is stuck". This makes it fail fast by respecting the recursion depth of the invocation.
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-04-08 16:51:11 +00:00
Jonas Schievink
014774764a
Track recursion limit when expanding custom derive
2021-04-08 18:49:30 +02:00
bors[bot]
94d9fc2a28
Merge #8421
...
8421: Reduce allocations in "Expand macro" formatter r=edwin0cheng a=lnicola
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-04-08 15:43:30 +00:00
bors[bot]
72ad5cbe16
Merge #8419 #8423
...
8419: Move hir_ty to Chalk IR r=flodiebold a=flodiebold
Closes #8313 .
There's some further cleanups to do:
- we're still using our `TypeWalk` in lots of places (not for mutating/folding though, just for walking)
- we're still using our own canonicalization and unification and our `InferenceTable`
- ~`ToChalk` still exists and gets called, it's just the identity in most cases now (I'll probably clean those up before merging this)~
8423: Bump lsp-types and syn r=kjeremy a=kjeremy
This lsp-types now supports a default InsertTextMode for completion and a per-completion item commit_characters
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
Co-authored-by: kjeremy <kjeremy@gmail.com>
2021-04-08 15:00:53 +00:00
kjeremy
3634b2145c
Bump lsp-types and syn
...
This lsp-types now supports a default InsertTextMode for completion and a per-completion item commit_characters
2021-04-08 10:57:47 -04:00
bors[bot]
5810299dba
Merge #8422
...
8422: Remove extra bracket in architecture docs r=lnicola a=lnicola
bors r+
changelog skip
Co-authored-by: Laurențiu Nicola <lnicola@dend.ro>
2021-04-08 14:51:51 +00:00
Laurențiu Nicola
7221188b0d
Remove extra bracket in architecture docs
2021-04-08 17:51:19 +03:00
Laurențiu Nicola
48b946bde1
Reduce allocations in Expand macro
2021-04-08 17:37:43 +03:00
Florian Diebold
d992736e79
Remove unused
2021-04-08 14:36:14 +02:00
Florian Diebold
8040f4a5e3
Replace make_binders
by the now equivalent make_only_type_binders
2021-04-08 14:23:17 +02:00
Florian Diebold
8ce6fea325
Remove identity impls for ToChalk
2021-04-08 14:23:17 +02:00
Florian Diebold
a163554857
Fix Canonicalized::apply_solution
...
Now that we're using Chalk's `substitute` which actually knows about
lifetimes, the hack doesn't work anymore, but we can put in a proper
lifetime.
2021-04-08 14:23:17 +02:00
Florian Diebold
a838a60caa
Fix missing match arms
2021-04-08 14:23:17 +02:00
Florian Diebold
f43edb2151
Fix remaining interned_mut
call
2021-04-08 14:08:55 +02:00
Florian Diebold
0f058d61ce
Replace remaining fold
calls
2021-04-08 14:08:55 +02:00
Florian Diebold
caee3b6c2d
Replace some fold
calls
2021-04-08 14:08:55 +02:00
Florian Diebold
b25b147e86
Fix shifted_{in,out} calls
2021-04-08 14:08:55 +02:00
Florian Diebold
dc0b581736
Fix subst_prefix
2021-04-08 14:08:55 +02:00
Florian Diebold
5794a090bf
Get rid of walk_mut [not compiling]
2021-04-08 14:08:55 +02:00
Florian Diebold
1332e72d09
Fix TyBuilder methods
2021-04-08 14:08:55 +02:00
Florian Diebold
b24e6f6030
Impl Fold for CallableSig
2021-04-08 14:08:55 +02:00
Florian Diebold
7e541e69b1
Add HasInterner bounds
2021-04-08 14:08:55 +02:00
Florian Diebold
926bfef0ef
Allow unused
2021-04-08 14:08:55 +02:00
Florian Diebold
e5d294765a
Remove obsolete Cast impls
2021-04-08 14:08:54 +02:00
Florian Diebold
429bbbd39a
Make ToChalk implementations identity
2021-04-08 14:08:54 +02:00
Florian Diebold
77d974ae6b
Replace all the types by their Chalk versions
2021-04-08 14:08:54 +02:00
bors[bot]
855a739ebf
Merge #8207
...
8207: Show dbg remove assist on empty contents r=edwin0cheng a=ivan770
Closes #8185
Co-authored-by: ivan770 <leshenko.ivan770@gmail.com>
Co-authored-by: ivan770 <ivan@ivan770.me>
2021-04-08 05:46:15 +00:00
bors[bot]
0c0d648b49
Merge #8412
...
8412: Emit folding ranges for multiline array literals r=Veykril a=Veykril
bors r+
Co-authored-by: Lukas Wirth <lukastw97@gmail.com>
2021-04-07 22:12:43 +00:00
Lukas Wirth
4b555ab1d9
Emit folding ranges for multiline array literals
2021-04-08 00:12:11 +02:00
bors[bot]
3191a93185
Merge #8409
...
8409: Various remaining fixes for Chalk IR move r=flodiebold a=flodiebold
CC #8313
Co-authored-by: Florian Diebold <flodiebold@gmail.com>
2021-04-07 18:51:36 +00:00
Florian Diebold
dc116f7ce2
Fix return type of Substitution::interned
2021-04-07 20:50:26 +02:00
Florian Diebold
be0084a0bc
InEnvironment::new takes a reference
2021-04-07 20:48:58 +02:00
Florian Diebold
d1b645d236
Make Canonical::new a free-standing function
2021-04-07 20:47:04 +02:00
Florian Diebold
9b4ecd3723
Fix return type of self_type_parameter
2021-04-07 20:41:52 +02:00
Florian Diebold
6777a4975d
Move hir_trait_id to extension trait
2021-04-07 20:40:01 +02:00
Florian Diebold
86feac18e8
Change TraitRef::hir_fmt_ext to free-standing function
2021-04-07 20:34:58 +02:00
bors[bot]
6379839c82
Merge #8408
...
8408: Update `OUT_DIR` diagnostic to match setting r=jonas-schievink a=jonas-schievink
The setting was renamed, so the diagnostic should follow
bors r+
Co-authored-by: Jonas Schievink <jonasschievink@gmail.com>
2021-04-07 18:27:03 +00:00
Jonas Schievink
053dac88ca
Update OUT_DIR
diagnostic to match setting
2021-04-07 20:19:28 +02:00