当前位置: 首页>>代码示例>>Java>>正文


Java RetentionPolicy.SOURCE属性代码示例

本文整理汇总了Java中java.lang.annotation.RetentionPolicy.SOURCE属性的典型用法代码示例。如果您正苦于以下问题:Java RetentionPolicy.SOURCE属性的具体用法?Java RetentionPolicy.SOURCE怎么用?Java RetentionPolicy.SOURCE使用的例子?那么恭喜您, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在java.lang.annotation.RetentionPolicy的用法示例。


在下文中一共展示了RetentionPolicy.SOURCE属性的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testAttributes

private void testAttributes(
        TestCase.TestMemberInfo member,
        ClassFile classFile,
        Supplier<Attributes> attributes)
        throws ConstantPoolException {
    Map<String, Annotation> actualInvisible = collectAnnotations(
            classFile,
            member,
            attributes.get(),
            Attribute.RuntimeInvisibleAnnotations);
    Map<String, Annotation> actualVisible = collectAnnotations(
            classFile,
            member,
            attributes.get(),
            Attribute.RuntimeVisibleAnnotations);

    checkEquals(actualInvisible.keySet(),
            member.getRuntimeInvisibleAnnotations(), "RuntimeInvisibleAnnotations");
    checkEquals(actualVisible.keySet(),
            member.getRuntimeVisibleAnnotations(), "RuntimeVisibleAnnotations");

    for (TestAnnotationInfo expectedAnnotation : member.annotations.values()) {
        RetentionPolicy policy = getRetentionPolicy(expectedAnnotation.annotationName);
        if (policy == RetentionPolicy.SOURCE) {
            continue;
        }
        printf("Testing: isVisible: %s %s%n", policy.toString(), expectedAnnotation.annotationName);
        Annotation actualAnnotation =
                (policy == RetentionPolicy.RUNTIME ? actualVisible : actualInvisible)
                        .get(expectedAnnotation.annotationName);
        if (checkNotNull(actualAnnotation, "Annotation is found : "
                + expectedAnnotation.annotationName)) {
            expectedAnnotation.testAnnotation(this, classFile, actualAnnotation);
        }
    }
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:36,代码来源:RuntimeAnnotationsTestBase.java

示例2: retention

/**
 * The retention policy for annotations of this type.
 * If non-null, this is called a "top-level" annotation definition.
 * It may be null for annotations that are used only as a field of other
 * annotations.
 */
public /*@Nullable*/ RetentionPolicy retention() {
    if (tlAnnotationsHere.contains(Annotations.aRetentionClass)) {
        return RetentionPolicy.CLASS;
    } else if (tlAnnotationsHere.contains(Annotations.aRetentionRuntime)) {
        return RetentionPolicy.RUNTIME;
    } else if (tlAnnotationsHere.contains(Annotations.aRetentionSource)) {
        return RetentionPolicy.SOURCE;
    } else {
        return null;
    }
}
 
开发者ID:typetools,项目名称:annotation-tools,代码行数:17,代码来源:AnnotationDef.java

示例3: write

@Override
public void write(AnnotatableVisitor writer)
{
	RetentionPolicy retention = this.getRetention();
	if (retention != RetentionPolicy.SOURCE)
	{
		this.write(writer.visitAnnotation(ClassFormat.internalToExtended(this.type.getInternalName()),
		                                  retention == RetentionPolicy.RUNTIME));
	}
}
 
开发者ID:Dyvil,项目名称:Dyvil,代码行数:10,代码来源:Annotation.java

示例4: isSource

@Override
public boolean isSource() {
  IsAnnotation retention = retentionAnno.get();
  if (retention == null) {
    return false;
  }
  IsMethod value = retention.getMethod("value");
  IsAnnotationValue val = retention.getValue(value);
  return RetentionPolicy.SOURCE == val.getRawValue();
}
 
开发者ID:WeTheInternet,项目名称:xapi,代码行数:10,代码来源:BytecodeAdapterService.java

示例5: enum1

@Value.Default
@SerializedName("e1")
public RetentionPolicy enum1() {
  return RetentionPolicy.SOURCE;
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:5,代码来源:SillySubstructure.java

示例6: isRetentionSource

private static boolean isRetentionSource(Class<? extends Annotation> annotationType) {
    return annotationType.getAnnotation(Retention.class) != null
            && (annotationType.getAnnotation(Retention.class).value() == RetentionPolicy.SOURCE);
}
 
开发者ID:TNG,项目名称:ArchUnit,代码行数:4,代码来源:CanBeAnnotated.java

示例7: hasSourceRetention

public static boolean hasSourceRetention(Element element) {
  return effectiveRetentionPolicy(element) == RetentionPolicy.SOURCE;
}
 
开发者ID:google,项目名称:error-prone,代码行数:3,代码来源:ElementPredicates.java

示例8: setAnnotationVisibility

/**
 * Set annotation visibility (to match the annotation retention policy).
 *
 * @param annotationVisibility
 *            The annotation visibility: RetentionPolicy.RUNTIME matches only runtime-visible annotations. The
 *            default value, RetentionPolicy.CLASS, matches all annotations (both runtime-visible and
 *            runtime-invisible). RetentionPolicy.SOURCE will cause an IllegalArgumentException to be thrown,
 *            since SOURCE-annotated annotations are not retained in classfiles.
 * @return this (for method chaining).
 */
public FastClasspathScanner setAnnotationVisibility(final RetentionPolicy annotationVisibility) {
    if (annotationVisibility == RetentionPolicy.SOURCE) {
        throw new IllegalArgumentException("RetentionPolicy.SOURCE annotations are not retained in classfiles");
    }
    getScanSpec().annotationVisibility = annotationVisibility;
    return this;
}
 
开发者ID:lukehutch,项目名称:fast-classpath-scanner,代码行数:17,代码来源:FastClasspathScanner.java


注:本文中的java.lang.annotation.RetentionPolicy.SOURCE属性示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。