rust-analyzer/crates/hir_ty/src
Alexandru Macovei fb1f544e24 Use Box'es to reduce size of hir_def::expr::Expr from 128 to 72 bytes (on 64bit systems)
Rationale: only a minority of variants used almost half the size.
By keeping large members (especially in Option) behind a box
the memory cost is only payed when the large variants are needed.

This reduces the size Vec<Expr> needs to allocate.
2021-04-06 16:01:31 +03:00
..
diagnostics Hide Binders internals more 2021-04-05 19:19:18 +02:00
infer Use Box'es to reduce size of hir_def::expr::Expr from 128 to 72 bytes (on 64bit systems) 2021-04-06 16:01:31 +03:00
tests Fix block inner item defined in macro 2021-04-01 03:45:21 +08:00
traits Fix shifting of binders in FnPointer 2021-04-05 23:00:50 +02:00
autoderef.rs Move ProjectionTy methods to extension trait 2021-04-05 21:58:01 +02:00
builder.rs Align FnPointer with Chalk 2021-04-05 22:23:30 +02:00
chalk_cast.rs Introduce GenericArg like in Chalk 2021-04-03 11:17:13 +02:00
chalk_ext.rs Move ProjectionTy methods to extension trait 2021-04-05 21:58:01 +02:00
db.rs Replace unused hir_ty::Lifetime with chalk equivalents 2021-04-05 20:46:15 +02:00
diagnostics.rs Prefer names from outer DefMap over extern prelude 2021-03-10 16:33:18 +01:00
display.rs Substitution::prefix -> subst_prefix 2021-04-05 21:58:53 +02:00
infer.rs Add Interner parameter to Binders::substitute 2021-04-05 19:21:01 +02:00
lib.rs Align FnPointer with Chalk 2021-04-05 22:23:30 +02:00
lower.rs Fix shifting of binders in FnPointer 2021-04-05 23:00:50 +02:00
method_resolution.rs Align FnPointer with Chalk 2021-04-05 22:23:30 +02:00
op.rs Rename TyKind::Unknown to Error 2021-04-05 15:39:06 +03:00
primitive.rs Use chalk_ir::Scalar directly 2021-02-28 11:06:37 +01:00
test_db.rs Create all ModuleIds through a DefMap method 2021-01-25 15:21:33 +01:00
tests.rs Access a body's block def maps via a method 2021-04-04 03:03:18 +02:00
traits.rs Pass interner to ProjectionTy::self_type_parameter 2021-04-05 17:37:24 +03:00
types.rs Align FnPointer with Chalk 2021-04-05 22:23:30 +02:00
utils.rs Rename shift_bound_vars{_out} to align with Chalk 2021-04-05 19:21:03 +02:00
walk.rs Fix shifting of binders in FnPointer 2021-04-05 23:00:50 +02:00