|
|||||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | ||||||||||
See:
Description
| Interface Summary | |
| InstrumentationFilter | Interface for instrumentation filters, which control the level to which classes are instrumented. |
| Class Summary | |
| CompositeInstrumentationFilter | An instrumentation filter that combines other instrumentation filters. |
| InstrumentationFilter_CONTRACT | Contract class for InstrumentationFilter. |
| jContractor | Main entry point into the jContractor system. |
| jContractorClassLoader | A class loader than uses jInstrument to instrument classes are they are loaded. |
| jContractorRuntime | This class is used internally by jContractor, and should never be used by others. |
| jInstrument | Utility to read in class files and instrument class methods to enforce jContractor contracts. |
| PackageLevelInstrumentationFilter | An instrumentation filter that assigns instrumentation level by package (or class, if desired). |
| SimpleInstrumentationFilter | An instrumentation filter that assign the same instrumentation level to all classes. |
| Exception Summary | |
| InstrumentationException | An exception that is thrown by jInstrument if it is unable to instrument a class. |
| Error Summary | |
| InvariantViolationError | An error that will be thrown when a class invariant is violated. |
| PostconditionViolationError | An error that will be thrown when a postcondition is violated. |
| PreconditionViolationError | An error that will be thrown when a precondition is violated. |
This is the main package of the jContractor system. Among other things, this package contains the two classes of most interest to users of jContractor: jContractor and jInstrument. jContractor can be invoked to run another Java program with contract checking enabled. jContractor replaces the system class loader with its own, and performs the necessary bytecode instrumentation on-the-fly. jInstrument takes a Java class file as input, and outputs the class with contract code added. The class can then be run by a normal JVM, and contracts will be checked. jInstrument is useful if jContractor will not be available when you want to run the code, or if you want to disassemble the instrumented class files to see how contracts are checked.
Besides jContractor and jInstrument, this class defines the types of errors that are thrown when contracts are violated (PreconditionViolationError, PostconditionViolationError, and InvariantViolationError). The other classes are key parts of jContractor, but are not tied closely to the checking of any particular type of contract.
|
|||||||||||
| PREV PACKAGE NEXT PACKAGE | FRAMES NO FRAMES | ||||||||||