Package com.yahoo.searchlib.expression
Class FloatResultNode
- java.lang.Object
-
- com.yahoo.vespa.objects.Selectable
-
- com.yahoo.vespa.objects.Identifiable
-
- com.yahoo.searchlib.expression.ResultNode
-
- com.yahoo.searchlib.expression.SingleResultNode
-
- com.yahoo.searchlib.expression.NumericResultNode
-
- com.yahoo.searchlib.expression.FloatResultNode
-
- All Implemented Interfaces:
Cloneable
,Comparable<ResultNode>
public class FloatResultNode extends NumericResultNode
This result holds a float value.- Author:
- baldersheim, Simon Thoresen Hult
-
-
Field Summary
Fields Modifier and Type Field Description static int
classId
-
Constructor Summary
Constructors Constructor Description FloatResultNode()
Constructs an empty result node.FloatResultNode(double value)
Constructs an instance of this class with given value.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(ResultNode rhs)
In-place addition of this result with another.void
divide(ResultNode rhs)
In-place division of this result with another.double
getFloat()
Returns the float representation of this result.long
getInteger()
Returns the integer representation of this result.static FloatResultNode
getNegativeInfinity()
Will provide the smallest possible valueObject
getNumber()
Return a java numeric, either Double or Long, depending on the underlying container.static FloatResultNode
getPositiveInfinity()
Will provide the largest possible valuebyte[]
getRaw()
Returns the raw byte array representation of this result.String
getString()
Returns the string representation of this result.int
hashCode()
void
max(ResultNode rhs)
Swaps the numerical value of this node with the larger of this and the other.void
min(ResultNode rhs)
Swaps the numerical value of this node with the smaller of this and the other.void
modulo(ResultNode rhs)
In-place modulo of this result with another.void
multiply(ResultNode rhs)
In-place multiplication of this result with another.void
negate()
Negate the value contained within the result node.protected int
onCmp(ResultNode rhs)
This method must be implemented by all subclasses of this to allow ordering of results.protected void
onDeserialize(com.yahoo.vespa.objects.Deserializer buf)
protected int
onGetClassId()
protected void
onSerialize(com.yahoo.vespa.objects.Serializer buf)
void
set(ResultNode rhs)
This method must be implemented by all subclasses of this to allow new results to be calculated.FloatResultNode
setValue(double value)
Sets the value of this result.void
visitMembers(com.yahoo.vespa.objects.ObjectVisitor visitor)
-
Methods inherited from class com.yahoo.searchlib.expression.NumericResultNode
getValue
-
Methods inherited from class com.yahoo.searchlib.expression.ResultNode
compareTo, equals
-
-
-
-
Method Detail
-
setValue
public FloatResultNode setValue(double value)
Sets the value of this result.- Parameters:
value
- The value to set.- Returns:
- This, to allow chaining.
-
onGetClassId
protected int onGetClassId()
- Overrides:
onGetClassId
in classNumericResultNode
-
onSerialize
protected void onSerialize(com.yahoo.vespa.objects.Serializer buf)
- Overrides:
onSerialize
in classcom.yahoo.vespa.objects.Identifiable
-
onDeserialize
protected void onDeserialize(com.yahoo.vespa.objects.Deserializer buf)
- Overrides:
onDeserialize
in classcom.yahoo.vespa.objects.Identifiable
-
getInteger
public long getInteger()
Description copied from class:ResultNode
Returns the integer representation of this result.- Specified by:
getInteger
in classResultNode
- Returns:
- The value of this.
-
getFloat
public double getFloat()
Description copied from class:ResultNode
Returns the float representation of this result.- Specified by:
getFloat
in classResultNode
- Returns:
- The value of this.
-
getString
public String getString()
Description copied from class:ResultNode
Returns the string representation of this result.- Specified by:
getString
in classResultNode
- Returns:
- The value of this.
-
getRaw
public byte[] getRaw()
Description copied from class:ResultNode
Returns the raw byte array representation of this result.- Specified by:
getRaw
in classResultNode
- Returns:
- The value of this.
-
add
public void add(ResultNode rhs)
Description copied from class:SingleResultNode
In-place addition of this result with another.- Specified by:
add
in classSingleResultNode
- Parameters:
rhs
- The result to add to this.
-
negate
public void negate()
Description copied from class:ResultNode
Negate the value contained within the result node.- Overrides:
negate
in classResultNode
-
multiply
public void multiply(ResultNode rhs)
Description copied from class:NumericResultNode
In-place multiplication of this result with another.- Specified by:
multiply
in classNumericResultNode
- Parameters:
rhs
- The result to multiply with this.
-
divide
public void divide(ResultNode rhs)
Description copied from class:NumericResultNode
In-place division of this result with another.- Specified by:
divide
in classNumericResultNode
- Parameters:
rhs
- The result to divide this by.
-
modulo
public void modulo(ResultNode rhs)
Description copied from class:NumericResultNode
In-place modulo of this result with another.- Specified by:
modulo
in classNumericResultNode
- Parameters:
rhs
- The result to modulo this with.
-
min
public void min(ResultNode rhs)
Description copied from class:SingleResultNode
Swaps the numerical value of this node with the smaller of this and the other.- Specified by:
min
in classSingleResultNode
- Parameters:
rhs
- The other result to evaluate.
-
max
public void max(ResultNode rhs)
Description copied from class:SingleResultNode
Swaps the numerical value of this node with the larger of this and the other.- Specified by:
max
in classSingleResultNode
- Parameters:
rhs
- The other result to evaluate.
-
getNumber
public Object getNumber()
Description copied from class:NumericResultNode
Return a java numeric, either Double or Long, depending on the underlying container.- Specified by:
getNumber
in classNumericResultNode
- Returns:
- The underlying numeric value.
-
onCmp
protected int onCmp(ResultNode rhs)
Description copied from class:ResultNode
This method must be implemented by all subclasses of this to allow ordering of results. This method is used by theCloneable
implementation.- Specified by:
onCmp
in classResultNode
- Parameters:
rhs
- The other node to compare with.- Returns:
- Comparable result.
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classcom.yahoo.vespa.objects.Identifiable
-
visitMembers
public void visitMembers(com.yahoo.vespa.objects.ObjectVisitor visitor)
- Overrides:
visitMembers
in classcom.yahoo.vespa.objects.Identifiable
-
set
public void set(ResultNode rhs)
Description copied from class:ResultNode
This method must be implemented by all subclasses of this to allow new results to be calculated.- Specified by:
set
in classResultNode
- Parameters:
rhs
- The node to get the result from.
-
getNegativeInfinity
public static FloatResultNode getNegativeInfinity()
Will provide the smallest possible value- Returns:
- the smallest possible FloatResultNode
-
getPositiveInfinity
public static FloatResultNode getPositiveInfinity()
Will provide the largest possible value- Returns:
- the smallest largest FloatResultNode
-
-