1 /* 2 * Copyright (c) 1998, 2003, Oracle and/or its affiliates. All rights reserved. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * This code is free software; you can redistribute it and/or modify it 6 * under the terms of the GNU General Public License version 2 only, as 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26 package com.sun.javadoc; 27 28 import com.google.doclava.annotation.Unused; 29 import com.google.doclava.annotation.Used; 30 31 /** 32 * Represents a @throws or @exception documentation tag. 33 * Parses and holds the exception name and exception comment. 34 * Note: @exception is a backwards compatible synonymy for @throws. 35 * 36 * @author Robert Field 37 * @author Atul M Dambalkar 38 * @see ExecutableMemberDoc#throwsTags() 39 * 40 */ 41 public interface ThrowsTag extends Tag { 42 43 /** 44 * Return the name of the exception 45 * associated with this <code>ThrowsTag</code>. 46 * 47 * @return name of the exception. 48 */ 49 @Unused exceptionName()50 String exceptionName(); 51 52 /** 53 * Return the exception comment 54 * associated with this <code>ThrowsTag</code>. 55 * 56 * @return exception comment. 57 */ 58 @Used exceptionComment()59 String exceptionComment(); 60 61 /** 62 * Return a <code>ClassDoc</code> that represents the exception. 63 * If the type of the exception is a type variable, return the 64 * <code>ClassDoc</code> of its erasure. 65 * 66 * <p> <i>This method cannot accommodate certain generic type 67 * constructs. The <code>exceptionType</code> method 68 * should be used instead.</i> 69 * 70 * @return <code>ClassDoc</code> that represents the exception. 71 * @see #exceptionType 72 */ 73 @Used exception()74 ClassDoc exception(); 75 76 /** 77 * Return the type of the exception 78 * associated with this <code>ThrowsTag</code>. 79 * This may be a <code>ClassDoc</code> or a <code>TypeVariable</code>. 80 * 81 * @return the type of the exception. 82 * @since 1.5 83 */ 84 @Unused exceptionType()85 Type exceptionType(); 86 } 87