Envision
A visual programming IDE for object-oriented languages
List of all members | Public Member Functions
OOModel::Expression Class Reference
Inheritance diagram for OOModel::Expression:
Core::Reflect< Base >

Public Member Functions

ExpressiontopMostExpressionParent () const
 Returns the expression node which is the top-most expression ancestor of this expression. More...
 
virtual std::unique_ptr< Typetype ()
 

Additional Inherited Members

- Protected Types inherited from Core::Reflect< Base >
using Super = Reflect< Base >
 

Member Function Documentation

◆ topMostExpressionParent()

Expression * OOModel::Expression::topMostExpressionParent ( ) const

Returns the expression node which is the top-most expression ancestor of this expression.

This might not be the expression node closest to the root in case where 'this' is inside a lambda for example. This method just walks up the hirarchy while encountering other expression or single list nodes.

◆ type()

std::unique_ptr< Type > OOModel::Expression::type ( )
virtual