blob: 81ccbc661e00aa0c466340712b05293612538451 [file] [log] [blame]
// Copyright (c) 2023, the R8 project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
// ***********************************************************************************
// GENERATED FILE. DO NOT EDIT! See KeepItemAnnotationGenerator.java.
// ***********************************************************************************
package com.android.tools.r8.keepanno.ast;
/**
* Utility class for referencing the various keep annotations and their structure.
*
* <p>Use of these references avoids polluting the Java namespace with imports of the java
* annotations which overlap in name with the actual semantic AST types.
*/
public final class AnnotationConstants {
public static final class ExtractedAnnotations {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/ExtractedKeepAnnotations;";
public static final String value = "value";
}
public static final class ExtractedAnnotation {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/ExtractedKeepAnnotation;";
public static final String version = "version";
public static final String context = "context";
public static final String keepAnnotationGroup = "keep-annotation";
public static final String edge = "edge";
public static final String checkRemoved = "checkRemoved";
public static final String checkOptimizedOut = "checkOptimizedOut";
}
public static final class Edge {
public static final String DESCRIPTOR = "Lcom/android/tools/r8/keepanno/annotations/KeepEdge;";
public static final String description = "description";
public static final String bindings = "bindings";
public static final String preconditions = "preconditions";
public static final String consequences = "consequences";
}
public static final class ForApi {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/KeepForApi;";
public static final String description = "description";
public static final String additionalTargets = "additionalTargets";
public static final String memberAccess = "memberAccess";
}
public static final class UsesReflection {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/UsesReflection;";
public static final String description = "description";
public static final String value = "value";
public static final String additionalPreconditions = "additionalPreconditions";
}
public static final class UsedByReflection {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/UsedByReflection;";
public static final String description = "description";
public static final String preconditions = "preconditions";
public static final String additionalTargets = "additionalTargets";
}
public static final class UsedByNative {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/UsedByNative;";
// Content is the same as UsedByReflection.
}
public static final class CheckRemoved {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/CheckRemoved;";
}
public static final class CheckOptimizedOut {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/CheckOptimizedOut;";
}
/** Item properties common to binding items, conditions and targets. */
public static final class Item {
public static final String classGroup = "class";
public static final String classFromBinding = "classFromBinding";
public static final String memberGroup = "member";
public static final String memberFromBinding = "memberFromBinding";
public static final String classNameGroup = "class-name";
public static final String className = "className";
public static final String classConstant = "classConstant";
public static final String classNamePattern = "classNamePattern";
public static final String instanceOfGroup = "instance-of";
public static final String instanceOfClassName = "instanceOfClassName";
public static final String instanceOfClassNameExclusive = "instanceOfClassNameExclusive";
public static final String instanceOfClassConstant = "instanceOfClassConstant";
public static final String instanceOfClassConstantExclusive =
"instanceOfClassConstantExclusive";
public static final String instanceOfPattern = "instanceOfPattern";
public static final String classAnnotatedByGroup = "class-annotated-by";
public static final String classAnnotatedByClassName = "classAnnotatedByClassName";
public static final String classAnnotatedByClassConstant = "classAnnotatedByClassConstant";
public static final String classAnnotatedByClassNamePattern =
"classAnnotatedByClassNamePattern";
public static final String memberAnnotatedByGroup = "member-annotated-by";
public static final String memberAnnotatedByClassName = "memberAnnotatedByClassName";
public static final String memberAnnotatedByClassConstant = "memberAnnotatedByClassConstant";
public static final String memberAnnotatedByClassNamePattern =
"memberAnnotatedByClassNamePattern";
public static final String memberAccess = "memberAccess";
public static final String methodAnnotatedByGroup = "method-annotated-by";
public static final String methodAnnotatedByClassName = "methodAnnotatedByClassName";
public static final String methodAnnotatedByClassConstant = "methodAnnotatedByClassConstant";
public static final String methodAnnotatedByClassNamePattern =
"methodAnnotatedByClassNamePattern";
public static final String methodAccess = "methodAccess";
public static final String methodNameGroup = "method-name";
public static final String methodName = "methodName";
public static final String methodNamePattern = "methodNamePattern";
public static final String returnTypeGroup = "return-type";
public static final String methodReturnType = "methodReturnType";
public static final String methodReturnTypeConstant = "methodReturnTypeConstant";
public static final String methodReturnTypePattern = "methodReturnTypePattern";
public static final String parametersGroup = "parameters";
public static final String methodParameters = "methodParameters";
public static final String methodParameterTypePatterns = "methodParameterTypePatterns";
public static final String fieldAnnotatedByGroup = "field-annotated-by";
public static final String fieldAnnotatedByClassName = "fieldAnnotatedByClassName";
public static final String fieldAnnotatedByClassConstant = "fieldAnnotatedByClassConstant";
public static final String fieldAnnotatedByClassNamePattern =
"fieldAnnotatedByClassNamePattern";
public static final String fieldAccess = "fieldAccess";
public static final String fieldNameGroup = "field-name";
public static final String fieldName = "fieldName";
public static final String fieldNamePattern = "fieldNamePattern";
public static final String fieldTypeGroup = "field-type";
public static final String fieldType = "fieldType";
public static final String fieldTypeConstant = "fieldTypeConstant";
public static final String fieldTypePattern = "fieldTypePattern";
}
public static final class Binding {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/KeepBinding;";
public static final String bindingName = "bindingName";
}
public static final class Condition {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/KeepCondition;";
}
public static final class Target {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/KeepTarget;";
public static final String kind = "kind";
public static final String constraintsGroup = "constraints";
public static final String constraints = "constraints";
public static final String constraintAdditions = "constraintAdditions";
public static final String constrainAnnotations = "constrainAnnotations";
}
public static final class Kind {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/KeepItemKind;";
public static final String ONLY_CLASS = "ONLY_CLASS";
public static final String ONLY_MEMBERS = "ONLY_MEMBERS";
public static final String ONLY_METHODS = "ONLY_METHODS";
public static final String ONLY_FIELDS = "ONLY_FIELDS";
public static final String CLASS_AND_MEMBERS = "CLASS_AND_MEMBERS";
public static final String CLASS_AND_METHODS = "CLASS_AND_METHODS";
public static final String CLASS_AND_FIELDS = "CLASS_AND_FIELDS";
}
public static final class Constraints {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/KeepConstraint;";
public static final String LOOKUP = "LOOKUP";
public static final String NAME = "NAME";
public static final String VISIBILITY_RELAX = "VISIBILITY_RELAX";
public static final String VISIBILITY_RESTRICT = "VISIBILITY_RESTRICT";
public static final String VISIBILITY_INVARIANT = "VISIBILITY_INVARIANT";
public static final String CLASS_INSTANTIATE = "CLASS_INSTANTIATE";
public static final String METHOD_INVOKE = "METHOD_INVOKE";
public static final String FIELD_GET = "FIELD_GET";
public static final String FIELD_SET = "FIELD_SET";
public static final String METHOD_REPLACE = "METHOD_REPLACE";
public static final String FIELD_REPLACE = "FIELD_REPLACE";
public static final String NEVER_INLINE = "NEVER_INLINE";
public static final String CLASS_OPEN_HIERARCHY = "CLASS_OPEN_HIERARCHY";
}
public static final class MemberAccess {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/MemberAccessFlags;";
public static final String NEGATION_PREFIX = "NON_";
public static final String PUBLIC = "PUBLIC";
public static final String PROTECTED = "PROTECTED";
public static final String PACKAGE_PRIVATE = "PACKAGE_PRIVATE";
public static final String PRIVATE = "PRIVATE";
public static final String STATIC = "STATIC";
public static final String FINAL = "FINAL";
public static final String SYNTHETIC = "SYNTHETIC";
}
public static final class MethodAccess {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/MethodAccessFlags;";
public static final String SYNCHRONIZED = "SYNCHRONIZED";
public static final String BRIDGE = "BRIDGE";
public static final String NATIVE = "NATIVE";
public static final String ABSTRACT = "ABSTRACT";
public static final String STRICT_FP = "STRICT_FP";
}
public static final class FieldAccess {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/FieldAccessFlags;";
public static final String VOLATILE = "VOLATILE";
public static final String TRANSIENT = "TRANSIENT";
}
public static final class StringPattern {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/StringPattern;";
public static final String stringExactPatternGroup = "string-exact-pattern";
public static final String exact = "exact";
public static final String startsWith = "startsWith";
public static final String endsWith = "endsWith";
}
public static final class TypePattern {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/TypePattern;";
public static final String typePatternGroup = "type-pattern";
public static final String name = "name";
public static final String constant = "constant";
public static final String classNamePattern = "classNamePattern";
}
public static final class ClassNamePattern {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/ClassNamePattern;";
public static final String classNameGroup = "class-name";
public static final String name = "name";
public static final String constant = "constant";
public static final String simpleName = "simpleName";
public static final String packageName = "packageName";
}
public static final class InstanceOfPattern {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/InstanceOfPattern;";
public static final String inclusive = "inclusive";
public static final String classNamePattern = "classNamePattern";
}
public static final class AnnotationPattern {
public static final String DESCRIPTOR =
"Lcom/android/tools/r8/keepanno/annotations/AnnotationPattern;";
public static final String annotationNameGroup = "annotation-name";
public static final String name = "name";
public static final String constant = "constant";
public static final String namePattern = "namePattern";
public static final String retention = "retention";
}
}