JML

org.jmlspecs.jmlrac.runtime
Class JMLOldExpressionCache.Key

java.lang.Object
  extended byorg.jmlspecs.jmlrac.runtime.JMLOldExpressionCache.Key
Enclosing class:
JMLOldExpressionCache

public static class JMLOldExpressionCache.Key
extends Object

A class for representing keys for cache objects. We use arrays for keys, but we treat two arrays equal if both have the same elements.


Class Specifications

Specifications inherited from class Object
represents objectState <- org.jmlspecs.lang.JMLDataGroup.IT;
public represents _getClass <- \typeof(this);

Model Field Summary
 
Model fields inherited from class java.lang.Object
_getClass, objectState, theString
 
Ghost Field Summary
 
Ghost fields inherited from class java.lang.Object
objectTimesFinalized, owner
 
Field Summary
 Object[] values
           
 
Constructor Summary
JMLOldExpressionCache.Key(Object[] values)
          Constructs a new key object from an array.
 
Model Method Summary
 
Model methods inherited from class java.lang.Object
hashValue
 
Method Summary
 boolean equals(nullable Object obj)
          Does the argument equal to this key object?
 int hashCode()
          Returns the hash code for this key object.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

values

public Object[] values
Constructor Detail

JMLOldExpressionCache.Key

public JMLOldExpressionCache.Key(Object[] values)
Constructs a new key object from an array.

Method Detail

equals

public boolean equals(nullable Object obj)
Does the argument equal to this key object?

Overrides:
equals in class Object
Specifications: (inherited)pure
Specifications inherited from overridden method equals(Object obj) in class Object:
       pure
public normal_behavior
requires obj != null;
ensures (* \result is true when obj is "equal to" this object *);
     also
public normal_behavior
requires this == obj;
ensures \result ;
     also
public code normal_behavior
requires obj != null;
ensures \result <==> this == obj;
     also
diverges false;
ensures obj == null ==> !\result ;

hashCode

public int hashCode()
Returns the hash code for this key object.

Overrides:
hashCode in class Object
Specifications inherited from overridden method in class Object:
public behavior
assignable objectState;
ensures (* \result is a hash code for this object *);
     also
public code normal_behavior
assignable \nothing;

JML

JML is Copyright (C) 1998-2002 by Iowa State University and is distributed under the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This release depends on code from the MultiJava project and is based in part on the Kopi project Copyright (C) 1990-99 DMS Decision Management Systems Ges.m.b.H.