com.github.wglanzer.annosave.api.IAnnotationContainer Maven / Gradle / Ivy
package com.github.wglanzer.annosave.api;
import org.jetbrains.annotations.*;
/**
* An AnnotationContainer is a container which contains annotations, cpt. obvious :)
* It can be a Java-Class, -SubClass, -Method or -Field.
*
* @author W.Glanzer, 13.09.2017
*/
public interface IAnnotationContainer
{
/**
* @return Type of this container. Mainly the class-reference to the object before.
* null if it could be resolved correctly
*/
@Nullable
Class> getType();
/**
* @return Name of the container. Mainly the class-, method- or fieldname
*/
@NotNull
String getName();
/**
* @return Type of the container
*/
@NotNull
EContainerType getContainerType();
/**
* @return all annotations on the container
*/
IAnnotation[] getAnnotations();
/**
* @return child-classes
*/
IAnnotationContainer[] getChildren();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy