Polly 22.0.0git
cpp_generator::class_printer Struct Referenceabstract

#include <cpp.h>

Inheritance diagram for cpp_generator::class_printer:
[legend]

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_classclazz
const std::string cppstring
cpp_generatorgenerator
const bool declarations

Detailed Description

Definition at line 182 of file cpp.h.

Constructor & Destructor Documentation

◆ class_printer()

cpp_generator::class_printer::class_printer ( std::ostream & os,
const isl_class & clazz,
cpp_generator & generator,
bool declarations )

Member Function Documentation

◆ get_param()

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().

◆ next_variant()

bool cpp_generator::class_printer::next_variant ( FunctionDecl * fd,
std::vector< bool > & convert )

Definition at line 331 of file cpp.cc.

References generator, n, and type.

Referenced by print_method_variants().

◆ print_constructors()

void cpp_generator::class_printer::print_constructors ( )

◆ print_descendent_overloads()

void cpp_generator::class_printer::print_descendent_overloads ( FunctionDecl * fd,
const std::string & name )

Definition at line 441 of file cpp.cc.

References arg, clazz, generator, name, pos(), print_method(), sub(), and type.

Referenced by print_method_group().

◆ print_get_method()

virtual void cpp_generator::class_printer::print_get_method ( FunctionDecl * fd)
pure virtual

◆ print_method() [1/2]

virtual void cpp_generator::class_printer::print_method ( const ConversionMethod & method)
pure virtual

◆ print_method() [2/2]

virtual void cpp_generator::class_printer::print_method ( const Method & method)
pure virtual

◆ print_method_group()

void cpp_generator::class_printer::print_method_group ( const function_set & methods,
const std::string & name )

◆ print_method_header()

◆ print_method_variants()

void cpp_generator::class_printer::print_method_variants ( FunctionDecl * fd,
const std::string & name )

◆ print_methods()

void cpp_generator::class_printer::print_methods ( )

◆ print_set_enums() [1/2]

void cpp_generator::class_printer::print_set_enums ( )

Definition at line 309 of file cpp.cc.

References clazz, and print_set_enums().

◆ print_set_enums() [2/2]

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().

◆ want_descendent_overloads()

virtual bool cpp_generator::class_printer::want_descendent_overloads ( const function_set & methods)
pure virtual

Member Data Documentation

◆ clazz

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().

◆ cppstring

◆ declarations

◆ generator

cpp_generator& cpp_generator::class_printer::generator

◆ os

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().


The documentation for this struct was generated from the following files: