Package gw.lang.reflect
Interface IAnnotatedFeatureInfo
-
- All Superinterfaces:
IFeatureInfo
- All Known Subinterfaces:
IAspectMethodInfoDelegate,IAttributedFeatureInfo,IConstructorInfo,IEventInfo,IExpansionPropertyInfo,IGosuClassTypeInfo,IGosuConstructorInfo,IGosuMethodInfo,IGosuPropertyInfo,IGosuVarPropertyInfo,IHasParameterInfos,IJavaBasePropertyInfo,IJavaConstructorInfo,IJavaFieldPropertyInfo,IJavaMethodInfo,IJavaPropertyInfo,IJavaTypeInfo,IMethodInfo,IMethodInfoDelegate,IPropertiesPropertyInfo,IPropertyInfo,IPropertyInfoDelegate,IRelativeTypeInfo,ITypeInfo,ITypeInfoMethodInfo,ITypeInfoPropertyInfo
- All Known Implementing Classes:
BaseFeatureInfo,BaseHandBuiltTypeInfo,BaseJavaTypeInfo,BaseTypeInfo,DefaultArrayTypeInfo,FeatureManagerTypeInfoBase,FunctionTypeInfo,MetaMethodInfoDelegate,MetaPropertyInfoDelegate,MethodInfoBase,MethodInfoDelegate,ModifiedParameterInfo,PropertyInfoBase,PropertyInfoBuilder.BuiltPropertyInfo,PropertyInfoDelegate,SimpleMethodInfo,SimpleParameterInfo,TypeInfoBase
public interface IAnnotatedFeatureInfo extends IFeatureInfo
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classIAnnotatedFeatureInfo.IAnnotationInfoHelper
-
Field Summary
Fields Modifier and Type Field Description static IAnnotatedFeatureInfo.IAnnotationInfoHelperANNOTATION_HELPER
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description IAnnotationInfogetAnnotation(IType type)List<IAnnotationInfo>getAnnotations()List<IAnnotationInfo>getAnnotationsOfType(IType type)List<IAnnotationInfo>getDeclaredAnnotations()StringgetDeprecatedReason()booleanhasAnnotation(IType type)booleanhasDeclaredAnnotation(IType type)booleanisDefaultImpl()booleanisDeprecated()-
Methods inherited from interface gw.lang.reflect.IFeatureInfo
getContainer, getDescription, getDisplayName, getLocationInfo, getName, getOwnersType
-
-
-
-
Field Detail
-
ANNOTATION_HELPER
static final IAnnotatedFeatureInfo.IAnnotationInfoHelper ANNOTATION_HELPER
-
-
Method Detail
-
getAnnotations
List<IAnnotationInfo> getAnnotations()
- Returns:
- A map of AnnotationInfo objects by type representing all the annotations associated with this feature and all the features in its ancestry, or an empty map if there are no annotations.
-
getDeclaredAnnotations
List<IAnnotationInfo> getDeclaredAnnotations()
- Returns:
- A map of AnnotationInfo objects by type representing all the annotations associated with this feature, or an empty map if there are no annotations.
-
getAnnotationsOfType
List<IAnnotationInfo> getAnnotationsOfType(IType type)
- Returns:
- A list of AnnotationInfo objects having the specified type.
-
getAnnotation
IAnnotationInfo getAnnotation(IType type)
- Returns:
- An AnnotationInfo object having the specified type, or null if no such AnnotationInfo exists.
- Throws:
IllegalStateException- if more than one AnnotationInfo of the given type exists
-
hasAnnotation
boolean hasAnnotation(IType type)
- Parameters:
type- The type of the annotation to test for existence.- Returns:
- true If this feature has an annotation with of the given type, false otherwise
-
hasDeclaredAnnotation
boolean hasDeclaredAnnotation(IType type)
- Parameters:
type- The type of the annotation to test for existence.- Returns:
- true If this feature has a declared annotation of the given type, false otherwise
-
isDeprecated
boolean isDeprecated()
- Returns:
- True if this feature is deprecated.
-
getDeprecatedReason
String getDeprecatedReason()
- Returns:
- The deprecation message, or null if the feature is not deprecated.
-
isDefaultImpl
boolean isDefaultImpl()
- Returns:
- True if this feature is the default implementation e.g., default interface method
-
-