Lines Matching refs:instance
1273 virtual void print_class(const specialization &instance) const = 0;
1312 class_printer(const specialization &instance,
1346 const specialization &instance; member
1358 const specialization &instance, in class_printer() argument
1362 instance.template_class.clazz, instance_printer.generator, in class_printer()
1364 instance(instance), generator(instance_printer.generator) in class_printer()
1525 class_params = instance.kind.params(); in print_method_template_arguments()
1547 template_method_type_printer type_printer(sig, instance.kind); in print_method_header()
1582 method_decl_printer(const specialization &instance, in method_decl_printer()
1584 class_printer(instance, instance_printer, true) {} in method_decl_printer()
1631 const specialization &instance) in instance_sig() argument
1635 args[0] = instance.kind; in instance_sig()
1636 return { instance.kind, args }; in instance_sig()
1650 print_method_sig(method, instance_sig(method, instance), true); in print_get_method()
1658 method_impl_printer(const specialization &instance, in method_impl_printer()
1660 class_printer(instance, instance_printer, false) {} in method_impl_printer()
1679 const auto &base_name = instance.base_name(); in print_constructor_body()
1788 const auto &base_name = instance.base_name(); in print_callback_method_body()
1822 const auto &base_name = instance.base_name(); in print_method_body()
1856 print_non_empty_template(os, instance.kind.params()); in print_method_sig()
2347 auto maybe_unified = unify(kind, instance.kind); in add_specialization()
2351 instance.template_class.add_specialization(maybe_unified.second); in add_specialization()
2450 auto rename = shared_param_renamer(sig, instance.kind); in print_matching_method()
2452 auto maybe_specializer = specializer(renamed_arg, instance.kind); in print_matching_method()
2457 method, instance.kind); in print_matching_method()
2502 if (match_arg.size() != instance.kind.size()) in print_matching_method()
2529 print_method_sig(method, instance_sig(method, instance), true); in print_matching_method()
2562 auto anon = instance.template_class.is_anon(); in print_at_method()
2595 if (!contains(instance.template_class.class_name, kvp.first)) in print_special_method()
2769 void print_arg_subclass_constructor(const specialization &instance,
2771 void print_super_constructor(const specialization &instance) const;
2772 virtual void print_class(const specialization &instance) const override;
2796 const specialization &instance, in print_arg_subclass_constructor() argument
2799 const auto &class_name = instance.class_name(); in print_arg_subclass_constructor()
2801 auto derived = instance.kind.apply(rename); in print_arg_subclass_constructor()
2820 os << " &obj) : " << instance.base_name() << "(obj) {}\n"; in print_arg_subclass_constructor()
2845 const specialization &instance) const in print_super_constructor()
2847 bool hide = !instance.kind.is_anon_set(); in print_super_constructor()
2848 const auto &base_name = instance.base_name(); in print_super_constructor()
2858 os << " " << instance.class_name() in print_super_constructor()
2863 os << " static " << instance.class_name() << " from" in print_super_constructor()
2865 os << " return " << instance.class_name() << "(obj);\n"; in print_super_constructor()
2895 const specialization &instance) const in print_class()
2897 const auto &class_name = instance.class_name(); in print_class()
2898 auto params = instance.kind.params(); in print_class()
2905 print_bare_template_type(os, class_name, instance.kind); in print_class()
2906 os << " : public " << instance.base_name() << " {\n"; in print_class()
2913 print_arg_subclass_constructor(instance, params); in print_class()
2914 print_super_constructor(instance); in print_class()
2915 method_decl_printer(instance, *this).print_all_methods(); in print_class()
2929 virtual void print_class(const specialization &instance) const override;
2941 const specialization &instance) const in print_class()
2943 method_impl_printer(instance, *this).print_all_methods(); in print_class()