Jonas Schievink
31175a7f88
internal: intern AttrInput
2021-05-25 00:50:19 +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
3e186d4778
internal: resolve attributes in name resolution
2021-05-19 15:17:57 +02:00
Jonas Schievink
b57462d60d
Interned<T>
: Only hash the pointer
2021-04-05 17:07:53 +02:00
Jonas Schievink
a0b50bcf1e
Make impl_internable!
macro public
2021-04-05 16:59:13 +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
85757be59a
Allow interning strings
2021-04-03 01:00:45 +02:00
Jonas Schievink
e73d26fa62
Stop using an upgradeable read lock in interning
...
Only one upgradeable read lock can be handed out at the same time, and
we never acquire a non-upgradeable read lock, so this has no benefit
over just using a write lock in the first place.
2021-04-02 20:46:37 +02:00
Jonas Schievink
6e227b80a7
Remove ?Sized
on PartialEq
/Eq
impls
2021-04-02 18:26:34 +02:00
Jonas Schievink
76452956e4
Split Intern::drop
into hot and cold path
2021-04-02 18:11:08 +02:00
Jonas Schievink
afd83e0686
Remove unnecessary region, relax Sized
bounds
2021-04-01 22:24:40 +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