Envision
A visual programming IDE for object-oriented languages
List of all members | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions
CppExport::DeclarationVisitor Class Reference
Inheritance diagram for CppExport::DeclarationVisitor:
Export::Visitor< DeclarationVisitor, ExpressionVisitor, StatementVisitor, ElementVisitor, CppPrintContext >

Public Member Functions

template<typename Predicate >
CompositeFragmentaddMemberDeclarations (Class *classs, Predicate filter)
 
Export::SourceFragmentprintAnnotationsAndModifiers (OOModel::Declaration *declaration)
 
Export::SourceFragmentvisit (OOModel::Class *classs)
 
Export::SourceFragmentvisit (OOModel::Declaration *declaration)
 
Export::SourceFragmentvisit (OOModel::ExplicitTemplateInstantiation *explicitTemplateInstantiation)
 
Export::SourceFragmentvisit (OOModel::MetaDefinition *metaDefinition)
 
Export::SourceFragmentvisit (OOModel::Method *method)
 
Export::SourceFragmentvisit (OOModel::NameImport *nameImport)
 
Export::SourceFragmentvisit (OOModel::TypeAlias *typeAlias)
 
Export::SourceFragmentvisit (OOModel::VariableDeclaration *variableDeclaration)
 
Export::SourceFragmentvisitTopLevelClass (OOModel::Class *classs)
 
- Public Member Functions inherited from Export::Visitor< DeclarationVisitor, ExpressionVisitor, StatementVisitor, ElementVisitor, CppPrintContext >
 Visitor ()
 
 Visitor (CppPrintContext printContext)
 
 Visitor (CppPrintContext printContext, std::shared_ptr< VisitorData< CppPrintContext >> data)
 
 Visitor (std::shared_ptr< VisitorData< CppPrintContext >> data)
 
 ~Visitor ()
 
QList< ExportErrorerrors () const
 
CppPrintContext & printContext ()
 

Static Public Member Functions

static Export::SourceFragmentcompositeNodeComments (Model::CompositeNode *compositeNode, const QString &style)
 

Private Member Functions

template<typename Predicate >
Export::CompositeFragmentaddMemberDeclarations (OOModel::Class *classs, Predicate filter)
 
Export::SourceFragmentprintFriends (OOModel::Class *classs)
 

Static Private Member Functions

static bool metaCallFilter (OOModel::Expression *expression, bool equal)
 

Additional Inherited Members

- Protected Member Functions inherited from Export::Visitor< DeclarationVisitor, ExpressionVisitor, StatementVisitor, ElementVisitor, CppPrintContext >
std::shared_ptr< VisitorData< CppPrintContext > > data ()
 
SourceFragmentdeclaration (NodeType *node)
 
SourceFragmentelement (NodeType *node)
 
void error (const QString &errorMessage)
 
void error (Model::Node *node, const QString &errorMessage)
 
SourceFragmentexpression (NodeType *node)
 
CompositeFragmentlist (Model::TypedList< ListElement > *list, VisitorClass &&v, const QString &fragmentType={}, Predicate filter=nullptr)
 
CompositeFragmentlist (Model::TypedList< ListElement > *list, VisitorClass *v, const QString &fragmentType={}, Predicate filter=nullptr)
 
void notAllowed (Model::List *list)
 
void notAllowed (Model::Node *node)
 
void required (Model::Node *parent, Model::Node *node, const QString &childName)
 
SourceFragmentstatement (NodeType *node)
 

Member Function Documentation

◆ addMemberDeclarations() [1/2]

template<typename Predicate >
CompositeFragment* CppExport::DeclarationVisitor::addMemberDeclarations ( Class classs,
Predicate  filter 
)

◆ addMemberDeclarations() [2/2]

template<typename Predicate >
Export::CompositeFragment* CppExport::DeclarationVisitor::addMemberDeclarations ( OOModel::Class classs,
Predicate  filter 
)
private

◆ compositeNodeComments()

SourceFragment * CppExport::DeclarationVisitor::compositeNodeComments ( Model::CompositeNode compositeNode,
const QString &  style 
)
static

◆ metaCallFilter()

bool CppExport::DeclarationVisitor::metaCallFilter ( OOModel::Expression expression,
bool  equal 
)
staticprivate

◆ printAnnotationsAndModifiers()

SourceFragment * CppExport::DeclarationVisitor::printAnnotationsAndModifiers ( OOModel::Declaration declaration)

◆ printFriends()

SourceFragment * CppExport::DeclarationVisitor::printFriends ( OOModel::Class classs)
private

◆ visit() [1/8]

SourceFragment * CppExport::DeclarationVisitor::visit ( OOModel::Class classs)

◆ visit() [2/8]

SourceFragment * CppExport::DeclarationVisitor::visit ( OOModel::Declaration declaration)

◆ visit() [3/8]

SourceFragment * CppExport::DeclarationVisitor::visit ( OOModel::ExplicitTemplateInstantiation explicitTemplateInstantiation)

◆ visit() [4/8]

SourceFragment * CppExport::DeclarationVisitor::visit ( OOModel::MetaDefinition metaDefinition)

◆ visit() [5/8]

SourceFragment * CppExport::DeclarationVisitor::visit ( OOModel::Method method)

◆ visit() [6/8]

SourceFragment * CppExport::DeclarationVisitor::visit ( OOModel::NameImport nameImport)

◆ visit() [7/8]

SourceFragment * CppExport::DeclarationVisitor::visit ( OOModel::TypeAlias typeAlias)

◆ visit() [8/8]

SourceFragment * CppExport::DeclarationVisitor::visit ( OOModel::VariableDeclaration variableDeclaration)

◆ visitTopLevelClass()

SourceFragment * CppExport::DeclarationVisitor::visitTopLevelClass ( OOModel::Class classs)