package org.ant4eclipse.lib.jdt.ecj; import org.eclipse.jdt.internal.compiler.env.AccessRestriction; /** * <p> * A {@link ReferableType} is a class file or a source file that can be referred from a project that should be build. * </p> * * @author Gerd Wütherich (gerd@gerd-wuetherich.de) */ public interface ReferableType { /** * <p> * Returns the type of the bundle this {@link ReferableType} was loaded from. Possible values are * {@link EcjAdapter#LIBRARY} and {@link EcjAdapter#PROJECT}. * </p> * * @return the type of the bundle this class file was loaded from. */ byte getLibraryType(); /** * <p> * Returns of location of the bundle this {@link ReferableType} was loaded from. * </p> * * @return the location of the bundle this {@link ReferableType} was loaded from. */ String getLibraryLocation(); /** * <p> * Returns whether there exists an access restriction for this class file or not. * </p> * * @return whether there exists an access restriction for this class file or not. */ boolean hasAccessRestriction(); /** * <p> * Returns the access restriction for this class file or <code>null</code> if no access restriction exists. * </p> * * @return the access restriction for this class file or <code>null</code> if no access restriction exists. */ AccessRestriction getAccessRestriction(); }