mono-structs.h
1.98 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#pragma once
#include "utils/dynamic_array.h"
#include "il2cpp-object-internals.h"
struct MonoGPtrArray
{
void *pdata;
unsigned int len;
};
typedef il2cpp::utils::dynamic_array<void*> VoidPtrArray;
MonoGPtrArray* void_ptr_array_to_gptr_array(const VoidPtrArray& array);
MonoGPtrArray* empty_gptr_array();
void free_gptr_array(MonoGPtrArray *pArray);
struct MonoGenericParameterInfo
{
Il2CppClass *pklass; /* The corresponding `MonoClass'. */
const char *name;
// See GenericParameterAttributes
unsigned short flags;
unsigned int token;
// Constraints on type parameters
Il2CppClass** constraints; /* NULL means end of list */
};
struct PublicKeyTokenFixedBuffer
{
union
{
struct
{
// System.Byte Mono.MonoAssemblyName/<public_key_token>__FixedBuffer0::FixedElementField
uint8_t FixedElementField;
};
uint8_t padding[17];
};
};
struct Il2CppMonoAssemblyName
{
// System.IntPtr Mono.MonoAssemblyName::name
const char * name;
// System.IntPtr Mono.MonoAssemblyName::culture
const char * culture;
// System.IntPtr Mono.MonoAssemblyName::hash_value
const char * hash_value;
// System.IntPtr Mono.MonoAssemblyName::public_key
const uint8_t* public_key;
// Mono.MonoAssemblyName/<public_key_token>__FixedBuffer0 Mono.MonoAssemblyName::public_key_token
PublicKeyTokenFixedBuffer public_key_token;
// System.UInt32 Mono.MonoAssemblyName::hash_alg
uint32_t hash_alg;
// System.UInt32 Mono.MonoAssemblyName::hash_len
uint32_t hash_len;
// System.UInt32 Mono.MonoAssemblyName::flags
uint32_t flags;
// System.UInt16 Mono.MonoAssemblyName::major
uint16_t major;
// System.UInt16 Mono.MonoAssemblyName::minor
uint16_t minor;
// System.UInt16 Mono.MonoAssemblyName::build
uint16_t build;
// System.UInt16 Mono.MonoAssemblyName::revision
uint16_t revision;
// System.UInt16 Mono.MonoAssemblyName::arch
uint16_t arch;
};