Scala Library
|
|
scala/Enumeration.scala
]
abstract
class
Value
extends
Ordered[Value]Method Summary | |
override def
|
compare
(that : Value) : Int
Result of comparing
this with operand that .
returns x where
x < 0 iff this < that
x == 0 iff this == that
x > 0 iff this > that |
override def
|
equals
(other : Any) : Boolean
This method is used to compare the receiver object (
this )
with the argument object (arg0 ) for equivalence. |
override def
|
hashCode
: Int
Returns a hash code value for the object.
|
abstract def
|
id
: Int
the id and bit location of this enumeration value
|
def
|
mask32
: Int
this enumeration value as an
Int bit mask. |
def
|
mask64
: Long
this enumeration value as an
Long bit mask. |
Methods inherited from Ordered | |
<, >, <=, >=, compareTo |
Methods inherited from AnyRef | |
getClass, clone, toString, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized |
Methods inherited from Any | |
==, !=, isInstanceOf, asInstanceOf |
Method Details |
abstract
def
id : Int
this
with operand that
.
returns x
where
x < 0
iff this < that
x == 0
iff this == that
x > 0
iff this > that
this
)
with the argument object (arg0
) for equivalence.
The default implementations of this method is an equivalence relation:
x
of type Any
,
x.equals(x)
should return true
.x
and y
of type
Any
, x.equals(y)
should return true
if and only
if y.equals(x)
returns true
.x
, y
, and z
of type AnyRef
if x.equals(y)
returns true
and
y.equals(z)
returns
true
, then x.equals(z)
should return true
.
If you override this method, you should verify that
your implementation remains an equivalence relation.
Additionally, when overriding this method it is often necessary to
override hashCode
to ensure that objects that are
"equal" (o1.equals(o2)
returns true
)
hash to the same Int
(o1.hashCode.equals(o2.hashCode)
).
arg0 -
the object to compare against this object for equality.true
if the receiver object is equivalent to the argument; false
otherwise. override
def
hashCode : Int
The default hashing algorithm is platform dependent.
Note that it is allowed for two objects to have identical hash
codes (o1.hashCode.equals(o2.hashCode)
) yet not be
equal (o1.equals(o2)
returns false
). A
degenerate implementation could always return 0
.
However, it is required that if two objects are equal
(o1.equals(o2)
returns true
) that they
have identical hash codes
(o1.hashCode.equals(o2.hashCode)
). Therefore, when
overriding this method, be sure to verify that the behavior is
consistent with the equals
method.
def
mask32 : Int
Int
bit mask.IllegalArgumentException -
if id
is greater than 31
def
mask64 : Long
Long
bit mask.IllegalArgumentException -
if id
is greater than 63
Scala Library
|
|