The package jaxt.java.lang contains JAxT specifications for java.lang classes and interfaces
based on the Java 5.0 API.
For each class and interface X the axioms are separated into
-
XAxioms for axioms formulated from absolute requirements in the documentation,
e.g., that the equals method should be an equivalence relation.
-
XAxiomsStronglyRecommended for axioms formulated from strong recommendations in the documentation,
e.g., that a class's natural order is consistent with its equals method.
-
XAxiomsRecommended for axioms formulated from recommendations in the doxcumentation,
the properties on the clone method.
-
XAxiomsProjectY for axioms formulated from project specific recommendations,
e.g., that the equals method should be a congruence relation (for some classes).
We have included this example in jaxt.java.lang.ComparableAxiomsProject for the Comparable interface.
-
XAxiomsGlobalRecommendations for axioms formulated from global properties on data,
e.g., that hasCode values should be well distributed.
Only data-oriented axioms have been formulated.
Thus thread-related requirements have not been captured.
@author Magne Haveraaen & Karl Trygve Kalleberg, 2007