152 lines
No EOL
4.6 KiB
C++
152 lines
No EOL
4.6 KiB
C++
#pragma once
|
|
#include <cstdint>
|
|
typedef uint16_t Il2CppChar;
|
|
typedef uintptr_t il2cpp_array_size_t;
|
|
typedef int32_t TypeDefinitionIndex;
|
|
typedef int32_t GenericParameterIndex;
|
|
typedef char Il2CppNativeChar;
|
|
|
|
typedef struct Il2CppMemoryCallbacks Il2CppMemoryCallbacks;
|
|
typedef struct Il2CppMethod Il2CppMethod;
|
|
typedef struct Il2CppField Il2CppField;
|
|
typedef struct Il2CppClass Il2CppClass;
|
|
typedef struct Il2CppArrayBounds Il2CppArrayBounds;
|
|
typedef struct Il2CppAssembly Il2CppAssembly;
|
|
typedef struct Il2CppArrayType Il2CppArrayType;
|
|
typedef struct Il2CppGenericClass Il2CppGenericClass;
|
|
typedef struct Il2CppReflectionType Il2CppReflectionType;
|
|
typedef struct MonitorData MonitorData;
|
|
typedef Il2CppClass Il2CppVTable;
|
|
typedef struct EventInfo EventInfo;
|
|
typedef struct FieldInfo FieldInfo;
|
|
typedef struct PropertyInfo PropertyInfo;
|
|
typedef struct Il2CppDomain Il2CppDomain;
|
|
typedef struct Il2CppException Il2CppException;
|
|
typedef struct Il2CppObject Il2CppObject;
|
|
typedef struct Il2CppReflectionMethod Il2CppReflectionMethod;
|
|
typedef struct Il2CppString Il2CppString;
|
|
typedef struct Il2CppThread Il2CppThread;
|
|
typedef struct Il2CppStackFrameInfo Il2CppStackFrameInfo;
|
|
typedef struct Il2CppManagedMemorySnapshot Il2CppManagedMemorySnapshot;
|
|
typedef struct Il2CppDebuggerTransport Il2CppDebuggerTransport;
|
|
typedef struct Il2CppMethodDebugInfo Il2CppMethodDebugInfo;
|
|
typedef struct Il2CppCustomAttrInfo Il2CppCustomAttrInfo;
|
|
typedef const struct ___Il2CppMetadataTypeHandle* Il2CppMetadataTypeHandle;
|
|
typedef const struct ___Il2CppMetadataGenericParameterHandle* Il2CppMetadataGenericParameterHandle;
|
|
|
|
typedef void (*Il2CppMethodPointer)();
|
|
|
|
typedef void (*il2cpp_register_object_callback)(Il2CppObject** arr, int size, void* userdata);
|
|
|
|
typedef void* (*il2cpp_liveness_reallocate_callback)(void* ptr, size_t size, void* userdata);
|
|
|
|
typedef void (*Il2CppFrameWalkFunc)(const Il2CppStackFrameInfo* info, void* user_data);
|
|
|
|
typedef size_t(*Il2CppBacktraceFunc)(Il2CppMethodPointer* buffer, size_t maxSize);
|
|
|
|
typedef const Il2CppNativeChar* (*Il2CppSetFindPlugInCallback)(const Il2CppNativeChar*);
|
|
|
|
typedef void (*Il2CppLogCallback)(const char*);
|
|
|
|
typedef enum {
|
|
IL2CPP_UNHANDLED_POLICY_LEGACY,
|
|
IL2CPP_UNHANDLED_POLICY_CURRENT
|
|
} Il2CppRuntimeUnhandledExceptionPolicy;
|
|
|
|
typedef enum {
|
|
IL2CPP_GC_MODE_DISABLED = 0,
|
|
IL2CPP_GC_MODE_ENABLED = 1,
|
|
IL2CPP_GC_MODE_MANUAL = 2
|
|
} Il2CppGCMode;
|
|
|
|
typedef enum Il2CppStat {
|
|
IL2CPP_STAT_NEW_OBJECT_COUNT,
|
|
IL2CPP_STAT_INITIALIZED_CLASS_COUNT,
|
|
IL2CPP_STAT_METHOD_COUNT,
|
|
IL2CPP_STAT_CLASS_STATIC_DATA_SIZE,
|
|
IL2CPP_STAT_GENERIC_INSTANCE_COUNT,
|
|
IL2CPP_STAT_GENERIC_CLASS_COUNT,
|
|
IL2CPP_STAT_INFLATED_METHOD_COUNT,
|
|
IL2CPP_STAT_INFLATED_TYPE_COUNT,
|
|
} Il2CppStat;
|
|
|
|
typedef enum Il2CppTypeEnum {
|
|
IL2CPP_TYPE_END = 0x00,
|
|
IL2CPP_TYPE_VOID = 0x01,
|
|
IL2CPP_TYPE_BOOLEAN = 0x02,
|
|
IL2CPP_TYPE_CHAR = 0x03,
|
|
IL2CPP_TYPE_I1 = 0x04,
|
|
IL2CPP_TYPE_U1 = 0x05,
|
|
IL2CPP_TYPE_I2 = 0x06,
|
|
IL2CPP_TYPE_U2 = 0x07,
|
|
IL2CPP_TYPE_I4 = 0x08,
|
|
IL2CPP_TYPE_U4 = 0x09,
|
|
IL2CPP_TYPE_I8 = 0x0a,
|
|
IL2CPP_TYPE_U8 = 0x0b,
|
|
IL2CPP_TYPE_R4 = 0x0c,
|
|
IL2CPP_TYPE_R8 = 0x0d,
|
|
IL2CPP_TYPE_STRING = 0x0e,
|
|
IL2CPP_TYPE_PTR = 0x0f,
|
|
|
|
//updated to current version
|
|
IL2CPP_TYPE_BYREF = 0x40,
|
|
|
|
IL2CPP_TYPE_VALUETYPE = 0x11,
|
|
IL2CPP_TYPE_CLASS = 0x12,
|
|
IL2CPP_TYPE_VAR = 0x13,
|
|
IL2CPP_TYPE_ARRAY = 0x14,
|
|
IL2CPP_TYPE_GENERICINST = 0x15,
|
|
IL2CPP_TYPE_TYPEDBYREF = 0x16,
|
|
IL2CPP_TYPE_I = 0x18,
|
|
IL2CPP_TYPE_U = 0x19,
|
|
IL2CPP_TYPE_FNPTR = 0x1b,
|
|
IL2CPP_TYPE_OBJECT = 0x1c,
|
|
IL2CPP_TYPE_SZARRAY = 0x1d,
|
|
IL2CPP_TYPE_MVAR = 0x1e,
|
|
IL2CPP_TYPE_CMOD_REQD = 0x1f,
|
|
IL2CPP_TYPE_CMOD_OPT = 0x20,
|
|
IL2CPP_TYPE_INTERNAL = 0x21,
|
|
IL2CPP_TYPE_MODIFIER = 0x40,
|
|
IL2CPP_TYPE_SENTINEL = 0x41,
|
|
IL2CPP_TYPE_PINNED = 0x45,
|
|
IL2CPP_TYPE_ENUM = 0x55,
|
|
IL2CPP_TYPE_IL2CPP_TYPE_INDEX = 0xff
|
|
} Il2CppTypeEnum;
|
|
|
|
typedef struct Il2CppType {
|
|
char pad[8];
|
|
unsigned int attrs;
|
|
Il2CppTypeEnum type : 8;
|
|
} Il2CppType;
|
|
|
|
typedef struct Il2CppObject {
|
|
union {
|
|
Il2CppClass* klass;
|
|
Il2CppVTable* vtable;
|
|
};
|
|
MonitorData* monitor;
|
|
} Il2CppObject;
|
|
|
|
typedef struct Il2CppArray {
|
|
Il2CppObject obj;
|
|
Il2CppArrayBounds* bounds;
|
|
il2cpp_array_size_t max_length;
|
|
void* vector[32];
|
|
} Il2CppArray;
|
|
|
|
typedef struct Il2CppImage {
|
|
const char* name;
|
|
TypeDefinitionIndex typeStart;
|
|
void* typeHierarchy;
|
|
uint32_t typeCount;
|
|
uint32_t exportedTypeCount;
|
|
} Il2CppImage;
|
|
|
|
typedef struct Il2CppGenericContainer {
|
|
uint32_t type_argc;
|
|
const void** type_argv;
|
|
} Il2CppGenericContainer;
|
|
|
|
typedef struct Il2CppGenericClass {
|
|
Il2CppGenericContainer* genericContainer;
|
|
} Il2CppGenericClass; |