SupportedOptions.java revision 2571:10fc81ac75b4
1289848Sjkim/* 2289848Sjkim * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. 3289848Sjkim * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4289848Sjkim * 5289848Sjkim * This code is free software; you can redistribute it and/or modify it 6289848Sjkim * under the terms of the GNU General Public License version 2 only, as 7289848Sjkim * published by the Free Software Foundation. Oracle designates this 8289848Sjkim * particular file as subject to the "Classpath" exception as provided 9289848Sjkim * by Oracle in the LICENSE file that accompanied this code. 10289848Sjkim * 11289848Sjkim * This code is distributed in the hope that it will be useful, but WITHOUT 12289848Sjkim * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13289848Sjkim * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14289848Sjkim * version 2 for more details (a copy is included in the LICENSE file that 15289848Sjkim * accompanied this code). 16289848Sjkim * 17289848Sjkim * You should have received a copy of the GNU General Public License version 18289848Sjkim * 2 along with this work; if not, write to the Free Software Foundation, 19289848Sjkim * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20289848Sjkim * 21289848Sjkim * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22289848Sjkim * or visit www.oracle.com if you need additional information or have any 23289848Sjkim * questions. 24289848Sjkim */ 25289848Sjkim 26289848Sjkimpackage javax.annotation.processing; 27289848Sjkim 28289848Sjkimimport java.lang.annotation.*; 29289848Sjkimimport static java.lang.annotation.RetentionPolicy.*; 30289848Sjkimimport static java.lang.annotation.ElementType.*; 31289848Sjkim 32289848Sjkim/** 33298998Sjkim * An annotation used to indicate what options an annotation processor 34298998Sjkim * supports. The {@link Processor#getSupportedOptions} method can 35298998Sjkim * construct its result from the value of this annotation, as done by 36298998Sjkim * {@link AbstractProcessor#getSupportedOptions}. Only {@linkplain 37298998Sjkim * Processor#getSupportedOptions strings conforming to the 38298998Sjkim * grammar} should be used as values. 39298998Sjkim * 40298998Sjkim * @author Joseph D. Darcy 41289848Sjkim * @author Scott Seligman 42289848Sjkim * @author Peter von der Ahé 43289848Sjkim * @since 1.6 44289848Sjkim */ 45289848Sjkim@Documented 46289848Sjkim@Target(TYPE) 47289848Sjkim@Retention(RUNTIME) 48289848Sjkimpublic @interface SupportedOptions { 49289848Sjkim /** 50289848Sjkim * Returns the supported options. 51289848Sjkim * @return the supported options 52289848Sjkim */ 53289848Sjkim String [] value(); 54289848Sjkim} 55