nhatminhle / cofoja

Contracts for Java
GNU Lesser General Public License v3.0
151 stars 18 forks source link

Where is the Contracted annotation? #27

Closed nhatminhle closed 9 years ago

nhatminhle commented 9 years ago

From depri...@broadinstitute.org on May 21, 2011 19:39:21

The QuickStart states:

In addition to the above annotations, Contracted is also recognized. Classes that inherit contracts without specifying any contracts themselves directly need to be marked with this annotation for the contract compiler to see them. This is a limitation of the way annotation processing is done.

But I cannot seem to find the Contracted annotation. Is this documentation out of date?

Original issue: http://code.google.com/p/cofoja/issues/detail?id=23

nhatminhle commented 9 years ago

From nhat.min...@gmail.com on May 22, 2011 01:40:30

Yes, doc out of date; it has been removed and is not necessary anymore. Sorry, I've updated the documentation.

Status: Done

nhatminhle commented 9 years ago

From depri...@broadinstitute.org on May 22, 2011 07:22:22

Just a quick question then. How are contracted inherited then? If I put a contract on an interface, in particular, will it be enforced in all implementing classes, without additional annotations on the class itself?

nhatminhle commented 9 years ago

From nhat.min...@gmail.com on May 22, 2011 08:55:10

Yes, that is, if the annotation processor is run on the implementing classes. The annotation processor was recently changed to process all classes regardless of whether they had any annotation on them, so it will know if the class has any parent with a contract.