typedef struct {
MonoType *type;
gpointer value;
+ MonoClass *klass;
} MonoTypedRef;
typedef struct {
MonoString *class_name;
MonoString *stack_trace;
MonoString *remote_stack_trace;
- gint32 *remote_stack_index;
+ gint32 remote_stack_index;
gint32 hresult;
MonoString *source;
} MonoException;
MonoString *param_name;
} MonoArgumentException;
+typedef struct {
+ MonoSystemException base;
+ MonoString *msg;
+ MonoString *type_name;
+} MonoTypeLoadException;
+
typedef struct {
MonoObject object;
MonoObject *async_state;
MonoClass *klass;
} MonoTransparentProxy;
+/* This is a copy of System.Runtime.Remoting.Messaging.CallType */
+typedef enum {
+ CallType_Sync = 0,
+ CallType_BeginInvoke = 1,
+ CallType_EndInvoke = 2,
+ CallType_OneWay = 3
+} MonoCallType;
+
typedef struct {
MonoObject obj;
MonoReflectionMethod *method;
MonoObject *ctx;
MonoObject *rval;
MonoObject *exc;
+ MonoAsyncResult *async_result;
+ guint32 call_type;
} MonoMethodMessage;
typedef struct {
HANDLE start_notify;
gpointer stack_ptr;
gpointer *static_data;
+ gpointer jit_data;
+ gpointer lock_data;
+ GSList *appdomain_refs;
} MonoThread;
typedef struct {
MonoObject *
mono_object_new_specific (MonoVTable *vtable);
+/* can be used for classes without finalizer in non-profiling mode */
+MonoObject *
+mono_object_new_fast (MonoVTable *vtable);
+
MonoObject *
mono_object_new_alloc_specific (MonoVTable *vtable);