Package com.strobel.reflection.emit
Class AnnotationBuilder<A extends java.lang.annotation.Annotation>
- java.lang.Object
-
- com.strobel.reflection.emit.AnnotationBuilder<A>
-
public final class AnnotationBuilder<A extends java.lang.annotation.Annotation> extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private Type<A>
_annotationType
private MethodList
_attributes
private A
_bakedAnnotation
private ReadOnlyList<java.lang.Object>
_values
-
Constructor Summary
Constructors Modifier Constructor Description private
AnnotationBuilder(Type<A> annotationType, MethodList attributes, ReadOnlyList<java.lang.Object> values)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
bake()
private static <A extends java.lang.annotation.Annotation>
voidcheckProperties(Type<A> annotationType, MethodList properties, ReadOnlyList<java.lang.Object> values)
static <A extends java.lang.annotation.Annotation>
AnnotationBuilder<A>create(Type<A> annotationType)
static <A extends java.lang.annotation.Annotation>
AnnotationBuilder<A>create(Type<A> annotationType, MethodList properties, ReadOnlyList<java.lang.Object> values)
static <A extends java.lang.annotation.Annotation>
AnnotationBuilder<A>create(Type<A> annotationType, java.lang.Object value)
A
getAnnotation()
Type<A>
getAnnotationType()
MethodList
getAttributes()
ReadOnlyList<java.lang.Object>
getValues()
-
-
-
Field Detail
-
_attributes
private final MethodList _attributes
-
_values
private final ReadOnlyList<java.lang.Object> _values
-
_bakedAnnotation
private A extends java.lang.annotation.Annotation _bakedAnnotation
-
-
Constructor Detail
-
AnnotationBuilder
private AnnotationBuilder(Type<A> annotationType, MethodList attributes, ReadOnlyList<java.lang.Object> values)
-
-
Method Detail
-
getAnnotation
public A getAnnotation()
-
getAttributes
public MethodList getAttributes()
-
getValues
public ReadOnlyList<java.lang.Object> getValues()
-
create
public static <A extends java.lang.annotation.Annotation> AnnotationBuilder<A> create(Type<A> annotationType, MethodList properties, ReadOnlyList<java.lang.Object> values)
-
create
public static <A extends java.lang.annotation.Annotation> AnnotationBuilder<A> create(Type<A> annotationType)
-
create
public static <A extends java.lang.annotation.Annotation> AnnotationBuilder<A> create(Type<A> annotationType, java.lang.Object value)
-
checkProperties
private static <A extends java.lang.annotation.Annotation> void checkProperties(Type<A> annotationType, MethodList properties, ReadOnlyList<java.lang.Object> values)
-
bake
void bake()
-
-