src/share/classes/com/sun/tools/javadoc/ConstructorDocImpl.java

Sat, 01 Dec 2007 00:00:00 +0000

author
duke
date
Sat, 01 Dec 2007 00:00:00 +0000
changeset 1
9a66ca7c79fa
child 554
9d9f26857129
permissions
-rw-r--r--

Initial load

     1 /*
     2  * Copyright 1997-2006 Sun Microsystems, Inc.  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.  Sun designates this
     8  * particular file as subject to the "Classpath" exception as provided
     9  * by Sun 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 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
    22  * CA 95054 USA or visit www.sun.com if you need additional information or
    23  * have any questions.
    24  */
    26 package com.sun.tools.javadoc;
    28 import com.sun.javadoc.*;
    30 import com.sun.tools.javac.code.Symbol.ClassSymbol;
    31 import com.sun.tools.javac.code.Symbol.MethodSymbol;
    32 import com.sun.tools.javac.tree.JCTree.JCMethodDecl;
    33 import com.sun.tools.javac.util.Position;
    35 /**
    36  * Represents a constructor of a java class.
    37  *
    38  * @since 1.2
    39  * @author Robert Field
    40  * @author Neal Gafter (rewrite)
    41  */
    43 public class ConstructorDocImpl
    44         extends ExecutableMemberDocImpl implements ConstructorDoc {
    46     /**
    47      * constructor.
    48      */
    49     public ConstructorDocImpl(DocEnv env, MethodSymbol sym) {
    50         super(env, sym);
    51     }
    53     /**
    54      * constructor.
    55      */
    56     public ConstructorDocImpl(DocEnv env, MethodSymbol sym,
    57                               String docComment, JCMethodDecl tree, Position.LineMap lineMap) {
    58         super(env, sym, docComment, tree, lineMap);
    59     }
    61     /**
    62      * Return true if it is a constructor, which it is.
    63      *
    64      * @return true
    65      */
    66     public boolean isConstructor() {
    67         return true;
    68     }
    70     /**
    71      * Get the name.
    72      *
    73      * @return the name of the member qualified by class (but not package)
    74      */
    75     public String name() {
    76         ClassSymbol c = sym.enclClass();
    77         String n = c.name.toString();
    78         for (c = c.owner.enclClass(); c != null; c = c.owner.enclClass()) {
    79             n = c.name.toString() + "." + n;
    80         }
    81         return n;
    82     }
    84     /**
    85      * Get the name.
    86      *
    87      * @return the qualified name of the member.
    88      */
    89     public String qualifiedName() {
    90         return sym.enclClass().getQualifiedName().toString();
    91     }
    93     /**
    94      * Returns a string representation of this constructor.  Includes the
    95      * qualified signature and any type parameters.
    96      * Type parameters precede the class name, as they do in the syntax
    97      * for invoking constructors with explicit type parameters using "new".
    98      * (This is unlike the syntax for invoking methods with explicit type
    99      * parameters.)
   100      */
   101     public String toString() {
   102         return typeParametersString() + qualifiedName() + signature();
   103     }
   104 }

mercurial