SerialFieldTag.java revision 2571:10fc81ac75b4
1/* 2 * Copyright (c) 1998, 2014, 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 26package com.sun.javadoc; 27 28/** 29 * Documents a Serializable field defined by an ObjectStreamField. 30 * <pre> 31 * The class parses and stores the three serialField tag parameters: 32 * 33 * - field name 34 * - field type name 35 * (fully-qualified or visible from the current import context) 36 * - description of the valid values for the field 37 38 * </pre> 39 * This tag is only allowed in the javadoc for the special member 40 * serialPersistentFields. 41 * 42 * @author Joe Fialli 43 * 44 * @see java.io.ObjectStreamField 45 */ 46public interface SerialFieldTag extends Tag, Comparable<Object> { 47 48 /** 49 * Return the serializable field name. 50 * 51 * @return the serializable field name. 52 */ 53 public String fieldName(); 54 55 /** 56 * Return the field type string. 57 * 58 * @return the field type string. 59 */ 60 public String fieldType(); 61 62 /** 63 * Return the ClassDoc for field type. 64 * 65 * @return null if no ClassDoc for field type is visible from 66 * containingClass context. 67 */ 68 public ClassDoc fieldTypeDoc(); 69 70 /** 71 * Return the field comment. If there is no serialField comment, return 72 * javadoc comment of corresponding FieldDoc. 73 * 74 * @return the field comment. If there is no serialField comment, return 75 * javadoc comment of corresponding FieldDoc. 76 */ 77 public String description(); 78 79 /** 80 * Compares this Object with the specified Object for order. Returns a 81 * negative integer, zero, or a positive integer as this Object is less 82 * than, equal to, or greater than the given Object. 83 * <p> 84 * Included to make SerialFieldTag items java.lang.Comparable. 85 * 86 * @param obj the {@code Object} to be compared. 87 * @return a negative integer, zero, or a positive integer as this Object 88 * is less than, equal to, or greater than the given Object. 89 * @exception ClassCastException the specified Object's type prevents it 90 * from being compared to this Object. 91 * @since 1.2 92 */ 93 public int compareTo(Object obj); 94} 95