org.checkerframework.checker.lock.qual.MayReleaseLocks Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of checker Show documentation
Show all versions of checker Show documentation
The Checker Framework enhances Java's type system to
make it more powerful and useful. This lets software developers
detect and prevent errors in their Java programs.
The Checker Framework includes compiler plug-ins ("checkers")
that find bugs or verify their absence. It also permits you to
write your own compiler plug-ins.
package org.checkerframework.checker.lock.qual;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import org.checkerframework.framework.qual.InheritedAnnotation;
/**
* The method, or one of the methods it calls, might release locks that were held prior to the
* method being called. You can write this when you are certain the method releases locks, or when
* you don't know whether the method releases locks.
*
* @see ReleasesNoLocks
* @see LockingFree
* @see org.checkerframework.dataflow.qual.SideEffectFree
* @see org.checkerframework.dataflow.qual.Pure
* @checker_framework.manual #lock-checker Lock Checker
* @checker_framework.manual #lock-lockingfree-example Example use of @MayReleaseLocks
* @checker_framework.manual #annotating-libraries Annotating libraries
*/
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.METHOD, ElementType.CONSTRUCTOR})
@InheritedAnnotation
public @interface MayReleaseLocks {}