Polly 22.0.0git
|
#include <cpp.h>
Public Member Functions | |
class_printer (std::ostream &os, const isl_class &clazz, cpp_generator &generator, bool declarations) | |
void | print_constructors () |
void | print_methods () |
bool | next_variant (FunctionDecl *fd, std::vector< bool > &convert) |
void | print_method_variants (FunctionDecl *fd, const std::string &name) |
virtual bool | want_descendent_overloads (const function_set &methods)=0 |
void | print_descendent_overloads (FunctionDecl *fd, const std::string &name) |
void | print_method_group (const function_set &methods, const std::string &name) |
virtual void | print_method (const Method &method)=0 |
virtual void | print_method (const ConversionMethod &method)=0 |
virtual void | print_get_method (FunctionDecl *fd)=0 |
void | print_set_enums (FunctionDecl *fd) |
void | print_set_enums () |
ParmVarDecl * | get_param (FunctionDecl *fd, int pos, const std::vector< bool > &convert) |
void | print_method_header (const Method &method, const cpp_type_printer &type_printer) |
Public Attributes | |
std::ostream & | os |
const isl_class & | clazz |
const std::string | cppstring |
cpp_generator & | generator |
const bool | declarations |
cpp_generator::class_printer::class_printer | ( | std::ostream & | os, |
const isl_class & | clazz, | ||
cpp_generator & | generator, | ||
bool | declarations ) |
Definition at line 1305 of file cpp.cc.
References clazz, cpp_generator::cpp_generator(), cppstring, declarations, generator, os, and cpp_generator::type2cpp().
Referenced by plain_cpp_generator::plain_printer::plain_printer().
ParmVarDecl * cpp_generator::class_printer::get_param | ( | FunctionDecl * | fd, |
int | pos, | ||
const std::vector< bool > & | convert ) |
Definition at line 567 of file cpp.cc.
References generator, and pos().
Referenced by print_method_variants().
bool cpp_generator::class_printer::next_variant | ( | FunctionDecl * | fd, |
std::vector< bool > & | convert ) |
void cpp_generator::class_printer::print_constructors | ( | ) |
Definition at line 277 of file cpp.cc.
References clazz, and print_method().
Referenced by template_cpp_generator::class_printer::print_all_methods(), and plain_cpp_generator::plain_printer::print_public_methods().
void cpp_generator::class_printer::print_descendent_overloads | ( | FunctionDecl * | fd, |
const std::string & | name ) |
|
pure virtual |
Implemented in plain_cpp_generator::decl_printer, plain_cpp_generator::impl_printer, template_cpp_generator::method_decl_printer, and template_cpp_generator::method_impl_printer.
References pos().
Referenced by print_method_variants().
|
pure virtual |
|
pure virtual |
Implemented in plain_cpp_generator::decl_printer, plain_cpp_generator::impl_printer, and template_cpp_generator::class_printer.
Referenced by print_constructors(), print_descendent_overloads(), print_method_variants(), and print_set_enums().
void cpp_generator::class_printer::print_method_group | ( | const function_set & | methods, |
const std::string & | name ) |
Definition at line 466 of file cpp.cc.
References clazz, has_single_isl_argument(), name, print_descendent_overloads(), print_method_variants(), single_local(), and want_descendent_overloads().
Referenced by print_methods().
void cpp_generator::class_printer::print_method_header | ( | const Method & | method, |
const cpp_type_printer & | type_printer ) |
Definition at line 620 of file cpp.cc.
References arg, cpp_type_printer::class_type(), Method::constructor, cppstring, declarations, Method::fd, generator, Method::get_param(), Method::kind, Method::member_method, Method::name, name, os, cpp_type_printer::param(), Method::param_needs_copy(), Method::print_cpp_arg_list(), cpp_type_printer::return_type(), Method::static_method, and type.
Referenced by plain_cpp_generator::plain_printer::print_full_method_header(), and template_cpp_generator::class_printer::print_method_header().
void cpp_generator::class_printer::print_method_variants | ( | FunctionDecl * | fd, |
const std::string & | name ) |
Definition at line 375 of file cpp.cc.
References clazz, Method::clazz, isl_class::copied_from, Method::fd, get_param(), Method::kind, Method::member_method, Method::name, name, next_variant(), Method::num_params(), pos(), print_get_method(), and print_method().
Referenced by print_method_group().
void cpp_generator::class_printer::print_methods | ( | ) |
Definition at line 285 of file cpp.cc.
References clazz, and print_method_group().
Referenced by template_cpp_generator::class_printer::print_all_methods(), and plain_cpp_generator::plain_printer::print_public_methods().
void cpp_generator::class_printer::print_set_enums | ( | ) |
Definition at line 309 of file cpp.cc.
References clazz, and print_set_enums().
void cpp_generator::class_printer::print_set_enums | ( | FunctionDecl * | fd | ) |
Definition at line 297 of file cpp.cc.
References clazz, print_method(), and set.
Referenced by plain_cpp_generator::plain_printer::print_public_methods(), and print_set_enums().
|
pure virtual |
Implemented in plain_cpp_generator::plain_printer, and template_cpp_generator::class_printer.
References name.
Referenced by print_method_group().
const isl_class& cpp_generator::class_printer::clazz |
Definition at line 184 of file cpp.h.
Referenced by class_printer(), template_cpp_generator::class_printer::class_printer(), plain_cpp_generator::decl_printer::decl_printer(), plain_cpp_generator::impl_printer::impl_printer(), plain_cpp_generator::plain_printer::plain_printer(), plain_cpp_generator::impl_printer::print_check_ptr_start(), plain_cpp_generator::decl_printer::print_class_factory(), plain_cpp_generator::impl_printer::print_class_factory(), print_constructors(), plain_cpp_generator::impl_printer::print_copy_assignment(), plain_cpp_generator::impl_printer::print_ctx(), print_descendent_overloads(), plain_cpp_generator::decl_printer::print_destructor(), plain_cpp_generator::impl_printer::print_destructor(), plain_cpp_generator::decl_printer::print_downcast(), plain_cpp_generator::impl_printer::print_downcast(), plain_cpp_generator::decl_printer::print_get_method(), plain_cpp_generator::impl_printer::print_get_method(), template_cpp_generator::method_decl_printer::print_get_method(), print_method_group(), plain_cpp_generator::impl_printer::print_method_return(), print_method_variants(), print_methods(), plain_cpp_generator::decl_printer::print_persistent_callback_data(), plain_cpp_generator::plain_printer::print_persistent_callback_prototype(), plain_cpp_generator::plain_printer::print_persistent_callback_setter_prototype(), plain_cpp_generator::decl_printer::print_persistent_callbacks(), plain_cpp_generator::impl_printer::print_persistent_callbacks(), plain_cpp_generator::decl_printer::print_protected_constructors(), plain_cpp_generator::impl_printer::print_protected_constructors(), plain_cpp_generator::decl_printer::print_ptr(), plain_cpp_generator::impl_printer::print_ptr(), plain_cpp_generator::impl_printer::print_public_constructors(), print_set_enums(), print_set_enums(), plain_cpp_generator::impl_printer::print_set_persistent_callback(), plain_cpp_generator::plain_printer::print_special(), plain_cpp_generator::impl_printer::print_stream_insertion(), and plain_cpp_generator::decl_printer::print_subclass_type().
const std::string cpp_generator::class_printer::cppstring |
Definition at line 185 of file cpp.h.
Referenced by class_printer(), plain_cpp_generator::print_class(), plain_cpp_generator::decl_printer::print_class_factory(), plain_cpp_generator::impl_printer::print_class_factory(), plain_cpp_generator::print_class_impl(), plain_cpp_generator::decl_printer::print_copy_assignment(), plain_cpp_generator::impl_printer::print_copy_assignment(), plain_cpp_generator::impl_printer::print_ctx(), plain_cpp_generator::decl_printer::print_destructor(), plain_cpp_generator::impl_printer::print_destructor(), plain_cpp_generator::impl_printer::print_downcast(), print_method_header(), plain_cpp_generator::decl_printer::print_persistent_callbacks(), plain_cpp_generator::impl_printer::print_persistent_callbacks(), plain_cpp_generator::decl_printer::print_protected_constructors(), plain_cpp_generator::impl_printer::print_protected_constructors(), plain_cpp_generator::impl_printer::print_ptr(), plain_cpp_generator::decl_printer::print_public_constructors(), plain_cpp_generator::impl_printer::print_public_constructors(), plain_cpp_generator::impl_printer::print_stream_insertion(), and plain_cpp_generator::decl_printer::print_subclass_type().
const bool cpp_generator::class_printer::declarations |
Definition at line 187 of file cpp.h.
Referenced by class_printer(), plain_cpp_generator::plain_printer::print_full_method_header(), plain_cpp_generator::plain_printer::print_id_constructor_user_header(), plain_cpp_generator::plain_printer::print_id_user_header(), print_method_header(), template_cpp_generator::class_printer::print_method_template_arguments(), plain_cpp_generator::plain_printer::print_persistent_callback_prototype(), and plain_cpp_generator::plain_printer::print_persistent_callback_setter_prototype().
cpp_generator& cpp_generator::class_printer::generator |
Definition at line 186 of file cpp.h.
Referenced by class_printer(), get_param(), next_variant(), print_descendent_overloads(), and print_method_header().
std::ostream& cpp_generator::class_printer::os |
Definition at line 183 of file cpp.h.
Referenced by class_printer(), template_cpp_generator::class_printer::class_printer(), plain_cpp_generator::decl_printer::decl_printer(), plain_cpp_generator::impl_printer::impl_printer(), plain_cpp_generator::plain_printer::plain_printer(), plain_cpp_generator::impl_printer::print_arg_conversion(), plain_cpp_generator::impl_printer::print_argument_validity_check(), plain_cpp_generator::impl_printer::print_callback_body(), plain_cpp_generator::plain_printer::print_callback_data_decl(), plain_cpp_generator::impl_printer::print_callback_local(), template_cpp_generator::method_impl_printer::print_callback_method_body(), plain_cpp_generator::impl_printer::print_check_ptr(), plain_cpp_generator::impl_printer::print_check_ptr_end(), plain_cpp_generator::decl_printer::print_class_factory(), plain_cpp_generator::impl_printer::print_class_factory(), template_cpp_generator::method_impl_printer::print_constructor_body(), plain_cpp_generator::decl_printer::print_copy_assignment(), plain_cpp_generator::impl_printer::print_copy_assignment(), plain_cpp_generator::decl_printer::print_ctx(), plain_cpp_generator::impl_printer::print_ctx(), plain_cpp_generator::decl_printer::print_destructor(), plain_cpp_generator::impl_printer::print_destructor(), plain_cpp_generator::decl_printer::print_downcast(), plain_cpp_generator::impl_printer::print_downcast(), plain_cpp_generator::impl_printer::print_exceptional_execution_check(), plain_cpp_generator::plain_printer::print_full_method_header(), plain_cpp_generator::impl_printer::print_get_method(), plain_cpp_generator::impl_printer::print_id_constructor_user(), plain_cpp_generator::plain_printer::print_id_constructor_user_header(), plain_cpp_generator::impl_printer::print_id_user(), plain_cpp_generator::plain_printer::print_id_user_header(), plain_cpp_generator::decl_printer::print_isa_type_template(), plain_cpp_generator::impl_printer::print_method(), plain_cpp_generator::impl_printer::print_method(), template_cpp_generator::method_impl_printer::print_method_body(), print_method_header(), plain_cpp_generator::impl_printer::print_method_return(), plain_cpp_generator::decl_printer::print_method_separator(), template_cpp_generator::method_decl_printer::print_method_sig(), template_cpp_generator::method_impl_printer::print_method_sig(), template_cpp_generator::class_printer::print_method_template_arguments(), plain_cpp_generator::impl_printer::print_on_error_continue(), plain_cpp_generator::decl_printer::print_persistent_callback_data(), plain_cpp_generator::plain_printer::print_persistent_callback_prototype(), plain_cpp_generator::plain_printer::print_persistent_callback_setter_prototype(), plain_cpp_generator::decl_printer::print_persistent_callbacks(), plain_cpp_generator::impl_printer::print_persistent_callbacks(), plain_cpp_generator::decl_printer::print_protected_constructors(), plain_cpp_generator::impl_printer::print_protected_constructors(), plain_cpp_generator::decl_printer::print_ptr(), plain_cpp_generator::impl_printer::print_ptr(), plain_cpp_generator::decl_printer::print_public_constructors(), plain_cpp_generator::impl_printer::print_public_constructors(), template_cpp_generator::class_printer::print_return_type(), plain_cpp_generator::impl_printer::print_save_ctx(), plain_cpp_generator::impl_printer::print_set_persistent_callback(), plain_cpp_generator::plain_printer::print_special_id(), plain_cpp_generator::impl_printer::print_stream_insertion(), plain_cpp_generator::decl_printer::print_subclass_type(), plain_cpp_generator::impl_printer::print_wrapped_call(), and plain_cpp_generator::impl_printer::print_wrapped_call_checked().