src/java.base/share/classes/jdk/internal/vm/annotation/Hidden.java
author vlivanov
Tue, 22 Jan 2019 18:13:49 -0800
changeset 53435 ea254e9fc587
permissions -rw-r--r--
8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation Reviewed-by: mchung, dlong
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
53435
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
     1
/*
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
     2
 * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
     4
 *
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
     7
 * published by the Free Software Foundation.  Oracle designates this
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
     8
 * particular file as subject to the "Classpath" exception as provided
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
     9
 * by Oracle in the LICENSE file that accompanied this code.
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    10
 *
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    11
 * This code is distributed in the hope that it will be useful, but WITHOUT
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    12
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    13
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    14
 * version 2 for more details (a copy is included in the LICENSE file that
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    15
 * accompanied this code).
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    16
 *
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    17
 * You should have received a copy of the GNU General Public License version
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    18
 * 2 along with this work; if not, write to the Free Software Foundation,
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    19
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    20
 *
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    21
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    22
 * or visit www.oracle.com if you need additional information or have any
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    23
 * questions.
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    24
 */
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    25
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    26
package jdk.internal.vm.annotation;
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    27
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    28
import java.lang.annotation.*;
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    29
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    30
/**
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    31
 * A method or constructor may be annotated as "hidden" to hint it is desirable
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    32
 * to omit it from stack traces.
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    33
 *
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    34
 * @implNote
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    35
 * This annotation only takes effect for methods or constructors of classes
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    36
 * loaded by the boot loader.  Annotations on methods or constructors of classes
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    37
 * loaded outside of the boot loader are ignored.
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    38
 *
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    39
 * <p>HotSpot JVM provides diagnostic option {@code -XX:+ShowHiddenFrames} to
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    40
 * always show "hidden" frames.
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    41
 */
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    42
@Target({ElementType.METHOD, ElementType.CONSTRUCTOR})
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    43
@Retention(RetentionPolicy.RUNTIME)
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    44
public @interface Hidden {
ea254e9fc587 8213234: Move LambdaForm.Hidden to jdk.internal.vm.annotation
vlivanov
parents:
diff changeset
    45
}