7426853ba2
`InferCtxt` contains six structures within `RefCell`s. Every time we create and dispose of (commit or rollback) a snapshot we have to `borrow_mut` each one of them. This commit moves the six structures under a single `RefCell`, which gives significant speed-ups by reducing the number of `borrow_mut` calls. To avoid runtime errors I had to reduce the lifetimes of dynamic borrows in a couple of places. |
||
---|---|---|
.. | ||
chalk_context | ||
lowering | ||
Cargo.toml | ||
dropck_outlives.rs | ||
evaluate_obligation.rs | ||
generic_types.rs | ||
implied_outlives_bounds.rs | ||
lib.rs | ||
normalize_erasing_regions.rs | ||
normalize_projection_ty.rs | ||
type_op.rs |