Class SubExprNameExtractionVisitor

  • All Implemented Interfaces:
    CommonExpressionsVisitor2, ExpressionsBasisVisitor2, de.monticore.visitor.IVisitor

    public class SubExprNameExtractionVisitor
    extends java.lang.Object
    implements CommonExpressionsVisitor2, ExpressionsBasisVisitor2
    The usage of this class is to collect information about a call expression so that it is easier to resolve in the TypeCheck We take the call expression, and split it into a qualified name and an expression having a type such that type.qualifiedName(args) has the type of the call expression if no type can be found, the expression is set to the inner expression for compatibility reasons This makes it far easier to calculate the type of call expressions. To use this class:
    1. Create an inheritance traverser
    2. Create an instance of this class and set subExpressions. This is a shared state object that should be synchronized among the all name extracting visitors of the different languages
    3. Register the instance of this class to be a visitor for ExpressionsBasis and CommonExpressions in the traverser.
    , This class is used in DeriveSymTypeOfCommonExpressions.