Commit Graph

26 Commits

Author SHA1 Message Date
LukeFZ
6ddbf7ecae add initial support for required forward references in il2cpp types, also fix issues with type names clashing with il2cpp api types 2025-07-25 21:20:04 +02:00
LukeFZ
ffb1996252 smaller tweaks, hack around loops in cpp type layouting 2025-02-08 17:40:15 +01:00
LukeFZ
ef56ebbd2f Fix header generation when a struct contains an enum pointer 2023-12-07 20:53:03 +01:00
LukeFZ
5b1d9c67d1 Add name mangling to Methods/MethodInfo/TypeInfo/TypeRef, remove Boxing from ValueTypes when used as the this parameter, fix crashes when a module has no attributes 2023-12-06 20:09:35 +01:00
LukeFZ
e9434f4cad Add better il2cpp_array_size_t definition for script outputs in versions post 2017.2.1, fix some other cpp gen issues 2023-12-02 11:22:32 +01:00
LukeFZ
7e7d345c30 Add support for ThreadStatic fields 2023-12-01 07:08:48 +01:00
LukeFZ
ab841ccb2b Optimize some of the string operations 2023-11-30 05:13:19 +01:00
Katy Coe
956cea0553 C++: Output C++ enums as enum classes 2021-01-04 05:14:11 +01:00
Katy Coe
d67ef3e5ed C++: Fix "_extension" is a reserved word in Ghidra (#102) 2020-11-26 10:20:42 +01:00
Katy Coe
eba76fcf15 C++: Add many new reserved IDA keywords (#57, #62) 2020-09-02 09:18:19 +02:00
Katy Coe
2024a3bfac AppModel: Add WordSizeBytes; tidy up a bit 2020-08-17 02:49:01 +02:00
Katy Coe
ca55125858 Rename AppModel.ILModel to AppModel.TypeModel 2020-08-14 02:18:53 +02:00
Katy Coe
6770bc2865 C++: Fix System.Array is not itself an array (it's a class) (fix Array__Class * error in Ghidra) 2020-08-05 08:45:45 +02:00
Katy Coe
4ae6772f5a C++: Remove windows.h macros/types from reserved words list 2020-08-01 05:24:07 +02:00
Katy Coe
cf6b64e0d2 C++: Add PlatformInformation and LoadResource as reserved symbols 2020-07-25 16:55:16 +02:00
Katy Coe
cd75d5e877 C++: Add 'Sleep' as a reserved keyword 2020-07-24 17:40:30 +02:00
Katy Coe
deeb8daa97 Unity/C++: Significant re-factoring of Unity header management (see description)
Extract resource handling to UnityResource
Add API header resource helpers
Fix UnityVersion ToString() when Min == Max
Replace fixed list of Il2Cpp header reserved names with parsed names from actual selected headers (solves TypeInfo/MemberInfo problems in 5.3.0-5.3.4 (metadata v16-20))
Use CppDeclarationGenerator when initializing CppTypeCollection to ensure all Il2Cpp header symbols are reserved
Process API headers in CppTypeCollection.FromUnityHeaders
Move #define IS_32BIT handling to UnityHeaders
Update tests
2020-07-22 19:01:33 +02:00
Katy Coe
e37de64839 AppModel/C++: Fix regression in handling of C# primitive pointer types 2020-07-20 18:15:41 +02:00
Katy Coe
071b1efa67 C++: Generate Il2CppClass definitions for enum and array types 2020-07-19 15:43:50 +02:00
Katy Coe
6e796a200f AppModel: Generate composite type mappings 2020-07-13 19:52:04 +02:00
Katy Coe
20d0ffcdfe AppModel: Move C++ type ordering to model 2020-07-13 17:55:32 +02:00
Katy Coe
873a6c98f6 AppModel: First iteration of ApplicationModel API
Integrate with C++ scaffolding
Add new tests
Rename Il2CppModel to TypeModel
Incomplete IDAPython integration
CLI and GUI support
Update README.md
2020-07-09 03:48:50 +02:00
Katy Coe
2412da4f8b C++: Add boilerplate for CppApplicationModel 2020-07-04 23:41:30 +02:00
Katy Coe
0731b380fd C++: Separate compiler option from CppDeclarationGenerator 2020-07-02 15:17:12 +02:00
Katy Coe
249873ab02 C++: Add some MSVC symbols to reserved names 2020-07-02 14:21:21 +02:00
Katy Coe
23db04c369 Minor re-organization 2020-06-30 00:13:18 +02:00