Class PostconditionGenerator
java.lang.Object
org.apache.groovy.contracts.generation.BaseGenerator
org.apache.groovy.contracts.generation.PostconditionGenerator
Code generator for postconditions.
-
Field Summary
Fields inherited from class org.apache.groovy.contracts.generation.BaseGenerator
INVARIANT_CLOSURE_PREFIX, META_DATA_USE_INLINE_MODE, source
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addOldVariablesMethod
(ClassNode classNode) Adds a synthetic method to the given classNode which can be used to create a map of most instance variables found in this class.void
generateDefaultPostconditionStatement
(ClassNode type, MethodNode method) Adds a default postcondition if a postcondition has already been defined for thisMethodNode
in a super-class.void
generatePostconditionAssertionStatement
(MethodNode method, Postcondition postcondition) Injects a postcondition assertion statement in the given method, based on the booleanExpression.Methods inherited from class org.apache.groovy.contracts.generation.BaseGenerator
addCallsToSuperMethodNodeAnnotationClosure, getInlineModeBlockStatement, getInvariantMethodName, getInvariantMethodNode, wrapAssertionBooleanExpression
-
Constructor Details
-
PostconditionGenerator
-
-
Method Details
-
addOldVariablesMethod
Adds a synthetic method to the given classNode which can be used to create a map of most instance variables found in this class. Used for the old variable mechanism.- Parameters:
classNode
- theClassNode
to add the synthetic method to
-
generatePostconditionAssertionStatement
Injects a postcondition assertion statement in the given method, based on the booleanExpression.- Parameters:
method
- theMethodNode
for assertion injectionpostcondition
- thePostcondition
the assertion statement should be generated from
-
generateDefaultPostconditionStatement
Adds a default postcondition if a postcondition has already been defined for thisMethodNode
in a super-class.- Parameters:
type
- the currentClassNode
of the given methodNodemethod
- theMethodNode
to create the default postcondition for
-