org.checkerframework.javacutil.UserError Maven / Gradle / Ivy
Show all versions of javacutil Show documentation
package org.checkerframework.javacutil;
import org.checkerframework.checker.formatter.qual.FormatMethod;
import org.checkerframework.checker.nullness.qual.Nullable;
/**
* Exception type indicating a mistake by an end user in using the Checker Framework, such as
* incorrect command-line arguments.
*
* To indicate a bug in the framework, use {@link BugInCF}. To indicate a bug in a checker
* implementation, use {@link TypeSystemError}.
*/
@SuppressWarnings("serial")
public class UserError extends RuntimeException {
/**
* Constructs a new CheckerError with the specified detail message.
*
* @param message the detail message
*/
public UserError(String message) {
super(message);
if (message == null) {
throw new BugInCF("Must have a detail message.");
}
}
/**
* Constructs a new CheckerError with a detail message composed from the given arguments.
*
* @param fmt the format string
* @param args the arguments for the format string
*/
@FormatMethod
public UserError(String fmt, @Nullable Object... args) {
this(String.format(fmt, args));
}
}