Class AllVariable

  • All Implemented Interfaces:
    ISemanticNode, IVariable

    public class AllVariable
    extends SemanticNodeBase
    implements IVariable
    The All expression is used to collect all the instances of a specified entity type.
    Since:
    6.4
    Author:
    O. Kerpershoek, F. van der Meer
    • Constructor Detail

      • AllVariable

        public AllVariable​(ISemanticTreeBuilder semantics,
                           Position position,
                           Identifier id)
        Constructs the expression with the required arguments.
        Parameters:
        semantics - Semantic builder that may be used to request type information.
        position - The position information for the node.
        id - The identifier of which all instances should be collected.
    • Method Detail

      • getIdentifier

        public Identifier getIdentifier()
        Description copied from interface: IVariable
        This method returns the identifier (entity name) of the variable.
        Specified by:
        getIdentifier in interface IVariable
        Returns:
        the identifier (entity name) of the variable.
      • getRootEntity

        public Identifier getRootEntity()
        Description copied from interface: IVariable
        This method returns the name of the entity that needs to be in scope to be able to resolve the variable.
        Specified by:
        getRootEntity in interface IVariable
        Returns:
        the name of the entity that needs to be in scope to be able to resolve the variable.
      • collectScopedObjects

        public void collectScopedObjects​(ScopedObjects resultSet)
        Description copied from interface: ISemanticNode
        This method may be used to collect the names of the objects that need to be in scope in order to evaluate the expression of this node. The object passed to the method will be enriched with the names of the objects that need to be in scope.
        Specified by:
        collectScopedObjects in interface ISemanticNode
        Parameters:
        resultSet - The object that should be used to add the names of the objects that need to be in scope to.
      • getChildNodes

        public ISemanticNode[] getChildNodes()
        Description copied from interface: ISemanticNode
        This method returns an array containing the child nodes. The order of the child nodes in the array is not defined, and the array may be empty for nodes that do not have child nodes.
        Specified by:
        getChildNodes in interface ISemanticNode
        Returns:
        Array containing the child nodes of this node.
      • toAttributePath

        public String toAttributePath()
        Description copied from interface: IVariable
        This method returns a string containing a readable representation of the variable.
        Specified by:
        toAttributePath in interface IVariable
        Returns:
        a string containing a readable representation of the variable.
      • visit

        public void visit​(ISemanticNodeVisitor visitor)
        Description copied from interface: ISemanticNode
        This method allows a type safe visitation of the node. The visit method will not invoke the visitor for any child nodes.
        Specified by:
        visit in interface ISemanticNode
        Parameters:
        visitor - The visitor that should be invoked for this node.