< prev index next > src/jdk.compiler/share/classes/com/sun/tools/javac/code/Symtab.java
Print this page
public final Type restrictedInternalType;
public final Type typeDescriptorType;
public final Type recordType;
public final Type switchBootstrapsType;
public final Type constantBootstrapsType;
- public final Type valueBasedType;
- public final Type valueBasedInternalType;
public final Type classDescType;
public final Type enumDescType;
public final Type ioType;
// For serialization lint checking
// For externalization lint checking
public final Type externalizableType;
public final Type objectInputType;
public final Type objectOutputType;
+ // valhalla
+ public final Type valueBasedType;
+ public final Type valueBasedInternalType;
+ public final Type migratedValueClassType;
+ public final Type migratedValueClassInternalType;
+ public final Type strictType;
+ /** The symbol representing the finalize method on Object */
+ public final MethodSymbol objectFinalize;
+ public final Type numberType;
+
/** The symbol representing the length field of an array.
*/
public final VarSymbol lengthVar;
/** The symbol representing the final finalize method on enums */
// Get the initial completer for ModuleSymbols from Modules
moduleCompleter = Modules.instance(context).getCompleter();
// Enter predefined classes. All are assumed to be in the java.base module.
objectType = enterClass("java.lang.Object");
objectMethodsType = enterClass("java.lang.runtime.ObjectMethods");
exactConversionsSupportType = enterClass("java.lang.runtime.ExactConversionsSupport");
objectsType = enterClass("java.util.Objects");
classType = enterClass("java.lang.Class");
stringType = enterClass("java.lang.String");
stringBufferType = enterClass("java.lang.StringBuffer");
stringBuilderType = enterClass("java.lang.StringBuilder");
cloneableType = enterClass("java.lang.Cloneable");
- throwableType = enterClass("java.lang.Throwable");
serializableType = enterClass("java.io.Serializable");
serializedLambdaType = enterClass("java.lang.invoke.SerializedLambda");
varHandleType = enterClass("java.lang.invoke.VarHandle");
methodHandleType = enterClass("java.lang.invoke.MethodHandle");
methodHandlesType = enterClass("java.lang.invoke.MethodHandles");
// Get the initial completer for ModuleSymbols from Modules
moduleCompleter = Modules.instance(context).getCompleter();
// Enter predefined classes. All are assumed to be in the java.base module.
objectType = enterClass("java.lang.Object");
+ throwableType = enterClass("java.lang.Throwable");
+ objectFinalize = new MethodSymbol(PROTECTED,
+ names.finalize,
+ new MethodType(List.nil(), voidType,
+ List.of(throwableType), methodClass),
+ objectType.tsym);
objectMethodsType = enterClass("java.lang.runtime.ObjectMethods");
exactConversionsSupportType = enterClass("java.lang.runtime.ExactConversionsSupport");
objectsType = enterClass("java.util.Objects");
classType = enterClass("java.lang.Class");
stringType = enterClass("java.lang.String");
stringBufferType = enterClass("java.lang.StringBuffer");
stringBuilderType = enterClass("java.lang.StringBuilder");
cloneableType = enterClass("java.lang.Cloneable");
serializableType = enterClass("java.io.Serializable");
serializedLambdaType = enterClass("java.lang.invoke.SerializedLambda");
varHandleType = enterClass("java.lang.invoke.VarHandle");
methodHandleType = enterClass("java.lang.invoke.MethodHandle");
methodHandlesType = enterClass("java.lang.invoke.MethodHandles");
recordType = enterClass("java.lang.Record");
switchBootstrapsType = enterClass("java.lang.runtime.SwitchBootstraps");
constantBootstrapsType = enterClass("java.lang.invoke.ConstantBootstraps");
valueBasedType = enterClass("jdk.internal.ValueBased");
valueBasedInternalType = enterSyntheticAnnotation("jdk.internal.ValueBased+Annotation");
+ strictType = enterSyntheticAnnotation("jdk.internal.vm.annotation.Strict");
+ migratedValueClassType = enterClass("jdk.internal.MigratedValueClass");
+ migratedValueClassInternalType = enterSyntheticAnnotation("jdk.internal.MigratedValueClass+Annotation");
classDescType = enterClass("java.lang.constant.ClassDesc");
enumDescType = enterClass("java.lang.Enum$EnumDesc");
ioType = enterClass("java.io.IO");
// For serialization lint checking
objectStreamFieldType = enterClass("java.io.ObjectStreamField");
synthesizeEmptyInterfaceIfMissing(stringConcatFactory);
synthesizeBoxTypeIfMissing(doubleType);
synthesizeBoxTypeIfMissing(floatType);
synthesizeBoxTypeIfMissing(voidType);
+ numberType = enterClass("java.lang.Number");
+
// Enter a synthetic class that is used to mark internal
// proprietary classes in ct.sym. This class does not have a
// class file.
proprietaryType = enterSyntheticAnnotation("sun.Proprietary+Annotation");
< prev index next >