IKVM11  11
Java SE 11 Virtual Machine for .NET
Loading...
Searching...
No Matches
JVM.Internal.cs
Go to the documentation of this file.
1using System;
2
7
8#if IMPORTER || EXPORTER
10using Type = IKVM.Reflection.Type;
11#else
12#endif
13
14#if IMPORTER
16#endif
17
18namespace IKVM.Runtime
19{
20
21 static partial class JVM
22 {
23
30 internal static class Internal
31 {
32
33 internal const string JarClassList = "--ikvm-classes--/";
34
35#if FIRST_PASS == false && IMPORTER == false && EXPORTER == false
36
37 internal static readonly RuntimeContextOptions contextOptions = new RuntimeContextOptions();
38 internal static readonly RuntimeContext context = new RuntimeContext(contextOptions, DiagnosticEventSource.Instance, new Resolver(), false);
39 internal static readonly VfsTable vfs = VfsTable.BuildDefaultTable(new VfsRuntimeContext(context), Properties.HomePath);
40 internal static readonly Lazy<object> systemThreadGroup = new Lazy<object>(() => ThreadGroupAccessor.Init());
41 internal static readonly Lazy<object> mainThreadGroup = new Lazy<object>(() => ThreadGroupAccessor.Init(null, SystemThreadGroup, "main"));
42
43 static AccessorCache baseAccessors;
44 static ThreadGroupAccessor threadGroupAccessor;
45 static SystemAccessor systemAccessor;
46
47 internal static AccessorCache BaseAccessors => AccessorCache.Get(ref baseAccessors, context.Resolver.ResolveBaseAssembly().AsReflection());
48
49 internal static ThreadGroupAccessor ThreadGroupAccessor => BaseAccessors.Get(ref threadGroupAccessor);
50
51 internal static SystemAccessor SystemAccessor => BaseAccessors.Get(ref systemAccessor);
52
53#endif
54
55 }
56
57 }
58
59}
IKVM.Reflection.Type Type
Provides a EventSource to receive emitted IKVM diagnostic messages.
static readonly DiagnosticEventSource Instance
Gets the default instance of this event source.
Provides runtime access to type accessors.
static AccessorCache Get(ref AccessorCache cache, Assembly assembly)
Gets the set of accessors for a given assembly.
Main state of the running JVM.
Maintains services relevant to an instane of the IKVM runtime.