org.jmlspecs.samples.digraph
Class TransposableNode
java.lang.Object
org.jmlspecs.samples.digraph.ValueNode
org.jmlspecs.samples.digraph.TransposableNode
- All Implemented Interfaces:
- Cloneable, JMLType, NodeType, Serializable
- public class TransposableNode
- extends ValueNode
Nodes for transposable directed graphs.
- Author:
- Katie Becker, Gary T. Leavens
Specifications inherited from class Object |
represents objectState <- org.jmlspecs.lang.JMLDataGroup.IT;
public represents _getClass <- \typeof(this); |
Fields inherited from class org.jmlspecs.samples.digraph.ValueNode |
value |
Method Summary |
protected String |
className()
|
boolean |
equals(nullable Object o)
Test whether this object's value is equal to the given argument. |
TransposableNode
public TransposableNode(Object v)
- Specifications:
-
public normal_behavior
assignable value;
ensures this.value == v;
equals
public boolean equals(nullable Object o)
- Description copied from interface:
JMLType
- Test whether this object's value is equal to the given argument.
- Specified by:
equals
in interface NodeType
- Overrides:
equals
in class ValueNode
- Specifications: (inherited)pure
- also
-
public normal_behavior
requires o instanceof org.jmlspecs.samples.digraph.TransposableNode;
ensures \result ==> org.jmlspecs.models.JMLNullSafe.equals(this.value,((org.jmlspecs.samples.digraph.TransposableNode)o).value);
- also
-
public normal_behavior
requires !(o instanceof org.jmlspecs.samples.digraph.TransposableNode);
ensures \result == false;
- Specifications inherited from overridden method equals(Object o) in class ValueNode:
- also
-
public normal_behavior
requires o instanceof org.jmlspecs.samples.digraph.ValueNode;
ensures \result ==> org.jmlspecs.models.JMLNullSafe.equals(this.value,((org.jmlspecs.samples.digraph.ValueNode)o).value);
- also
-
public normal_behavior
requires !(o instanceof org.jmlspecs.samples.digraph.ValueNode);
ensures \result == false;
- 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 ;
- Specifications inherited from overridden method equals(Object o) in interface NodeType:
(class)pure- also
-
public normal_behavior
requires !(o instanceof org.jmlspecs.samples.digraph.NodeType);
ensures \result == false;
- Specifications inherited from overridden method equals(Object ob2) in interface JMLType:
pure- also
-
public normal_behavior
ensures \result ==> ob2 != null&&(* ob2 is not distinguishable from this, except by using mutation or == *);
- implies_that
-
public normal_behavior
{|-
requires ob2 != null&&ob2 instanceof org.jmlspecs.models.JMLType;
ensures ((org.jmlspecs.models.JMLType)ob2).equals(this) == \result ;
- also
-
requires ob2 == this;
ensures \result <==> true;
- |}
className
protected String className()
- Specifications: pure non_null
- Specifications inherited from overridden method in class ValueNode:
pure
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.