emul/mini/src/main/java/java/lang/reflect/GenericDeclaration.java
author Jaroslav Tulach <jaroslav.tulach@apidesign.org>
Sat, 26 Jan 2013 08:47:05 +0100
changeset 592 5e13b1ac2886
parent 258 21b390daf444
permissions -rw-r--r--
In order to support fields of the same name in subclasses we are now prefixing them with name of the class that defines them. To provide convenient way to access them from generated bytecode and also directly from JavaScript, there is a getter/setter function for each field. It starts with _ followed by the field name. If called with a parameter, it sets the field, with a parameter it just returns it.
jtulach@258
     1
/*
jtulach@258
     2
 * Copyright (c) 2003, 2004, Oracle and/or its affiliates. All rights reserved.
jtulach@258
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
jtulach@258
     4
 *
jtulach@258
     5
 * This code is free software; you can redistribute it and/or modify it
jtulach@258
     6
 * under the terms of the GNU General Public License version 2 only, as
jtulach@258
     7
 * published by the Free Software Foundation.  Oracle designates this
jtulach@258
     8
 * particular file as subject to the "Classpath" exception as provided
jtulach@258
     9
 * by Oracle in the LICENSE file that accompanied this code.
jtulach@258
    10
 *
jtulach@258
    11
 * This code is distributed in the hope that it will be useful, but WITHOUT
jtulach@258
    12
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
jtulach@258
    13
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
jtulach@258
    14
 * version 2 for more details (a copy is included in the LICENSE file that
jtulach@258
    15
 * accompanied this code).
jtulach@258
    16
 *
jtulach@258
    17
 * You should have received a copy of the GNU General Public License version
jtulach@258
    18
 * 2 along with this work; if not, write to the Free Software Foundation,
jtulach@258
    19
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
jtulach@258
    20
 *
jtulach@258
    21
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
jtulach@258
    22
 * or visit www.oracle.com if you need additional information or have any
jtulach@258
    23
 * questions.
jtulach@258
    24
 */
jtulach@258
    25
jtulach@258
    26
package java.lang.reflect;
jtulach@258
    27
jtulach@258
    28
/**
jtulach@258
    29
 * A common interface for all entities that declare type variables.
jtulach@258
    30
 *
jtulach@258
    31
 * @since 1.5
jtulach@258
    32
 */
jtulach@258
    33
public interface GenericDeclaration {
jtulach@258
    34
    /**
jtulach@258
    35
     * Returns an array of {@code TypeVariable} objects that
jtulach@258
    36
     * represent the type variables declared by the generic
jtulach@258
    37
     * declaration represented by this {@code GenericDeclaration}
jtulach@258
    38
     * object, in declaration order.  Returns an array of length 0 if
jtulach@258
    39
     * the underlying generic declaration declares no type variables.
jtulach@258
    40
     *
jtulach@258
    41
     * @return an array of {@code TypeVariable} objects that represent
jtulach@258
    42
     *     the type variables declared by this generic declaration
jtulach@258
    43
     * @throws GenericSignatureFormatError if the generic
jtulach@258
    44
     *     signature of this generic declaration does not conform to
jtulach@258
    45
     *     the format specified in
jtulach@258
    46
     *     <cite>The Java&trade; Virtual Machine Specification</cite>
jtulach@258
    47
     */
jtulach@258
    48
    public TypeVariable<?>[] getTypeParameters();
jtulach@258
    49
}