From f778e50b7183e727ec7ec1091b9b64471524704a Mon Sep 17 00:00:00 2001 From: Florian Diebold Date: Thu, 8 Apr 2021 20:39:43 +0200 Subject: Don't intern ProgramClause at all This seems to work best performance/memory-wise. --- crates/hir_ty/src/traits/chalk/interner.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'crates/hir_ty/src/traits/chalk') diff --git a/crates/hir_ty/src/traits/chalk/interner.rs b/crates/hir_ty/src/traits/chalk/interner.rs index ea42be932..f35695f6f 100644 --- a/crates/hir_ty/src/traits/chalk/interner.rs +++ b/crates/hir_ty/src/traits/chalk/interner.rs @@ -70,7 +70,7 @@ impl chalk_ir::interner::Interner for Interner { type InternedGoal = Arc>; type InternedGoals = Vec>; type InternedSubstitution = Interned; - type InternedProgramClause = Arc>; + type InternedProgramClause = chalk_ir::ProgramClauseData; type InternedProgramClauses = Interned>>>; type InternedQuantifiedWhereClauses = Interned>>>; type InternedVariableKinds = Interned; @@ -315,7 +315,7 @@ impl chalk_ir::interner::Interner for Interner { &self, data: chalk_ir::ProgramClauseData, ) -> Self::InternedProgramClause { - Arc::new(data) + data } fn program_clause_data<'a>( -- cgit v1.2.3