IKVM11  11
Java SE 11 Virtual Machine for .NET
Loading...
Searching...
No Matches
ThreadGroupAccessor.cs
Go to the documentation of this file.
1using System;
2
4{
5
6#if FIRST_PASS == false && EXPORTER == false && IMPORTER == false
7
11 internal sealed class ThreadGroupAccessor : Accessor<object>
12 {
13
14 Type javaLangVoid;
15 Type javaLangThreadGroup;
16 Type javaLangThread;
17
18 MethodAccessor<Func<object, object, string, object>> init1;
19 MethodAccessor<Func<object, string, object>> init2;
20 MethodAccessor<Func<object>> init3;
21 MethodAccessor<Action<object, object, object>> uncaughtException;
22
27 public ThreadGroupAccessor(AccessorTypeResolver resolver) :
28 base(resolver, "java.lang.ThreadGroup")
29 {
30
31 }
32
33 Type JavaLangVoid => Resolve(ref javaLangVoid, "java.lang.Void");
34
35 Type JavaLangThread => Resolve(ref javaLangThread, "java.lang.Thread");
36
37 Type JavaLangThreadGroup => Resolve(ref javaLangThreadGroup, "java.lang.ThreadGroup");
38
43 public object Init(object unused, object parent, string name) => GetConstructor(ref init1, JavaLangVoid, JavaLangThreadGroup, typeof(string)).Invoker(unused, parent, name);
44
49 public object Init(object parent, string name) => GetConstructor(ref init2, JavaLangThreadGroup, typeof(string)).Invoker(parent, name);
50
55 public object Init() => GetConstructor(ref init3).Invoker();
56
60 public void InvokeUncaughtException(object self, object t, object e) => GetMethod(ref uncaughtException, nameof(uncaughtException), typeof(void), JavaLangThread, typeof(Exception)).Invoker(self, t, e);
61
62 }
63
64#endif
65
66}
IKVM.Reflection.Type Type