Class TemplateCall
- java.lang.Object
-
- com.aquima.interactions.expressions.semantics.SemanticNodeBase
-
- com.aquima.interactions.expressions.semantics.nodes.TemplateCall
-
- All Implemented Interfaces:
ISemanticNode
public class TemplateCall extends SemanticNodeBase
The template expression is used to include a predefined expression (template) into the current expression.- Since:
- 6.4
- Author:
- O. Kerpershoek, F. van der Meer
-
-
Constructor Summary
Constructors Constructor Description TemplateCall(ISemanticTreeBuilder semantics, Position position, String templateName)
Constructs the node with the required arguments.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
collectScopedObjects(ScopedObjects resultSet)
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.ISemanticNode[]
getChildNodes()
This method returns an array containing the child nodes.IExpr
getTemplate()
This method returns the expression of the template that should be invoked.String
getTemplateName()
This method returns the name of the template that should be invoked.String
toString()
void
visit(ISemanticNodeVisitor visitor)
This method allows a type safe visitation of the node.-
Methods inherited from class com.aquima.interactions.expressions.semantics.SemanticNodeBase
addMessage, getDataType, getDomain, getMessages, getPosition, getType, hasMessage, isDerivedType, isMultivalue, setDerived, setDomain, setType, setType
-
-
-
-
Constructor Detail
-
TemplateCall
public TemplateCall(ISemanticTreeBuilder semantics, Position position, String templateName)
Constructs the node with the required arguments.- Parameters:
semantics
- Semantic builder that may be used to request type information.position
- Position information for the node.templateName
- The name of the template that should be invoked.
-
-
Method Detail
-
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.- Returns:
- Array containing the child nodes of this node.
-
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.- Parameters:
resultSet
- The object that should be used to add the names of the objects that need to be in scope to.
-
getTemplateName
public String getTemplateName()
This method returns the name of the template that should be invoked.- Returns:
- the name of the template that should be invoked.
-
getTemplate
public IExpr getTemplate()
This method returns the expression of the template that should be invoked.- Returns:
- the expression of the template that should be invoked.
-
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.- Parameters:
visitor
- The visitor that should be invoked for this node.
-
toString
public String toString()
- Overrides:
toString
in classSemanticNodeBase
-
-