@Exported public static class Operand.RightOperand<T> extends Operand<T[]>
Expression
.
A right operand may be a single or multi-valued literal.Operand.LeftOperand<T>, Operand.RightOperand<T>
Constructor and Description |
---|
RightOperand()
Default constructor does not instantiate any fields.
|
RightOperand(Operand.RightOperand<T> source)
Copy constructor builds a new instance from the source.
|
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object obj)
Compares the specified object with this right operand for equality.
|
T[] |
get()
Returns the literals in the operand.
|
int |
hashCode()
Returns the hash code value for this right operand.
|
void |
set(T literal,
T... moreLiterals)
Sets the literal into the operand.
|
String |
toString()
Returns a string representation of this right operand.
|
getLiteral, setLiteral
public RightOperand()
public RightOperand(Operand.RightOperand<T> source)
source
- the source instance from which the state is replicated in the new instance.public T[] get()
@SafeVarargs public final void set(T literal, T... moreLiterals)
literal
- first literal for this operand.moreLiterals
- more optional literals for this operand.public String toString()
The string representation is the list of all literals in this right operand.
toString
in class Object
Object.toString()
public boolean equals(Object obj)
Returns true
if the given object is also a right operand and the two right operands represent the same order.
Two right operands o1
and o2
represent the same right operand if Arrays.equals(literal, other.literal)
is true
.
This implementation first checks if the specified object is this right operand; if so it returns true
.
Then, it checks if the specified object is a right operand whose literal array is also equal.
equals
in class Object
obj
- object to be compared for equality with this right operandtrue
if the specified object is equal to this right operandObject.equals(java.lang.Object)
public int hashCode()
The hash code of a right operand is defined to be the sum of the hash codes of its literals.
This ensures that o1.equals(o2)
implies that o1.hashCode() == o2.hashCode()
for any two right operands o1
and o2
, as required by the general contract of Object.hashCode()
.
hashCode
in class Object
Object.hashCode()