diff options
Diffstat (limited to 'src/trans/trans_list.cpp')
-rw-r--r-- | src/trans/trans_list.cpp | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/src/trans/trans_list.cpp b/src/trans/trans_list.cpp index f6a14c7e..04e1e9a1 100644 --- a/src/trans/trans_list.cpp +++ b/src/trans/trans_list.cpp @@ -43,12 +43,11 @@ t_cb_generic Trans_Params::get_cb() const { return monomorphise_type_get_cb(sp, &self_type, &pp_impl, &pp_method); } -::HIR::Path Trans_Params::monomorph(const ::HIR::Crate& crate, const ::HIR::Path& p) const +::HIR::Path Trans_Params::monomorph(const ::StaticTraitResolve& resolve, const ::HIR::Path& p) const { TRACE_FUNCTION_F(p); auto rv = monomorphise_path_with(sp, p, this->get_cb(), false); - ::StaticTraitResolve resolve { crate }; TU_MATCH(::HIR::Path::Data, (rv.m_data), (e2), (Generic, for(auto& arg : e2.m_params.m_types) @@ -76,24 +75,22 @@ t_cb_generic Trans_Params::get_cb() const return rv; } -::HIR::GenericPath Trans_Params::monomorph(const ::HIR::Crate& crate, const ::HIR::GenericPath& p) const +::HIR::GenericPath Trans_Params::monomorph(const ::StaticTraitResolve& resolve, const ::HIR::GenericPath& p) const { - return ::HIR::GenericPath( p.m_path, this->monomorph(crate, p.m_params) ); + return ::HIR::GenericPath( p.m_path, this->monomorph(resolve, p.m_params) ); } -::HIR::PathParams Trans_Params::monomorph(const ::HIR::Crate& crate, const ::HIR::PathParams& p) const +::HIR::PathParams Trans_Params::monomorph(const ::StaticTraitResolve& resolve, const ::HIR::PathParams& p) const { auto rv = monomorphise_path_params_with(sp, p, this->get_cb(), false); - ::StaticTraitResolve resolve { crate }; for(auto& arg : rv.m_types) resolve.expand_associated_types(sp, arg); return rv; } -::HIR::TypeRef Trans_Params::monomorph(const ::HIR::Crate& crate, const ::HIR::TypeRef& ty) const +::HIR::TypeRef Trans_Params::monomorph(const ::StaticTraitResolve& resolve, const ::HIR::TypeRef& ty) const { auto rv = monomorphise_type_with(sp, ty, this->get_cb(), false); - ::StaticTraitResolve resolve { crate }; resolve.expand_associated_types(sp, rv); return rv; } |