package java.lang;

import ej.annotation.Nullable;

/**
 * Subclasses of {@code LinkageError} indicate that a class has some dependency on another class;
 * however, the latter class has incompatibly changed after the compilation of the former class.
 */
public class LinkageError extends Error {

    /**
     * Constructs a {@code LinkageError} with no detail message.
     */
    public LinkageError() {
        throw new RuntimeException();
    }

    /**
     * Constructs a {@code LinkageError} with the specified detail message.
     *
     * @param s
     *        the detail message.
     */
    public LinkageError(String s) {
        throw new RuntimeException();
    }

    /**
     * Constructs a {@code LinkageError} with the specified detail message and cause.
     *
     * @param s
     *        the detail message.
     * @param cause
     *        the cause, may be {@code null}
     */
    public LinkageError(String s, @Nullable Throwable cause) {
        throw new RuntimeException();
    }
}
