Class IfNode
java.lang.Object
com.yahoo.searchlib.rankingexpression.rule.ExpressionNode
com.yahoo.searchlib.rankingexpression.rule.CompositeNode
com.yahoo.searchlib.rankingexpression.rule.IfNode
- All Implemented Interfaces:
Serializable
A conditional branch of a ranking expression.
- Author:
- Simon Thoresen Hult, bratseth
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionIfNode(ExpressionNode condition, ExpressionNode trueExpression, ExpressionNode falseExpression) IfNode(ExpressionNode condition, ExpressionNode trueExpression, ExpressionNode falseExpression, Double trueProbability) Creates a new condition node. -
Method Summary
Modifier and TypeMethodDescriptionchildren()Returns a read-only list containing the immediate children of this composite.Returns the value of evaluating this expression over the given context.The average probability that the condition of this node will evaluate to true, or null if not knowninthashCode()Returns a hashcode computed from the data in thissetChildren(List<ExpressionNode> children) Returns a copy of this where the children is replaced by the given children.toString(StringBuilder string, SerializationContext context, Deque<String> path, CompositeNode parent) Returns this in serialized form.com.yahoo.tensor.TensorTypeReturns the type this will return if evaluated with the given context.Methods inherited from class com.yahoo.searchlib.rankingexpression.rule.ExpressionNode
equals, toString, toString
-
Constructor Details
-
IfNode
public IfNode(ExpressionNode condition, ExpressionNode trueExpression, ExpressionNode falseExpression) -
IfNode
public IfNode(ExpressionNode condition, ExpressionNode trueExpression, ExpressionNode falseExpression, Double trueProbability) Creates a new condition node.- Parameters:
condition- the condition of thistrueExpression- the expression to evaluate if the comparison is truefalseExpression- the expression to evaluate if the comparison is falsetrueProbability- the probability that the condition will evaluate to true, or null if not known.- Throws:
IllegalArgumentException- if trueProbability is non-null and not between 0.0 and 1.0
-
-
Method Details
-
children
Description copied from class:CompositeNodeReturns a read-only list containing the immediate children of this composite.- Specified by:
childrenin classCompositeNode- Returns:
- The children of this.
-
getCondition
-
getTrueExpression
-
getFalseExpression
-
getTrueProbability
The average probability that the condition of this node will evaluate to true, or null if not known -
toString
public StringBuilder toString(StringBuilder string, SerializationContext context, Deque<String> path, CompositeNode parent) Description copied from class:ExpressionNodeReturns this in serialized form.- Specified by:
toStringin classExpressionNode- Parameters:
string- the StringBuilder that will be appended tocontext- the serialization contextpath- the call path to this, used for cycle detection, or null if this is a rootparent- the parent node of this, or null if it is a root- Returns:
- the main script, referring to script instances.
-
type
Description copied from class:ExpressionNodeReturns the type this will return if evaluated with the given context.- Specified by:
typein classExpressionNode- Parameters:
context- the variable type bindings to use for this evaluation
-
evaluate
Description copied from class:ExpressionNodeReturns the value of evaluating this expression over the given context.- Specified by:
evaluatein classExpressionNode- Parameters:
context- the variable bindings to use for this evaluation
-
setChildren
Description copied from class:CompositeNodeReturns a copy of this where the children is replaced by the given children.- Specified by:
setChildrenin classCompositeNode
-
hashCode
public int hashCode()Description copied from class:ExpressionNodeReturns a hashcode computed from the data in this- Specified by:
hashCodein classExpressionNode
-