aboutsummaryrefslogtreecommitdiff
path: root/crates/hir_def/src/intern.rs
Commit message (Collapse)AuthorAgeFilesLines
* internal: intern `AttrInput`Jonas Schievink2021-05-241-0/+1
|
* Intern `GenericArgs`Jonas Schievink2021-05-241-0/+1
| | | | This shaves off another ~4 mb or so
* internal: intern `TypeBound`sJonas Schievink2021-05-241-0/+1
| | | | | Doesn't save much memory (~2 mb), but interning things is generally a good pattern to follow
* internal: resolve attributes in name resolutionJonas Schievink2021-05-191-1/+7
|
* `Interned<T>`: Only hash the pointerJonas Schievink2021-04-051-2/+8
|
* Make `impl_internable!` macro publicJonas Schievink2021-04-051-2/+7
|
* Intern `GenericParams`Jonas Schievink2021-04-051-1/+9
| | | | | Also share the same instance between `ItemTree` and `generic_params` query.
* Allow interning stringsJonas Schievink2021-04-031-9/+46
|
* Stop using an upgradeable read lock in interningJonas Schievink2021-04-021-5/+2
| | | | | | 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.
* Remove `?Sized` on `PartialEq`/`Eq` implsJonas Schievink2021-04-021-3/+5
|
* Split `Intern::drop` into hot and cold pathJonas Schievink2021-04-021-16/+23
|
* Remove unnecessary region, relax `Sized` boundsJonas Schievink2021-04-011-16/+12
|
* Intern Attr, MacroCall and Path componentsJonas Schievink2021-04-011-1/+2
|
* Global TypeRef/TraitRef interningJonas Schievink2021-04-011-0/+157