31 internal class CoreClasses
34 readonly RuntimeContext context;
36 RuntimeJavaType typeOfCliSystemObject;
37 RuntimeJavaType typeOfCliSystemException;
38 RuntimeJavaType typeOfIkvmInternalCallerID;
39 RuntimeJavaType typeOfJavaIoSerializable;
40 RuntimeJavaType typeOfJavaLangObject;
41 RuntimeJavaType typeOfJavaLangString;
42 RuntimeJavaType typeOfJavaLangClass;
43 RuntimeJavaType typeOfJavaLangCloneable;
44 RuntimeJavaType typeOfjavaLangThrowable;
45 RuntimeJavaType typeOfJavaLangInvokeMethodHandle;
46 RuntimeJavaType typeOfJavaLangInvokeMethodType;
52 public CoreClasses(RuntimeContext context)
54 this.context = context;
57 public RuntimeJavaType TypeOfCliSystemObject => typeOfCliSystemObject ??= context.ManagedJavaTypeFactory.GetJavaTypeFromManagedType(context.Types.Object);
59 public RuntimeJavaType TypeOfCliSystemException => typeOfCliSystemException ??= context.ManagedJavaTypeFactory.GetJavaTypeFromManagedType(context.Types.Exception);
61 public RuntimeJavaType TypeOfIkvmInternalCallerID => typeOfIkvmInternalCallerID ??= context.ClassLoaderFactory.LoadClassCritical(
"ikvm.internal.CallerID");
63 public RuntimeJavaType TypeOfJavaIoSerializable => typeOfJavaIoSerializable ??= context.ClassLoaderFactory.LoadClassCritical(
"java.io.Serializable");
65 public RuntimeJavaType TypeOfJavaLangObject => typeOfJavaLangObject ??= context.ClassLoaderFactory.LoadClassCritical(
"java.lang.Object");
67 public RuntimeJavaType TypeOfJavaLangString => typeOfJavaLangString ??= context.ClassLoaderFactory.LoadClassCritical(
"java.lang.String");
69 public RuntimeJavaType TypeOfJavaLangClass => typeOfJavaLangClass ??= context.ClassLoaderFactory.LoadClassCritical(
"java.lang.Class");
71 public RuntimeJavaType TypeOfJavaLangCloneable => typeOfJavaLangCloneable ??= context.ClassLoaderFactory.LoadClassCritical(
"java.lang.Cloneable");
73 public RuntimeJavaType TypeOfjavaLangThrowable => typeOfjavaLangThrowable ??= context.ClassLoaderFactory.LoadClassCritical(
"java.lang.Throwable");
75 public RuntimeJavaType TypeOfJavaLangInvokeMethodHandle => typeOfJavaLangInvokeMethodHandle ??= context.ClassLoaderFactory.LoadClassCritical(
"java.lang.invoke.MethodHandle");
77 public RuntimeJavaType TypeOfJavaLangInvokeMethodType => typeOfJavaLangInvokeMethodType ??= context.ClassLoaderFactory.LoadClassCritical(
"java.lang.invoke.MethodType");