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

Public Member Functions

Export::SourceFragmentvisit (OOModel::Expression *expression)
 
Export::SourceFragmentvisitFunctionPointer (OOModel::PointerTypeExpression *functionPointer, const QString &name={})
 
- 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 ()
 

Private Member Functions

template<typename T >
Export::SourceFragmentoptional (T *node)
 

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

◆ optional()

template<typename T >
Export::SourceFragment * CppExport::ExpressionVisitor::optional ( T *  node)
private

◆ visit()

SourceFragment * CppExport::ExpressionVisitor::visit ( OOModel::Expression expression)

◆ visitFunctionPointer()

SourceFragment * CppExport::ExpressionVisitor::visitFunctionPointer ( OOModel::PointerTypeExpression functionPointer,
const QString &  name = {} 
)