net.jqwik.api.lifecycle.AfterProperty Maven / Gradle / Ivy
package net.jqwik.api.lifecycle;
import java.lang.annotation.*;
import org.apiguardian.api.*;
import static org.apiguardian.api.API.Status.*;
/**
* Annotate methods of a container class with {@code @AfterProperty}
* to have them run once after each property (or example)
* including properties (or examples) of embedded containers.
*
* {@code @AfterProperty} methods are inherited from superclasses
* and implemented interfaces as long as they are not hidden
* or overridden.
*
*
In embedded container classes the {@code @AfterProperty} methods
* from the inner container are run before the outer container's methods.
*
*
The execution order of multiple {@code @AfterProperty} methods
* within the same container is not guaranteed and might change.
*
*
Parameters of this method will be resolved using registered instances
* of {@linkplain ResolveParameterHook}. Parameters with annotation
* {@linkplain net.jqwik.api.ForAll} are not allowed.
*
* @see BeforeProperty
*/
@Target({ElementType.ANNOTATION_TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@API(status = MAINTAINED, since = "1.4.0")
public @interface AfterProperty {
}