IKVM11  11
Java SE 11 Virtual Machine for .NET
Loading...
Searching...
No Matches
IKVM.Runtime.JNI.JavaVM Struct Reference

Public Member Functions

delegate int pf_int (JavaVM *pJVM)
 
delegate int pf_int_ppvoid_pvoid (JavaVM *pJVM, void **p1, void *p2)
 
delegate int pf_int_ppvoid_int (JavaVM *pJVM, void **p1, int p2)
 

Static Public Member Functions

static JavaVM ()
 

Public Attributes

void ** vtable
 
void * firstVtableEntry
 

Static Public Attributes

static readonly MUTF8Encoding MUTF8 = MUTF8Encoding.GetMUTF8(52)
 
static Delegate[] vtableDelegates
 

Detailed Description

Definition at line 38 of file JavaVM.cs.

Constructor & Destructor Documentation

◆ JavaVM()

static IKVM.Runtime.JNI.JavaVM.JavaVM ( )
static

Definition at line 62 of file JavaVM.cs.

63 {
64 JNIVM.jvmCreated = true;
65 pJavaVM = (JavaVM*)(void*)JNIMemory.Alloc(IntPtr.Size * (1 + vtableDelegates.Length));
66 pJavaVM->vtable = &pJavaVM->firstVtableEntry;
67 for (int i = 0; i < vtableDelegates.Length; i++)
68 {
69 if (null != vtableDelegates[i])
70 {
71 pJavaVM->vtable[i] = (void*)Marshal.GetFunctionPointerForDelegate(vtableDelegates[i]);
72 }
73 }
74 }
static Delegate[] vtableDelegates
Definition JavaVM.cs:50

Member Function Documentation

◆ pf_int()

delegate int IKVM.Runtime.JNI.JavaVM.pf_int ( JavaVM * pJVM)

◆ pf_int_ppvoid_int()

delegate int IKVM.Runtime.JNI.JavaVM.pf_int_ppvoid_int ( JavaVM * pJVM,
void ** p1,
int p2 )

◆ pf_int_ppvoid_pvoid()

delegate int IKVM.Runtime.JNI.JavaVM.pf_int_ppvoid_pvoid ( JavaVM * pJVM,
void ** p1,
void * p2 )

Member Data Documentation

◆ firstVtableEntry

void* IKVM.Runtime.JNI.JavaVM.firstVtableEntry

Definition at line 45 of file JavaVM.cs.

◆ MUTF8

readonly MUTF8Encoding IKVM.Runtime.JNI.JavaVM.MUTF8 = MUTF8Encoding.GetMUTF8(52)
static

Definition at line 41 of file JavaVM.cs.

◆ vtable

void** IKVM.Runtime.JNI.JavaVM.vtable

Definition at line 44 of file JavaVM.cs.

◆ vtableDelegates

Delegate [] IKVM.Runtime.JNI.JavaVM.vtableDelegates
static
Initial value:
=
{
null,
null,
null,
new pf_int(DestroyJavaVM),
new pf_int_ppvoid_pvoid(AttachCurrentThread),
new pf_int(DetachCurrentThread),
new pf_int_ppvoid_int(GetEnv),
new pf_int_ppvoid_pvoid(AttachCurrentThreadAsDaemon)
}
delegate int pf_int_ppvoid_pvoid(JavaVM *pJVM, void **p1, void *p2)
delegate int pf_int_ppvoid_int(JavaVM *pJVM, void **p1, int p2)
delegate int pf_int(JavaVM *pJVM)

Definition at line 50 of file JavaVM.cs.

51 {
52 null,
53 null,
54 null,
55 new pf_int(DestroyJavaVM),
56 new pf_int_ppvoid_pvoid(AttachCurrentThread),
57 new pf_int(DetachCurrentThread),
58 new pf_int_ppvoid_int(GetEnv),
59 new pf_int_ppvoid_pvoid(AttachCurrentThreadAsDaemon)
60 };

The documentation for this struct was generated from the following file: