Clemens Wasser
47747cd412
Apply some clippy suggestions
2021-06-21 16:40:21 +02:00
Lukas Wirth
95c8c65139
Nest all the or-patterns!
2021-06-17 17:37:14 +02:00
Aleksey Kladov
c2015e7d18
internal: more natural order of sources for TypeParam
...
We usually use first (left) variant of `Either` for "usual" case, and
use right for odd things. For example, pat source is Pat | SelfParam.
2021-06-14 22:42:43 +03:00
Maan2003
6cc6dee9e9
clippy::useless_conversion
2021-06-13 09:25:55 +05:30
Maan2003
c9b4ac5be4
clippy::redudant_borrow
2021-06-13 09:24:16 +05:30
Matthias Krüger
9452dfaac7
NFC: remove redundant clones (clippy::perf)
2021-06-03 15:32:46 +02:00
Jonas Schievink
28e3e683b2
ItemTree: make variant fields inherit the enum's visibility
2021-06-03 14:26:26 +02:00
cynecx
54d60fdee9
hir_ty: use async ret type for inference inside async bodies
2021-05-29 18:17:45 +02:00
Laurențiu Nicola
2268a220e4
Don't store supertraits in ItemTree
2021-05-27 16:52:30 +03:00
Jonas Schievink
fe910c7bc4
Reduce memory usage a bit
2021-05-26 01:26:16 +02:00
Jonas Schievink
356dd3d909
Clean up ItemTree lowering now that it's 1:1
2021-05-26 01:09:31 +02:00
Jonas Schievink
b52df91877
Stop expanding UseTrees during ItemTree lowering
2021-05-26 01:01:58 +02:00
Jonas Schievink
533e9207d3
Intern GenericArgs
...
This shaves off another ~4 mb or so
2021-05-24 15:35:46 +02:00
Jonas Schievink
8ebb8d29e1
internal: intern TypeBound
s
...
Doesn't save much memory (~2 mb), but interning things is generally a
good pattern to follow
2021-05-24 15:13:23 +02:00
Jonas Schievink
15ff7faf3d
Render where clauses and more generic params
2021-05-23 02:51:58 +02:00
Jonas Schievink
380293d6c2
Pretty-print generic parameters
2021-05-23 01:15:26 +02:00
Jonas Schievink
c22ccd07fe
ItemTree: pretty-print all paths
2021-05-23 00:37:15 +02:00
Jonas Schievink
8d13864440
Add an ItemTree pretty-printer
2021-05-21 23:45:27 +02:00
Jonas Schievink
45f4a1e559
Remove StructDefKind
2021-05-21 21:08:06 +02:00
Jonas Schievink
d00bc9c2fc
Don't lower extern block in the ItemTree
2021-05-21 18:27:25 +02:00
Jonas Schievink
9cf8d325a2
Precompute macro fragment kind
2021-05-09 01:36:06 +02:00
Jonas Schievink
976a3226fe
Don't store call-site text offsets in hygiene info
2021-05-06 19:59:54 +02:00
Jonas Schievink
e2c1da36f5
Support macros in pattern position
2021-04-11 01:25:50 +02:00
Jonas Schievink
7c0c713a10
Intern GenericParams
...
Also share the same instance between `ItemTree` and `generic_params`
query.
2021-04-05 03:50:10 +02:00
Jonas Schievink
adcf18e27d
Add GenericParams::shrink_to_fit
...
Reduces memory usage by over 10 MB
2021-04-05 03:32:43 +02:00
Aleksey Kladov
d1474ae518
Check if bitflags deps pulls its weight
...
Bitflags is generally a good dependency -- it's lightweight, well
maintained and embraced by the ecosystem.
I wonder, however, do we really need it? Doesn't feel like it adds much
to be honest.
2021-04-04 12:06:01 +03:00
Jonas Schievink
ee4b5a34d8
Use bitflags to compress function properties
...
Very minor savings, only 1 MB or so
2021-04-03 20:58:42 +02:00
Jonas Schievink
f7e6b186e1
Intern ModPath
in Import
...
Minor savings only
2021-04-03 20:57:25 +02:00
Jonas Schievink
39d992ef55
Intern Attr, MacroCall and Path components
2021-04-01 20:35:21 +02:00
Jonas Schievink
b00266b79f
Global TypeRef/TraitRef interning
2021-04-01 19:46:43 +02:00
Edwin Cheng
6a3f2ce76c
Fix block inner item defined in macro
2021-04-01 03:45:21 +08:00
Lukas Wirth
b4bb774381
Remove TraitRef::Error
2021-03-29 18:41:21 +02:00
Lukas Wirth
c2a63b97a8
Rename target_ty to self_ty
2021-03-29 17:47:47 +02:00
Lukas Wirth
bb6e1bf811
Lower traits to TraitRef instead of TypeRef
2021-03-29 17:11:28 +02:00
Edwin Cheng
8ce15b02de
Fix recursive macro statement expansion
2021-03-26 04:21:15 +08:00
bors[bot]
d3da042a62
Merge #8082
...
8082: Proper handle inner recursive macro rules cases r=edwin0cheng a=edwin0cheng
Fixes #7645
cc @jonas-schievink
bors r+
Co-authored-by: Edwin Cheng <edwin0cheng@gmail.com>
2021-03-18 12:25:44 +00:00
Edwin Cheng
13f30e9ef5
Handle inner recursive macro rules cases
2021-03-18 20:19:15 +08:00
Jonas Schievink
622c780a8c
ItemTree: lower attributes on fn parameters
2021-03-17 18:28:27 +01:00
oxalica
87171238c6
Use hir formatter more
2021-03-16 01:04:33 +08:00
oxalica
2bb8956a10
Introduce FunctionQualifier for hir::FunctionData
2021-03-16 01:03:07 +08:00
Laurențiu Nicola
fc9eed4836
Use upstream cov-mark
2021-03-08 22:19:44 +02:00
Jonas Schievink
5d99ba1d9a
Make ModPath
's representation private
2021-02-04 20:49:24 +01:00
Jonas Schievink
003ee0086a
Intern TypeRef
s in the containing ItemTree
2021-02-04 19:23:56 +01:00
Jonas Schievink
eda1cb7ceb
Add a FIXME to ItemTree
2021-02-03 18:14:39 +01:00
Jonas Schievink
2aebde6c0b
ItemTree: Treat items in MacroStmts
as top-level
2021-01-28 18:00:10 +01:00
Laurențiu Nicola
5ed5a542fb
Derive Default on ItemTree
2021-01-25 14:12:53 +02:00
Jonas Schievink
8916b0c6cb
Remove unused field
2021-01-21 21:12:26 +01:00
Jonas Schievink
d62c9c6c63
Fix lowering with multiple block expressions
2021-01-21 16:23:22 +01:00
Jonas Schievink
c5ed2284b5
Create a mapping from blocks to inner items
2021-01-20 15:00:28 +01:00
Aramis Razzaghipour
1d103cf087
Use ‘index’ terminology for arena consistently
2021-01-17 18:38:08 +11:00