Package com.yahoo.searchlib.expression
Class RawResultNode
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.RawResultNode
- All Implemented Interfaces:
Cloneable
,Comparable<ResultNode>
This result holds a byte array value.
- Author:
- baldersheim, Simon Thoresen Hult
-
Field Summary
-
Constructor Summary
ConstructorDescriptionConstructs an empty result node.RawResultNode
(byte[] value) Constructs an instance of this class with given byte buffer. -
Method Summary
Modifier and TypeMethodDescriptionvoid
add
(ResultNode rhs) In-place addition of this result with another.clone()
double
getFloat()
Returns the float representation of this result.long
Returns the integer representation of this result.static RawResultNode
Will provide the smallest possible valuestatic PositiveInfinityResultNode
Will provide the largest possible valuebyte[]
getRaw()
Returns the raw byte array representation of this result.Returns the string representation of this result.getValue()
Return a java native, either String, Double or Long, depending on the underlying container.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
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
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.setValue
(byte[] value) Sets the value of this result.toString()
void
visitMembers
(com.yahoo.vespa.objects.ObjectVisitor visitor) Methods inherited from class com.yahoo.searchlib.expression.ResultNode
compareTo, equals
Methods inherited from class com.yahoo.vespa.objects.Identifiable
create, createFromId, deserialize, deserializeOptional, deserializeWithId, equals, getClassId, getRawUtf8Bytes, getUtf8, putUtf8, registerClass, serialize, serializeOptional, serializeWithId
Methods inherited from class com.yahoo.vespa.objects.Selectable
select, select, selectMembers
-
Field Details
-
classId
public static final int classId
-
-
Constructor Details
-
RawResultNode
public RawResultNode()Constructs an empty result node. NOTE: This instance is broken until non-optional member data is set. -
RawResultNode
public RawResultNode(byte[] value) Constructs an instance of this class with given byte buffer.- Parameters:
value
- The value to assign to this.
-
-
Method Details
-
setValue
Sets the value of this result.- Parameters:
value
- The value to set.- Returns:
- This, to allow chaining.
-
onGetClassId
protected int onGetClassId()- Overrides:
onGetClassId
in classResultNode
-
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
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.
-
toString
- Overrides:
toString
in classcom.yahoo.vespa.objects.Identifiable
-
onCmp
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
-
clone
- Overrides:
clone
in classcom.yahoo.vespa.objects.Identifiable
-
visitMembers
public void visitMembers(com.yahoo.vespa.objects.ObjectVisitor visitor) - Overrides:
visitMembers
in classcom.yahoo.vespa.objects.Identifiable
-
add
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.
-
min
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
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.
-
getValue
Description copied from class:SingleResultNode
Return a java native, either String, Double or Long, depending on the underlying container.- Specified by:
getValue
in classSingleResultNode
- Returns:
- The underlying numeric value.
-
set
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.
-
negate
public void negate()Description copied from class:ResultNode
Negate the value contained within the result node.- Overrides:
negate
in classResultNode
-
getNegativeInfinity
Will provide the smallest possible value- Returns:
- the smallest possible IntegerResultNode
-
getPositiveInfinity
Will provide the largest possible value- Returns:
- the smallest largest IntegerResultNode
-