Lines Matching refs:Substitution

72 TupleKindPtr TupleKind::apply(const Substitution &subs,  in apply()
82 static TupleKindPtr apply(const TupleKindPtr tuple, const Substitution &subs) in apply()
182 virtual TupleKindPtr apply(const Substitution &match,
235 TupleKindPtr Pair::apply(const Substitution &subs, const TupleKindPtr &self) in apply()
302 Kind Kind::apply(const Substitution &subs) const in apply()
320 Signature apply(const Substitution &match) const;
342 Signature Signature::apply(const Substitution &subs) const in apply()
355 static Substitution param_renamer(const std::vector<std::string> &params, in param_renamer()
358 Substitution renamer; in param_renamer()
401 static Substitution shared_param_renamer(const Signature &sig, const Kind &kind) in shared_param_renamer()
1919 static bool update_sub_base(Substitution &sub, const TupleKindPtr &general, in update_sub_base()
1944 static bool update_sub(Substitution &sub, const TupleKindPtr &general, in update_sub()
1969 static std::pair<bool, Substitution> specializer(const Kind &general, in specializer()
1972 Substitution specializer; in specializer()
1975 return { false, Substitution() }; in specializer()
1981 return { false, Substitution() }; in specializer()
2115 static Substitution assign(const TupleKindPtr &kind1, const TupleKindPtr &kind2) in assign()
2117 Substitution res; in assign()
2128 static Substitution compose(const Substitution &first, in compose()
2129 const Substitution &second) in compose()
2131 Substitution res = second; in compose()
2139 static Substitution compute_unifier(const TupleKindPtr &kind1,
2150 static Substitution combine_unifiers(const TupleKindPtr &kind1, in combine_unifiers()
2151 const TupleKindPtr &kind2, const Substitution &unifier) in combine_unifiers()
2157 return Substitution(); in combine_unifiers()
2171 static Substitution compute_pair_unifier(const TupleKindPtr &kind1, in compute_pair_unifier()
2176 return Substitution(); in compute_pair_unifier()
2195 static Substitution compute_unifier(const TupleKindPtr &kind1, in compute_unifier()
2226 static Substitution compute_unifier(const Kind &kind1, const Kind &kind2) in compute_unifier()
2228 Substitution unifier; in compute_unifier()
2231 return Substitution(); in compute_unifier()