blob: 587f7c70c3ef03a82bf01cc7d986eabacaa34247 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2007 BEA Systems, Inc.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* wharley@bea.com - initial implementation
*
*******************************************************************************/
package org.eclipse.jdt.compiler.apt.tests.annotations;
/**
* These annotation types are visible to processor code and can thus be used
* with {@link javax.lang.model.element.Element#getAnnotation(Class)}, which
* returns a reflection proxy of the actual annotation class rather than just
* an AnnotationMirror.
*/
public @interface TypedAnnos
{
public enum Enum { A, B, C }
public @interface AnnoByte {
byte value();
}
public @interface AnnoBoolean {
boolean value();
}
public @interface AnnoChar {
char value();
}
public @interface AnnoDouble {
double value();
}
public @interface AnnoFloat {
float value();
}
public @interface AnnoInt {
int value();
}
public @interface AnnoLong {
long value();
}
public @interface AnnoShort {
short value();
}
public @interface AnnoString {
String value();
}
public @interface AnnoEnumConst {
Enum value();
}
public @interface AnnoType {
Class<?> value();
}
public @interface AnnoAnnoChar {
AnnoChar value();
}
public @interface AnnoArrayInt {
int[] value();
}
public @interface AnnoArrayString {
String[] value();
}
public @interface AnnoArrayEnumConst {
Enum[] value();
}
public @interface AnnoArrayAnnoChar {
AnnoChar[] value();
}
public @interface AnnoArrayType {
Class<?>[] value();
}
}