Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering
Represents a member (=field) of an annotation class. ( Java 5 Syntax Element - supported since JTransformer 2.3. )
#id: id
the unique ID assigned to this fact.
#parent: classT
the annotation class containing this member. It is a class with property annotationTypeT.
#type: Type reference
the type of the member.
'name': atom
the name of the member.
#default: AnnotationExpression, null
the optional default value (can be 'null').
public @interface ThisAnnotation { String value(); }
classT(#AnnotationType, #CompilationUnit, 'ThisAnnotation', [#AnnotationMember]), modifierT(#AnnotationType, 'public'), extendsT(#AnnotationType, #AnnotationClass), annotationTypeT(#AnnotationType), annotationMemberT(#AnnotationMember, #AnnotationType, #TypeRef, 'value', 'null').
ast_node_def('Java',annotationMemberT,[ ast_arg(id, mult(1,1,no ), id, [id]), ast_arg(parent, mult(1,1,no ), id, [id]), ast_arg(type, mult(1,1,no ), id, [typeInst]), ast_arg(name, mult(1,1,no ), attr, [atom]), ast_arg(expr, mult(1,1,no ), id, [annotationExpressionType,nullType]) ]).