Lines Matching refs:apply

72 TupleKindPtr TupleKind::apply(const Substitution &subs,  in apply()  function in TupleKind
82 static TupleKindPtr apply(const TupleKindPtr tuple, const Substitution &subs) in apply() function
84 return tuple->apply(subs, tuple); in apply()
182 virtual TupleKindPtr apply(const Substitution &match,
235 TupleKindPtr Pair::apply(const Substitution &subs, const TupleKindPtr &self) in apply() function in Pair
238 return TupleKindPtr(::apply(tuple1, subs), ::apply(tuple2, subs)); in apply()
302 Kind Kind::apply(const Substitution &subs) const in apply() function in Kind
307 applied.emplace_back(::apply(tuple, subs)); in apply()
320 Signature apply(const Substitution &match) const;
342 Signature Signature::apply(const Substitution &subs) const in apply() function in Signature
347 applied_args.emplace_back(arg.apply(subs)); in apply()
349 return { ret.apply(subs), applied_args }; in apply()
2225 res.emplace(kvp.first, apply(kvp.second, second)); in compose()
2244 auto k1 = apply(kind1, unifier); in combine_unifiers()
2245 auto k2 = apply(kind2, unifier); in combine_unifiers()
2346 auto renamed = specific.apply(rename); in unify()
2352 return { true, general.apply(unifier) }; in unify()
2416 const auto &specialized_instance = instance_kind.apply(subs); in specialize_anonymous_arg()
2421 return sig.apply(subs); in specialize_anonymous_arg()
2473 auto renamed_arg = match_arg.apply(rename); in print_matching_method()
2477 auto specialized_sig = sig.apply(rename).apply(specializer); in print_matching_method()
2823 auto derived = instance.kind.apply(rename); in print_arg_subclass_constructor()